\$var が \! でない場合

\$var が \! でない場合

現在、次の結果を生成するスクリプトがあります。

...
Processing !
Processing $6$vxVOJhOX$U2flG.WASP1fEsqNy1Q0S9YROgdNJi9TTC8Gn74Al4w03unxr4qtHeaeRl8sWsGLG4Om5WbUJVsqNaCD4t4tG.
Processing !
Processing $6$ehmLTmoj$VP72RBNibmjwngQxMrW0kiyax/wJHiV0ugv/8J2RJnCwNxTIBLGJ.A4t5ryZv6lQTyheoA6N0VianZC5QI7Rp1
Processing !
Processing !
...

.のみを使用して項目をフィルタリングしたいです!

脱出するかどうかにかかわらず、以下を試しています\!

while read -r line ; do
  if ! [ \$line = \! ]; then
    echo "Processing $line"
  fi
done

変数に単一が含まれているかどうかを確認するには!

ベストアンサー1

  1. 例の出力行に、より多くのテキスト(「処理中」)があります
  2. ドル記号をエスケープして\$line変数の拡張を防止しました。

努力する:

while read -r line; do 
  if ! [ "$line" = "Processing !" ]; then 
    echo processing line "$line"; 
  fi
done

またはあなたの入力もしサンプルスクリプトを見て、$line次のものを比較します\!

while read -r line; do 
  if ! [ "$line" = \! ]; then 
    echo processing line "$line"; 
  fi
done

またはもっと直接的に:

while read -r line; do 
  if [ "$line" != \! ]; then 
    echo processing line "$line"; 
  fi
done

おすすめ記事