【发布时间】:2016-03-20 20:24:03
【问题描述】:
我知道“删除 n 行”和“删除 x 列”问题之前都已单独回答过。我目前的问题是我正在编写我的第一个 bash 脚本,并且无法使该脚本按我想要的方式工作。
file0001.csv(一个文件夹里有几百个这样的文件)
Data number of lines 540
No.,Profile,Unit
1,1027.84,µm
2,1027.92,µm
3,1028,µm
4,1028.81,µm
期望的输出
1,1027.84
2,1027.92
3,1028
4,1028.81
我可以单独使用 sed 和 cut,但由于某种原因,以下 bash 脚本没有考虑 cut。它还给我一个错误“sed:无法读取ls:没有这样的文件或目录”,但sed成功并且输出保存到原始文件中。
sem2csv.sh
for files in 'ls *.csv' #list of all .csv files
do
sed '1,2d' -i $files | cut -f '1-2' -d ','
done
实际输出:
1,1027.84,µm
2,1027.92,µm
3,1028,µm
4,1028.81,µm
我知道可能有 awk 单行,但我真的很想了解为什么这个特定的 bash 脚本没有按预期运行。我错过了什么?
【问题讨论】: