Linux初期化スクリプト0 <&-&>はどのような機能を実行しますか?

Linux初期化スクリプト0 <&-&>はどのような機能を実行しますか?

init.dサーバー上で実行される複数のサービスを制御するためにスクリプトを直接作成しようとしていますLinux。私は次の内容をオンラインで見ました。

nohup $EXEC_SCRIPT 0<&- &> $LOG_FILE & echo $! > $PID_FILE

私が理解している制限では:

  • nohupキャプチャhangup信号
  • $EXEC_SCRIPT実行するコマンドを含む変数です。
  • 0<&- &>以前これは起こりませんでした。
  • $LOG_FILE$EXEC_SCRIPTログファイルパスに似ていますが、インクルード
  • &$LOG_FILEバックグラウンドでログインを開始しますか?
  • $!最後のバックグラウンドコマンドのPID。
  • >$!結果の書き込み$PID_FILE

この知識を使用して問題を解決することができますが、0<&- &>完全にパニックになります。私は、もともとは、少なくとも部分的に理解していないコンテンツを含めるのが好きではありません。

ベストアンサー1

リダイレクトです。

  • 0<&-ファイル記述子0(標準入力)を閉じます。
  • &>stdoutおよびstderrリダイレクト(この場合はログファイルとして)

echo確かに以前はそんなことがなかったんですか$!$!コマンドとして解釈され、次のような結果が発生する可能性が高くなります。

-bash: 18552: command not found

おすすめ記事