Я заметил, что lshw и lsof оба берут минутку, чтобы загрузить свой вывод, и если я буду обрабатывать их вывод обработкой awk, я получаю сообщение помощи от awk и затем. , , ничего из первой команды.
Что нужно сделать, чтобы awk действительно извлекал нужный мне результат? Есть ли способ удержать трубку до тех пор, пока не будет доступен выход для awk?
Пыль - это то, что я попытался
$ lsof | awk `{print $3}`
mksh: {print: not found
Usage: awk [POSIX or GNU style options] -f progfile [--] file ...
Usage: awk [POSIX or GNU style options] [--] 'program' file ...
POSIX options: GNU long options: (standard)
-f progfile --file=progfile
-F fs --field-separator=fs
-v var=val --assign=var=val
Short options: GNU long options: (extensions)
-b --characters-as-bytes
-c --traditional
-C --copyright
-d[file] --dump-variables[=file]
-e 'program-text' --source='program-text'
-E file --exec=file
-g --gen-pot
-h --help
-L [fatal] --lint[=fatal]
-n --non-decimal-data
-N --use-lc-numeric
-O --optimize
-p[file] --profile[=file]
-P --posix
-r --re-interval
-S --sandbox
-t --lint-old
-V --version
To report bugs, see node `Bugs' in `gawk.info', which is
section `Reporting Problems and Bugs' in the printed version.
gawk is a pattern scanning and processing language.
By default it reads standard input and writes standard output.
Examples:
gawk '{ sum += $1 }; END { print sum }' file
gawk -F: '{ print $1 }' /etc/passwd
Обратите внимание, что подано 3 доллара - это просто пример , он имеет тот же эффект с любым полем. Я также пытался sudo lsof | awk /test.txt/ {print $ 3} `
Я также пробовал sudo lshw | awk / cpu / {print}`
ПРИМЕЧАНИЕ: я знаю Я могу использовать grep, но я пытаюсь понять здесь, почему короткая пауза, которую принимают lshw и lsof, не позволяет awk выполнять свою работу, и как я могу обойти эту паузу, две команды берут