Ubuntu 14.04(64ビット)を実行しています。コマンドxterm
を初めて見つけたとき、コマンドxterm xterm
を試してみたところ、無限に新しいxtermウィンドウが開き始めました。ctrl + C
はすぐに停止し、すべてのウィンドウを閉じます。
しかし、私はそれがどこまで進んでいるかを確認し、可能な限り実行したかったのです。ほぼすべてのRAMを使い果たし、最終的には閉じられました(システム自体が考えています)。
好奇心から、なぜ/どのようにこれが起こるのですか?
短いバージョン:xtermの引数は、xtermによって実行されるシェルです。シェルは環境変数に設定されているため、さらにコールすると10 PRINT "xterm" 20 GOTO 10
再帰が実行されます。
ロングバージョン:
xterm xterm
は、$Shell
変数をxterm
に設定することにより、xtermのシェルとしてxterm
をxterm呼び出しに渡します(xtermの最初のパラメーターは、実行するシェルとして解釈されます)xterm xterm
コマンドによって実行されたxtermは$Shell
を実行します-この場合、別のxtermインスタンスを作成します(現在$Shell=xterm
であるため)$Shell=xterm
はすでにあるため、新しく作成されたxtermはxterm
を実行しますさらに読む: man xterm