[解決済み】シェルスクリプトで期待される条件付き二項演算子
2022-02-23 19:48:04
質問
ログファイルに保存されている文字列の値を比較する簡単なプログラムを試していたのですが、以下のようなエラーが発生しました。
#!/bin/bash
check_val1="successful"
check_val2="completed"
log="/compile.log"
if [[ grep $check_val1 $log -ne $check_val1 || grep $check_val2 $log -ne $check_val2 ]];
then
echo "No Error"
else
echo "Error"
fi
Error:
./simple.sh: line 7: conditional binary operator expected
./simple.sh: line 7: syntax error near `$check_val1'
./simple.sh: line 7: `if [[ grep $check_val1 $log -ne $check_val1 || grep $check_val2 $log -ne $check_val2 ]];'
解決方法は?
問題はあなたの
if [[...]]
式で、2つの
grep
コマンドを使用し、コマンド置換を使用しない場合、すなわち
$(grep 'pattern' file)
.
しかし、その代わりに
if [[ grep $check_val1 $log -ne $check_val1 || grep $check_val2 $log -ne $check_val2 ]]; then
を使用することができます。
grep -q
:
if grep -q -e "$check_val1" -e "$check_val2" "$log"; then
のとおりです。
man grep
:
-q, --quiet, --silent
Quiet mode: suppress normal output. grep will only search a file until a match
has been found, making searches potentially less expensive.
関連
-
[解決済み] コマンド出力から2列目を取得する方法は?
-
[解決済み] Bashシェルスクリプトでディレクトリが存在するかどうかを確認するにはどうすればよいですか?
-
[解決済み] シェルで、「2>&1」はどういう意味ですか?
-
[解決済み] テキストファイルから、特定の文字列を含むすべての行を削除するにはどうすればよいですか?
-
[解決済み] LinuxのシェルスクリプトでYes/No/Cancelの入力を促すにはどうしたらいいですか?
-
[解決済み] Bashシェルスクリプトの入力引数の存在確認
-
[解決済み] シェルスクリプトでYYYY-MM-DD形式の日付にする
-
[解決済み] シェルスクリプトでブール変数を宣言して使用するにはどうすればよいですか?
-
[解決済み] Rubyからシェルコマンドを呼び出す方法
-
[解決済み] シェルスクリプトで部分文字列を別の文字列に置き換える
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Centos 6 /usr/sbin/sendmail - 件名を付けてメールを送信する方法は?
-
文字列 null with space エラー: 二項演算子が期待されています。
-
エラー時の対処法「[: =: 単項演算子が期待される" というシェルスクリプトのエラーの解決法
-
linux awkコマンド詳細説明
-
[解決済み】ある名前に一致するプロセスをすべて終了させる方法は?
-
[解決済み】LinuxのシェルスクリプトからYAMLファイルをパースする方法は?
-
[解決済み】Curlでレスポンスと一緒にhttpステータスコードも返すようにした
-
[解決済み】シェルスクリプトでファイルが存在するかどうかを確認する方法
-
[解決済み] zshでALT+LeftArrowKeyの解決策を探しています。
-
[解決済み] Ansibleで複数行のシェルスクリプトを実行する方法