Moh*_*mad 10 shell terminal command-line osx-lion
我想输出文件的所有行,但跳过最后4,在终端上.
根据UNIX手册页,以下内容可能是一种解决方案.
head -n -4 main.m
MAN页面:
-n, - lines = [ - ] N打印前N行而不是前10行; 使用前导' - ',打印除了每个文件的最后N行之外的所有行
我在这里阅读了手册页.http://unixhelp.ed.ac.uk/CGI/man-cgi?head
但在MAC OSx上我得到以下错误.
头:非法行数 - -4
还有什么办法可以实现这一目标?
使用awk例如:
$ cat file
line 1
line 2
line 3
line 4
line 5
line 6
$ awk 'n>=4 { print a[n%4] } { a[n%4]=$0; n=n+1 }' file
line 1
line 2
$
Run Code Online (Sandbox Code Playgroud)
它可以简化为,awk 'n>=4 { print a[n%4] } { a[n++%4]=$0 }'但我不确定是否所有 awk 实现都支持它。