シェルスクリプトは「実行中:コマンドが見つかりません」を返します。なぜそうなのか分からない

シェルスクリプトは「実行中:コマンドが見つかりません」を返します。なぜそうなのか分からない

コマンドの変数を設定すると、「コマンドが見つかりません」というエラーが表示されます。以下はスクリプトのコマンドです。

#!/bin/bash

fs=$(ps -C "daemon_name" > /dev/null && echo "Running" || echo "Not Running")

$fs

出力:

./test.sh: Line 5: Running: command not found

答え1

psfsは、あなたの変数がに設定されるようにするあなたが探しているプロセスを探していますRunning。通話中の場合は、$fs基本的に脱出を試みることですRunning。システムに指定されたコマンドがないため、Running「コマンドが見つかりません」というメッセージが表示されます。あなたが望むものはechoまだprintf結果だと思いますか?

printf '%s\n' "$fs"

関連情報