語言本身是個框架,設計師的表達能力因此而被禁錮。 作業系統也是框架,操作者只能在其中游走,駭客是邊緣人。

2008年9月4日 星期四

BASH Shell Parameter Expansion

${parameter:-word} 變數不存在,則用此定義值暫代

${parameter:=word}
變數不存在,則用此定義值

${parameter:?word}
變數不存在,則用此做為錯誤訊息

${parameter:+word}
變數存在,則用此定義值暫代

${PARAMETER:OFFSET}
${PARAMETER:OFFSET:LENGTH} 從偏移位置取出變數值(取出此長度的
變數值)

${PARAMETER#WORD}
${PARAMETER##WORD} 比對後截去前面的
變數值 ##是儘可能的截去

${PARAMETER%WORD}
${PARAMETER%%WORD}
比對後截去後面的變數值 %%是儘可能的截去
例:
# var=abc.123.ABC
# echo ${var#*.}
123.ABC
# echo ${var##*.}
ABC
# echo ${var%.*}
abc.123
# echo ${var%%.*}
abc

沒有留言: