bash 別名定義的語法

bash 別名定義的語法

我正在使用 Cygwin,並且已經安裝了所有開發人員軟體包以及大多數(如果不是全部)其他軟體包。當我為 gcc 提供別名時,出現錯誤

-bash: alias: gcc: not found

我可能做錯了什麼?

我在終端機中輸入以下命令:

alias gcc "gcc -ansi -Wall -g -O0 -Wwrite-strings -Wshadow -pedantic-errors -fstack-protector-all"

僅供參考,此別名適用於其他系統。

答案1

您的別名分配語法對於 bash/zsh/fish 是錯誤的(您的語法是 tcsh),您需要=在別名名稱和別名擴展之間添加一個:

alias gcc="gcc -ansi -Wall -g -O0 -Wwrite-strings -Wshadow -pedantic-errors -fstack-protector-all"

如果省略=,bash 會將gcc和 `"gcc -ansi ..." 解釋為兩個別名並嘗試列出它們的定義。由於未定義這些別名,您會收到警告:

bash: alias: gcc: not found
bash: alias: gcc -ansi -Wall -g -O0 -Wwrite-strings -Wshadow -pedantic-errors -fstack-protector-all: not found

相關內容