空のサブシェルのシェル検出
SC1143ラップされたシェルコマンドのコメント部分をサブシェルでラップすることをお勧めします。 Posixシェルは、何もしないとサブシェルを起動しないほど「十分にスマート」ですか? BashとZshはどうですか? ...
SC1143ラップされたシェルコマンドのコメント部分をサブシェルでラップすることをお勧めします。 Posixシェルは、何もしないとサブシェルを起動しないほど「十分にスマート」ですか? BashとZshはどうですか? ...
declare -F主な質問:現在のシェルの値とシェルが始まったばかりの値との間のデルタを取得する方法(以下の最初の2つのコマンド)$(declare -F)のため、問題を解決できませんでした。サブシェルはシェルプロセスのコピーです。。子会社:以下の3番目のコマンドが何も出力しないのはなぜですか? $ exec env -i bash $ declare -F declare -f ShowInstallerIsoInfo declare -f __expand_tilde_by_ref declare -f...
したがって、次のコマンドを入力すると、PID 4920サブシェルは子プロセス()を生成します。 linuxprobe@DESKTOP-TP0G72N:~$ (sleep 2;ps -f --forest;sleep 5) UID PID PPID C STIME TTY TIME CMD linuxpr+ 513 512 0 Feb17 pts/0 00:00:00 -bash linuxpr+ 4920 513 0 01:35 pts/0 00:00:00 \_ -...
私の本では(SobelLinux実用ガイド,4e)テキストは以下の通りである。 角かっこ制御演算子を使用してコマンドをグループ化できます。この手法では、シェルはグループごとにサブシェルと呼ばれる独自のコピーを作成します。各コマンドセットをリストとして処理し、各コマンドを実行するための新しいプロセスを作成します。 誤解したくないのでここに質問をするようになりました。サブシェルを作成するかどうか〜しなければならないこれらの()グループコマンドを使用する必要がありますか、それとも同じサブセールスで特定のコマンドを実行する方法ですか? たとえば、見てみましょう。...
この質問のバリエーションが何度も要求されました(ここそしてここ、例えば)しかし、答えが私の質問を完全に捉えていないか、私が知っているよりも多くを想定するのは心配です。 たとえば、質問をしますが、おおよそ私が理解しようとしているのは(1)どのようにシェルは実行可能ファイルとスクリプトを認識できますが、もしそうなら(2)認識後に次に何が起こるのか? 私の作業ディレクトリにシェルスクリプトと実行可能ファイルがあるとしますscript(「実行可能」はバイナリ「マシンコード」を意味すると理解していますが、正確ではないかもしれません)exe。 bashシェルと対話してい...
サブシェルでの信号伝播が気になります。次のbashスクリプトがあります。 #!/bin/bash function test_trap() { echo "hello" } trap 'test_trap' SIGUSR2 (#subshell trap 'test_trap' SIGUSR2 some_command ) other commands 次に、SGEグリッドエンジンを使用してそれをグリッドに送信します。問題は、ジョブをキャンセルすると、SGEがジョブにSIGUSR2シグナルを送信してから事前設定された時間が経過した後(またはスクリ...
私はzshとp10kと一緒にncdu(NCurses Disk Usage Tool)を使います。 「b」を押すと、現在のディレクトリにシェルが作成されます。 後でこのタブに再度アクセスしたときに以前の精神的文脈が保存されるようにするには、この情報を画面に表示する方法は? ...
このbashコマンドのいくつかのステップはどの順序で完了しますか? (flock -n 9) 9> toto.txt サブシェル部分のみを実行する場合: (flock -n 9) 私は次の結果を得ました:( flock: 9: Mauvais descripteur de fichier間違ったファイル記述子)。 したがって、サブシェルが最初に(...) 9> toto.txt。 しかし、これを行うと: (ls -l /proc/$$/fd) 9> toto.txt total 0 lrwx------ 1 laurent laur...
私はこれを持っています: timeout 25 bash -c ' for i in {1..9}; do if read line < "$my_fifo"; then if test "$line" != "0"; then exit 0; fi fi done ' 私はbashが本当に好きではないのでこれはできません: timeout 25 (...) なぜ()自体が手続きと見なされないのか理解できません。それは匿名のプログラムです...
GNUバッシュ、バージョン4.3.27 出力をファイルに書き込むスクリプトに奇妙な問題があります。サーバーリストに接続し、一部のサービスのステータス/サブステータスを記録するようにsshをスクリプトします。次に、結果を配列に保存します。 しかし、コンソールウィンドウの実行中に何かを入力すると、入力が配列に保存されますが、$result_arrその理由はわかりません。 #!/bin/bash check_services() { server_number="$1" local result local result_arr local e...
次のように、既存のすべての環境変数を無視して1つだけエコーしたいと思います。 env -i <( export foo=bar; env ) これにより、次のように印刷されます。 foo=bar しかし、建設 env -i <() 私の直感はうまくいくはずですが、うまくいかないようです。 env -iを実行するインラインプログラムをここでどのように作成できますか? ...
複数のUDPストリームを監視し、それを実行可能データに変換するためにbashスクリプトを設定しました。私の問題は、ストリームキャプチャが実行されているか定期的にチェックし、そうでない場合は再起動するようにスクリプトを設定する必要があることです。 問題は、ストリームのキャプチャごとに新しいプロセス名またはIDを生成し、実行中であることを確認することです。 これは私が持っているものの希釈版です。私が正しい道を行っているかどうか誰かが教えてくれることを願っています。 Subscriber () { processName="$1$2$4"; ech...
私はLinuxシェルの初心者ですが、このコマンドがサブシェルを生成することを知っています。 サブシェルは通常、サブシェル演算子や角括弧()、バックティック、または$()構文などのコマンドを使用して生成されます。 : ${FOO:=$([ "$BAR" = "baz" ] && echo "true" || echo "false" )} たとえば、ループ(ここではそうではありません)しかし、私はそれを避ける方法を学ぶのが好きです。通常、上記の課題でサブシェルを回避するために、次のものを使用できますか? if [ -z "$FOO" ];...
Stackexchangeで似たような質問を見つけましたが、助けることができるほど私の場合には近いわけではありません。 スクリプトを生成し、それをキーにバインドして押したときに「titleby artist」が表示されるか、アーティスト/タイトルがない場合は「filename」が表示されるようにします。 Cmus(私が選んだ音楽プレーヤー)は(オリジナル)オプションとペアにcmus-remoteなっている-Cため、cmusプレーヤーに何かを照会し、改行で区切られた応答を得ることができます。たとえば、次のようになります。 cmus-remote -C 'for...