Это не хорошее решение для Вашей конкретной ситуации (она работает, но напрасно сложна), необходимо использовать ответы, уже предоставленные. Я просто хотел упомянуть другой инструмент, который очень полезен, когда Вы хотите присоединиться к выводу нескольких программ, paste
:
DESCRIPTION
Write lines consisting of the sequentially corresponding lines from
each FILE, separated by TABs, to standard output. With no FILE, or
when FILE is -, read standard input.
Объединенный с ударом обрабатывают замену, можно объединить вывод двух команд как это:
$ paste <(df -h | grep test | sed -e 's/*%.^ //g;s/.*[ ^I]//') \
<(df -h | grep test | cut -d '%' -f1 | sed -e 's/*%.^ //g;s/.*[ ^I]//')
/test 10
/test/drv0 20
/test/drv1 15
Или, для использования более простого примера:
$ paste <(echo -e "a\nb\nc") <(echo -e "1\n2\n3")
a 1
b 2
c 3
echo '
████████
██████████████
████████████████
██████████████████
██████████████████
████████████████
██████████████
████████'
или программно и используя обратное видео вместо персонажа бокса Unicode:
$ awk -v radius=20 'BEGIN{
for (y = -radius; y <= radius; y++) {
x = sqrt(radius * radius - y * y)
printf "%*s\033[7m%*s\033[27m\n", radius - x, "", 2 * x, ""
}}'
█████████████
██████████████████
██████████████████████
████████████████████████
███████████████████████████
█████████████████████████████
███████████████████████████████
████████████████████████████████
██████████████████████████████████
███████████████████████████████████
████████████████████████████████████
█████████████████████████████████████
██████████████████████████████████████
███████████████████████████████████████
███████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
███████████████████████████████████████
███████████████████████████████████████
██████████████████████████████████████
█████████████████████████████████████
████████████████████████████████████
███████████████████████████████████
██████████████████████████████████
████████████████████████████████
███████████████████████████████
█████████████████████████████
███████████████████████████
████████████████████████
██████████████████████
██████████████████
█████████████
Вы можете захотеть растянуть ось x
, поскольку символы клеммы обычно выше, чем они широко.
$ awk -v radius=10 'BEGIN{
for (y = -radius; y <= radius; y++) {
x = sqrt(radius * radius - y * y)
printf "%*s\033[7m%*s\033[27m\n", 2*(radius - x), "", 4 * x, ""
}}'
██████████████████
████████████████████████
█████████████████████████████
████████████████████████████████
███████████████████████████████████
█████████████████████████████████████
███████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
████████████████████████████████████████
███████████████████████████████████████
█████████████████████████████████████
███████████████████████████████████
████████████████████████████████
█████████████████████████████
████████████████████████
██████████████████
-121--129011- PS -FP
обычно дает вам эту информацию
# ps -fp 6357210
UID PID PPID C STIME TTY TIME CMD
root 6357210 1 35 15:25:31 - 3:03 nfsd
ps -el | grep "Z"
Это приведет к отображать все зомби-процессы на серверах AIX. Второй Последний столбец покажет, сколько времени прошло с момента его запуска:
$ ps -el | grep 'Z'
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
250005 Z 150921 18284566 21102640 0 60 20 :00 <defunct>