2010-12-03 22 views

答えて

5

hereをご覧ください。他のパラメータセット、使用alt_valueは、ヌル文字列を使用している場合

$ {+ alt_valueパラメータ:}このURLは以下の説明を提供します。

と、次の例があります:$ USE_Xが設定されている場合

echo 
echo "###### \${parameter:+alt_value} ########" 
echo 

a=${param4:+xyz} 
echo "a = $a"  # a = 

param5= 
a=${param5:+xyz} 
echo "a = $a"  # a = 
# Different result from a=${param5+xyz} 

param6=123 
a=${param6:+xyz} 
echo "a = $a"  # a = xyz 
4

は基本的に、文はそうでない場合はnull、1に評価されます。おそらくhttp://tldp.org/LDP/abs/html/parameter-substitution.html#PATTMATCHINGから

if [ -z $USE_X ]; 
then 
    echo 1 
else 
    echo "" 
fi 

に類似:aioobeはすでに質問自体に答え以来

${parameter+alt_value}, ${parameter:+alt_value} 
If parameter set, use alt_value, else use null string. 

Both forms nearly equivalent. The : makes a difference only when parameter has been declared and is null, see below. 
2

、ここでは一例として、この質問を使用して、バッシュのは、正規表現を使用してのような長いmanページを検索する方法です。


/\{.*:\+ 

最初のスラッシュはless(マンページビューア)を検索モードにします。正規表現は、左括弧を検索し、その後に何らかのものが続き、続いてコロンとそれに続くプラス記号を検索します。ブラケットとプラスは、正規表現パーサにとって特別な意味を持つため、エスケープする必要があります。

関連する問題