我正在添加这个别名.bashrc
(当然是在一行中),但不幸的是,这不起作用:
alias lspkg="dpkg-query -W -f='${db:Status-Abbrev}\t${binary:Package} - ${binary:Summary}\n'
| awk -F'\t' '/^ii/ {print $2}'"
知道为什么吗?我尝试使用反斜杠或单引号进行反斜杠操作,但没有得到更好的结果。
参考:
答案1
由于 ,${}
和正在被壳吃掉,所以需要逃脱。$
"
$
alias lspkg="dpkg-query -W -f='\${db:Status-Abbrev}\t\${binary:Package} - \${binary:Summary}\n' | awk -F'\t' '/^ii/ {print \$2}'"
一般来说,在调试 shell 命令时,可以使用以下命令echo
来检查一下,例如:
$ echo "dpkg-query -W -f='${db:Status-Abbrev}\t${binary:Package} - ${binary:Summary}\n'
| awk -F'\t' '/^ii/ {print $2}'"
dpkg-query -W -f='\t - \n'
| awk -F'\t' '/^ii/ {print }'
$ _
然后,通过目视检查就可以看到缺少了什么。