Alias
如何在 .cshrc 中使用變數創建別名?
例如,我想創建一個別名來刪除重複的行:
alias rm.dup 'perl -ne 'print unless $dup{$_}++;''
當 source .cshrc 時,它報告:“dup:未定義的變數。”
如果將其更改為
alias rm.dup 'perl -ne 'print unless \$dup{$_}++;' \!* &'
它報告:“!* &:找不到命令。”
也試過
alias rm.dup 'perl -ne 'print unless \$dup{$_}++;''
報告:“:找不到命令。”
使用帶別名的變數的一般規則是什麼?
alias rm.dup 'perl -ne '\''print unless $dup{$_}++'\'' \!* &'
由於不能在單引號中嵌入單引號,因此一種方法是跳出單引號,插入文字引號,然後重新開始引號。
'perl -ne '\''print unless $dup{$_}++'\'' \!* &' |---------|B |-----------------------|D |------| A C E
另一種方法是:
alias rm.dup 'perl -ne "print unless "\$"dup{"\$"_}++" \!* &'