実際には何もせず、何も出力しませんが^C
。
while true; do; done
これはCPUを多用するので、良い解決策ではありません。
答え1
私たちが見るとシステムコール、実際にこれを行う製品があります。pause
(2):
pause()
シグナルが転送されるまで、呼び出しプロセス(またはスレッド)を休止状態にします。
もちろん、これを使うプログラムだけでいいです。次の2行のCプログラムをコンパイルする以外に、最も簡単な方法はPerlを使用することです。
perl -MPOSIX -e pause
Cで:
#include <unistd.h>
int main(void) { return pause(); }
答え2
GNUsleep
および(ではない)sleep
の組み込み関数は、整数だけでなくすべての浮動小数点数を受け入れるので、次のことができます。ksh93
mksh
sleep infinity
答え3
コマンドを追加するだけですsleep
。
while true; do sleep 600; done
サイクルの間に10分間眠ります。
答え4
あなたはできます:
tail -f /an/existing/regular/file >/dev/null
これは標準入力を使用せず、read
/an/existing/regular/fileへの新しい追加を待ちます(一部のファイルでは機能しません。tail -f /dev/null
すぐに終了しますが、すべての通常のファイルでは機能します。ファイルが増えない場合は、このコマンドはCPUをほとんど消費しません)