Io ho:
sleep 210m && for i in $(seq 1 5); do echo -e '\a'; sleep 0.5; done
correre come un semplice timer senza fronzoli per ricordarmi quando qualcosa dovrebbe essere fatto. Questo sleep 210mè PID 25347.
Sto cercando di capire quanto tempo rimane nel sonno. Il migliore che ho escogitato, con me inserendo la quantità di sonno originale (210 minuti) è:
$ echo "210 60 * $(ps -o etimes= 25347) - 60 ~ r n [:] P p" | dc
78:11
(Spiegazione: Il primo bit calcola il numero di secondi nel sonno originale; il $(ps…)bit ottiene il tempo da quando il sonno è iniziato in secondi, quindi il resto li sottrae e viene visualizzato in minuti e secondi.)
Mi viene in mente che ciò sarebbe utile in generale; c'è un modo migliore per farlo? O almeno un modo intelligente per analizzare il tempo di sonno ps -o args?
exec). Ma questo è un buon punto per qualsiasi soluzione generale.
mkshe ksh93almeno) sono sleepintegrate (quindi non si presentano ps). Dovresti sapere in anticipo con quali sleepimplementazioni hai a che fare.
sh -c 'sleep 1; sleep 2'con molteshimplementazioni, è lo stesso processo che viene eseguitoshe successivamente eseguitosleep 2(1 secondo dopo).