我正在爲自己的服務創建一個啓動腳本並查看一些現有的服務啓動腳本以獲取幫助。在/etc/init.d/atd啓動腳本中我看到了下面的結構:
echo -n $"Stopping $prog: "
我找不到什麼任何文件啓動一個字符串$一樣。它似乎工作完全相同,因爲不使用$符號。任何人都知道爲什麼你會這樣做,甚至更好地記錄這種不明確的使用情況?谷歌迄今爲止沒有幫助。
該腳本是/ bin/sh(bourne shell)方言。
這是在CentOS釋放6.2(最終)
我正在爲自己的服務創建一個啓動腳本並查看一些現有的服務啓動腳本以獲取幫助。在/etc/init.d/atd啓動腳本中我看到了下面的結構:
echo -n $"Stopping $prog: "
我找不到什麼任何文件啓動一個字符串$一樣。它似乎工作完全相同,因爲不使用$符號。任何人都知道爲什麼你會這樣做,甚至更好地記錄這種不明確的使用情況?谷歌迄今爲止沒有幫助。
該腳本是/ bin/sh(bourne shell)方言。
這是在CentOS釋放6.2(最終)
甲雙引號一個美元符號$"string"
前面字符串將導致字符串根據當前區域被翻譯。如果當前區域設置爲C或POSIX,則忽略美元符號。如果字符串被翻譯並替換,則替換爲雙引號。
太棒了。謝謝! – jrule 2012-07-27 00:05:09
使用'printf'命令可以更好地完成這個命令,這個命令比'echo'的不同實現更強大和更一致。 – 2012-07-26 23:53:18