whileループが背景を殺す

whileループが背景を殺す

ストップウォッチとして機能するwhileループがあります。コマンドの実行にかかる時間を計算するために、これをスクリプトに実装したいと思います。コマンド完了後に終了したい。

date1=`date +%s`; while true; do 
   echo -ne "$(date -u --date @$((`date +%s` - $date1)) +%H:%M:%S)\r";
done &

スクリプト内でこのループを終了する必要があります。

頑張った

    1-jobs but it gives me no output
    2-kill $! but give me erro

しかし、ループは引き続き実行されます

ベストアンサー1

timeoutパッケージに提供されているコマンドを使用してくださいcoreutils

NAME

   timeout - run a command with a time limit

SYNOPSIS
   timeout [OPTION] DURATION COMMAND [ARG]...
   timeout [OPTION]

DESCRIPTION
   Start COMMAND, and kill it if still running after DURATION.

おすすめ記事