У меня есть каталог ~/temp
с файлами журнала. Этот каталог содержит другой каталог ~/temp/aaa
это также содержит несколько журналов. Я хотел бы открыть все файлы журнала сразу. Я делаю
vim -p *
Это открывает файлы в текущем каталоге, и это прекрасно, но это также открывает каталог aaa
со списком файлов у муравья содержания я хотел бы опустить его. Также никакие файлы не открыты в aaa
каталог. Я мог добавить /aaa/*
в команду, но его не хорошо, так как имя каталога могло бы измениться, и я хотел бы иметь более универсальную команду.
Как перечислить все файлы в каталоге и подкаталоге для vim
?
Можно использовать следующую команду, которая откроется vim
с вкладкой для каждого файла под текущим каталогом:
vim -p `find -L . -type f -print`
Или следующая команда, которая откроет все файлы в текущем каталоге и все файлы во всем first-level-of-sub-directories текущего каталога
vim -p ./* ./*/*
Вышеупомянутая команда основана на выполнении vim -p
вместе с примером из подобного ответа, который может быть найден здесь
Несколько (измененных) примеров из расширенного ответа откроют энергию для каждого файла под текущим каталогом, и однажды vim
будет закрыт, откроется vim
снова для следующего файла, и т.д.:
find . -xtype f -exec vim {} \;
Или
find -L . -type f -exec vim {} \;