Nano ведет себя как ожидалось, так как канал используется для подключения на выходе программы к входу другого.
Вместо этого вы хотите использовать выходные данные find
в качестве аргумента для nano
:
nano `find / -iname httpd.conf`
Когда я запускаю следующую команду в Linux:
find / -iname httpd.conf
Я получил:
/usr/local/apache/conf/httpd.conf
Я хочу использовать nano для редактирования этого файла, ленивый, чтобы снова ввести путь к файлу, я использовал:
find / -iname httpd.conf | nano
Это не сработало, nano быстро открылся и вышел, затем я нашел файл nano.save в каталоге, где я выполнил эту команду. Используя команду cat на nano.save, он выводит текст: /usr/local/apache/conf/httpd.conf
Это означает, что nano думает, что предыдущий вывод по каналу представляет собой строку, которую я хочу записать в файл, но на самом деле я хотел бы, чтобы nano рассматривал его как путь к файлу, чтобы он фактически открыл файл для меня, чтобы выполнить редактирование.
Как мы можем заставить nano принимать предыдущий вывод по каналу как путь к файлу?
Nano ведет себя как ожидалось, так как канал используется для подключения на выходе программы к входу другого.
Вместо этого вы хотите использовать выходные данные find
в качестве аргумента для nano
:
nano `find / -iname httpd.conf`