シェル スクリプトが「実行中: コマンドが見つかりません」を返します。理由は不明です。

シェル スクリプトが「実行中: コマンドが見つかりません」を返します。理由は不明です。

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

#!/bin/bash

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

$fs

出力:

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

答え1

psは、探しているプロセスを見つけており、その結果、fs変数が に設定されますRunning。 を呼び出すと、$fs基本的には を実行しようとしているだけですRunning。 システム上に という名前のコマンドがないため、コマンドが見つかりません。または の結果がRunning欲しいと思いますか?echoprintf

printf '%s\n' "$fs"

関連情報