. Если вы видите процессы Java, порожденные диспетчером, в выводе ps, попробуйте проверить PPID этих процессов. Проверьте, является ли это процессом bash, и если да, попробуйте его убить.
Попробуйте эту команду
history | grep history | awk NR==1'{print $8 " " $9 " " $10 " " $11 " " $12 "" $13 }'
xargs cut -d ' '-f1
NR==1
:awk
считывает ячейки в первой строке таблицы, а затем печатает столбцы, относящиеся к «xargs cut -d ' ' -f1», которые равны 8 -12
Некоторые пояснения:
xargs
здесь не применяется. Что он делает, так это принимает стандартный ввод и передает его в качестве аргументов команде. Однако cut
по умолчанию работает со стандартным вводом, что вам и нужно. history | grep history | xargs cut […]
приводит к созданию таких команд, как cut […] [some content from the Bash history]'
. Чтобы обработать серию номеров строк, напечатанных с новой строкой после каждой, вам нужно использовать цикл while read
:
while IFS=$'\n' read -r -u9 number
do
history -d "$number"
done 9< <(history | grep […] | cut […])
some_command | cat | other_command
совершенно излишен. cat
по умолчанию просто копирует стандартный ввод в стандартный вывод.