Kiedy biegnę:
watch 'cmd >> output.txt' &
zadanie zostaje zawieszone przez system:
3569 Zatrzymany (wyjście tty)
Czy jest w pobliżu praca?
shell
command-line
tty
watch
background-process
Juliusz
źródło
źródło
Oto sposób:
Ponieważ proces jest tworzony w tle, możemy założyć, że nie potrzebujesz wyświetlacza terminala i możesz przekierowywać do pliku. Jeśli to zrobisz, będziesz mógł w tle
watch
bez problemu.sleep
, jak sugeruje Michał Mrożek, będzie powoli opóźniał się, co może być niepożądane. Oprócz zawiłego skryptu powłoki, który monitoruje czas systemowy i wykonuje polecenie na podstawie upływu czasu,watch -p
może być dobrą opcją dla precyzyjnych czasów.Aby uzyskać dokładne czasy:
źródło
&
dwa razy?man bash
aby zobaczyć, jak&
działa pierwsza . ;)Nie jestem pewien twoich motywacji, ale może to wystarczy?
W przeciwnym razie wyjaśnij, dlaczego tak naprawdę potrzebujesz
watch
.źródło
tee
jest twoim przyjacielem. Na przykład oto, w jaki sposób możesz wyświetlić liczbę plików w bieżącym katalogu i dołączyć ją do count.txt co 2 sekundy:źródło
Zależy od twoich motywacji:
Chcesz coś uruchomić okresowo. Wtedy możesz użyć bezpośrednio crona. (Jeśli dokładność czasu 1 minuta jest wystarczająca dla twoich celów).
Chcesz po prostu uruchomić coś wielokrotnie:
(Możesz uruchomić to na przykład z crontab, chociaż wysoce zalecane jest użycie skryptu).
Chcesz okresowo uruchamiać polecenie i mieć dostęp do danych wyjściowych jego ostatniego wykonania.
Możesz zapisać dane wyjściowe w ramfs (wcześniej modyfikując skrypt):
lub nawet lepiej:
Możesz łączyć
screen
iwatch
, dzięki czemu zawsze możesz sprawdzić najnowszy status, o ile mieści się w jednym ekranie:źródło
Możesz użyć polecenia ekranowego.
http://www.cyberciti.biz/tips/linux-screen-command-howto.html
źródło
Jeśli musisz użyć
watch
- połącz odpowiedzi Mike'a Dangelo i L0B0na przykład
następnie obserwuj upływające sekundy
źródło
Watch jest zaprojektowany do wyświetlania na ekranie, ale jego wyjście może zostać przekierowane (zarówno stdout, jak i stderr), a następnie będzie działało w tle.
źródło