我正在使用sed命令删除前两行,但是当我将内容重定向到文件时会出现行数。我不知道如何删除它。
我执行:
sed '7,9d' mi_fichero.txt
结果是:
(我写下最后一行)
/XTENT/D3/REPOSITORY/20120305/2201/65601/84/1330951636844_D3_448987414829688495_.indd.gz
/XTENT/D3/REPOSITORY/20120308/2201/65601/22/1331198783835_D3_3411473776849856760_.indd.gz
/XTENT/D3/REPOSITORY/20120308/2201/65601/158/1331220874606_D3_2742969984589497048_.indd.gz
/XTENT/D3/REPOSITORY/20120313/2201/65601/0/1331626743284_D3_7551629114585379089_.indd.gz
/XTENT/D3/REPOSITORY/20120309/2201/65601/92/1331295878839_D3_4724445611762228808_.indd.gz
(60 rows)
我想删除该行(60行),任何人都可以帮助我吗?
谢谢:)
答案 0 :(得分:4)
这可能适合你(GNU sed):
sed -i '7,9d;$d' file
答案 1 :(得分:0)
已经有一个正确的答案,这不是sed,而是使用awk
执行此操作的另一种方法awk -v nl=$(wc -l < mi_fichero.txt) 'NR!=7 && NR!=9 && NR!=nl {print $0}' mi_fichero.txt