好吧,所以我知道使用$:
打印一行的特定参数非常简单$ cat file
hello world
$ awk '{print $1}' file
hello
但是,如果我想要打印2到8的字符怎么办?还是3到7?用awk可以吗?
答案 0 :(得分:51)
awk '{print substr($0,2,6)}' file
substr()的语法是
substr(string,start index,length)
答案 1 :(得分:3)
是。您可以使用substr
功能:
http://www.starlink.rl.ac.uk/docs/sc4.htx/node38.html
在您的情况下 - 对于2到8的打印字符:
echo "hello" | awk '{ print substr( $0, 2, 6 ) }'
结果是:
ELLO
答案 2 :(得分:3)
如果Perl是一个选项:
perl -lne 'print substr($_,1,6)' file
输出与@nims
的答案相同