Bash
而讀取循環在別名中不起作用
在 Bash 中,以下命令
echo foo | while read line; do echo $line; done
輸出
foo
;但是,以下alias bar="echo foo | while read line; do echo $line; done" bar
輸出一個
\n
(或空白)。是什麼導致了這種行為差異?
使用單引號來延遲變數擴展:
alias bar='echo foo | while read line; do echo $line; done'