Обычно я передаю команду ls
с помощью less
и хотел бы выполнить команду во время ее подкачки, например, я натолкнулся на файл, который я хотел бы удалить, поэтому я хотел бы выполнить команду rm {filename}
во время подкачки. Я также хотел бы надеяться, что смогу использовать тот же метод при просмотре man-страниц. Если нет, то чем он отличается?
2 ответа
Вы можете получить доступ к командной строке с помощью взрыва (!
) в течение меньше.
Так, например, если вы наберете:
touch temp.txt
ls | less
!rm temp.txt
И temp.txt должен быть пропущен.
Изменить: По умолчанию кажется, что человек теперь использует меньше страниц (по какой-то причине я думал, что он использовал more
, возможно, в прошлом это было). Вы можете использовать тот же трюк, но для его работы требуется полный путь (например, /home /user /...).
Это потому, что вызов man изменяет текущий рабочий каталог. На моей машине (xubuntu, используя xfce-terminal
) он идет в /usr/share/man
. Если ваша консоль отображает CWD, вы можете увидеть, как она меняется, или вы можете увидеть это изнутри man
, введя:
!pwd
Общий способ сделать это - приостановить текущее задание, выполнить команду и возобновить старое задание.
ls | less
(прочитайте текст, обратите внимание на имя файла)
Control-z
приостановить текущую активную команду
Вы должны получить строку, похожую на эту:[1]+ Stopped ls | less
([1] номер задания.)
rm testfile
fg
или fg %1
(1 - номер задания)
Вы можете приостановить несколько процессов одновременно. Например
ls | less
Control-z
(output: [1]+ Stopped ls | less
)
man rm
Control-z
(output: [2]+ Stopped man rm
)
rm -i testfile*
fg %1
чтобы возобновить работу 1 (оставить справочную страницу открытой в фоновом режиме), или
fg %2
чтобы возобновить работу 2 (человек рм)
Если у вас есть несколько приостановленных процессов, вы можете перечислить их с jobs
.