予想される結果

予想される結果

Task.sh実行権限を持つスクリプト(例)があります。

擬似コード:

if [[ Not called from inside a script ]]; then
  echo 'Not called from inside a script'
else
  echo 'Called from a script'
fi

Main.sh実行権限を持つスクリプトがあります。

Value=$(Task.sh)
echo "${Value}"

予想される結果

$ Task.sh
Not called from inside a script

$ Main.sh
Called from a script

ヘルプリクエスト

疑似コードにどの条件を追加するかを提案してくださいTask.sh

ベストアンサー1

1つのオプションは要求を」これをスクリプトで実行していますか?「到着する」ターミナルまたはパイプ/ファイルに接続しますか?「これを行うと、次のような状況が可能になりますTask.sh >/tmp/file。スクリプトでは呼び出されませんが、クリップボードの代わりにファイルに書き込む必要があるようです。

これが許可されている場合は、簡単なテストを使用できます。標準出力ターミナルに接続:

if [ -t 1 ]
then
    echo "stdout is a terminal (tty)"
else
    echo "not a terminal (tty)"
fi

ツールは、使用されている状況に応じて、非常に類似した方法を使用して異なる方法で使用および操作されますlsttyたとえば、比較しlsls | cat

おすすめ記事