Ctrl + Cを使用せずにターミナルコマンドを呼び出した直後に終了するにはどうすればよいですか?

Ctrl + Cを使用せずにターミナルコマンドを呼び出した直後に終了するにはどうすればよいですか?

私はしばしばMacで次のコマンドを実行します。

user@host ~/ $ tail -f /some/directory/api-access.log | code -
user@host ~/ $ php artisan route:list | code -

これらのコマンドが実行するアクションは、出力を取得してVisual Studio Codeで開くだけです。ただし、コマンドを呼び出すと、コマンドは端末で開いたままになります。 Visual Studio Codeで出力を開いた後、コマンドを停止したいと思います。理想的には、ctrl+を押す必要がないように1行のテキストが必要ですc。どうすればいいですか?

答え1

したがって、エディタが実行中に端末をすぐに使用できるようにしたいです。エディタと前のコマンドはどちらもパイプラインのコンポーネントなので、どちらか一方のみをバックグラウンドで送信することはできません。あなたはそれらをすべて文脈に合わせる必要があります。

私はこれがcode一種のGUIベースのエディタであると仮定しているので、端末自体を占有しません。

$ ( tail -f /some/directory/api-access.log | code - ) &

または

$ ( php artisan route:list | code - ) &

答え2

しかし、あなたはAB質問をしていると確信していますが。言い換えれば、問題Bの解決策Aを決定し、今Aを行う方法を尋ねています。 Bに聞かなければならない時。

それがまさにその内容です。

program &
kill $!

これを試してみると後悔します。多くの問題があります(民族的に危険であり、実際に問題を解決することはできませんが、答えは提供します)。

これにより問題を解決できます。

program &

公演がしばらく終わる限り。

関連情報