在目录中,运行后ls -d -- 0.*_*.txt | sort -t. -k1
,我获得了输出文件名,例如
0.230_0.203059.txt
我怎样才能将它们进一步写成两列,例如
0.230 0.203059
写入txt文件?
答案1
人们对解析 ls 的输出有一些厌恶(参见https://mywiki.wooledge.org/ParsingLs除其他外),但除此之外:
ls -d -- 0.*_*.txt
我不知道你为什么把它放在--
那里;这-d
只是阻止你进入目录。在您的设置中,您可能两者都不需要。
将ls
生成诸如0.230_0.203059.txt
、 等文件名,因此使用 txt。你也需要把它去掉。
ls 0.*_*.txt | sort -t. -k1 | sed 's/.txt//;s/_/ /' > outfile.txt
应该这样做。