[英]Using awk in BASH alias or function
我有一個在命令行上運行正常的命令,但是當我嘗試將它放在別名或函數中時卻沒有。
$ awk '{print $1}' /tmp/textfile
0
這是正確的,因為'0'在“textfile”的位置1。
$ alias a="awk '{print $1}' /tmp/textfile"
$ a
1 0 136 94
這就是“textfile”中的整行。 我已經嘗試了各種各樣的引號,括號和反引號,我可以想象它們可能會起作用。 我可以用各種格式得到同樣的問題。
我不明白的是什么?
你需要像這樣逃避$
:
alias a="awk '{print \$1}' /tmp/textfile"
否則你的別名是:
awk '{print }' /tmp/textfile
打印整個文件...
使用函數而不是別名
myfunc(){ awk '{print $1}' file; }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.