当我执行下面的sed命令时,它返回表达式错误,如下所示。
user% sed -e '$-3,$d' sample.csv
sed: -e expression #1, char 2: unknown command: `-'
我想要做的是从指定文件中删除最后4行。 我发现一些网站介绍了上述方法,但它不适用于我的Mac OSX 10.9和CentOS环境。 我该如何解决这个问题?
答案 0 :(得分:2)
如果要删除文件中的最后四行,请尝试以下命令
tac file.csv | sed '1,4d' | tac > newfile.csv
答案 1 :(得分:1)
这可能适合你(GNU sed):
sed '1{N;N};N;$d;P;D' file
或更具适应性:
sed ':a;$d;N;s/\n/&/4;Ta;P;D' file