2011-11-30 86 views

回答

2
ls -l|sed -n 'x;$p' 

它不能做倒数第三,但因为sed的只有1个保持空间,所以只能记住一个较旧的线。并且,由于它一次处理一行,所以在处理该行时,它不知道该行将在最后一行。 awk可能会返回到最后,因为可以有任意数量的变量,但脚本将比tail -n X|head -n 1长很多。

1

在AWK一行代码:

echo -e "aaa\nbbb\nccc\nddd" | awk '{v[c++]=$0}END{print v[c-2]}' 
ccc 
0

尝试使用此方法删除第二行最后文件

sed -e '$!{h;d;}' -e x filename 
+0

为什么你是否删除每行的模式空间,而不是用'-n'来抑制打印? –

0
tac filename | sed -n 2p 

- 但涉及的管道,也

相关问题