Различия в дереве процессов после остановки сеанса на несколько минут [закрыто]

Debe usar la opción unzip's -cpara descomprimir el contenido del archivo.zip a la salida estándar.... de lo contrario, descomprimirá el archivo (s )en el archivo.zip en el disco, y no habrá nada a lo que canalizar awk.

Al igual que muchos programas que se originaron en MS -DOS/Windows en lugar de Unix, unziptambién habla mucho sobre lo que está haciendo. Los programas de Unix generalmente no hacen eso hasta que usted les dice explícitamente que lo hagan con una opción -vo --verboseo --debugo similar. Es una diferencia cultural significativa entre dos/windows y el software de Unix. y programadores.

Desde el punto de vista de cualquier programa que recibe entrada en stdin, es casi seguro que es basura que lo confundirá (es por eso que los programas de Unix no son detallados a menos que les diga que lo sean ). Así que dile a unzipque "simplemente cállate y ponte a trabajar" con la opción-q(silenciosa )o-qq(extra silenciosa ).

por ej.

unzip -qq -c log.zip | awk -F'- -' '{print $1, $2}' >newfile

Por cierto, he cambiado ligeramente tu script awk. Arreglé el error de sintaxis pring. Además, el separador de campo de salida predeterminado(OFS)en awkes un solo espacio... incluso si configura el separador de campo de entrada(FS)en otra cosa (, p. con-F'- -'). Así que simplemente imprimí$1,$2-sin necesidad de usar un carácter de espacio entre comillas doble -.

-3
20.06.2018, 13:57
1 ответ
#!/bin/sh

ps aux >ps-out.old
sleep 180
ps aux >ps-out.new

diff -u ps-out.old ps-out.new | grep '^[+-]'

Это выполняет ps auxи сохраняет результат в файл. Затем он ждет три минуты, прежде чем повторить то же самое. Затем он использует diff, чтобы получить различия между двумя наборами выходных данных из ps, и grep, чтобы получить только строки в выходных данных diff, которые были добавлены или удалены.

1
28.01.2020, 05:19

Теги

Похожие вопросы