Есть ли способ применить dos2unix
команду, чтобы она работала со всеми файлами в папке и ее подпапках?
man dos2unix
не показывает какие-либо -r
или похожие варианты, которые сделали бы это прямо вперед?
command-line
files
Алекс Кинман
источник
источник
dos2unix
по умолчанию файлы пропускаются.Пропуск двоичных файлов и скрытых файлов был важен для меня:
Этот работал хорошо для меня:
Что означает: найти все не скрытые файлы рекурсивно в текущем каталоге, затем с помощью grep перечислить все недвоичные (-I) непустые файлы, а затем передать их в файл xargs (разделенный символом новой строки) по одному файлу за раз dos2unix и сохраните оригинальную временную метку.
Смотрите также:
https://github.com/mdolidon/endlines
источник
Вы можете использовать find, чтобы найти все файлы в структуре каталогов, которые вы хотите запустить с помощью команды dos2unix.
Посмотрите справочные страницы для поиска, есть много опций, которые вы можете использовать, чтобы указать, что оценивается
источник
Используйте подстановочный знак. Как это: (если вы находитесь в папке)
или если вы находитесь вне папки, выполните:
источник
Использование
bash
:Опция
globstar
оболочкиbash
позволяет использовать**
глобус. Это работает точно так же,*
но совпадает/
в путевых именах (следовательно, совпадающие имена в подкаталогах тоже). Это будет работать в каталоге, содержащем умеренное количество файлов в его подкаталогах (не много тысяч).В
zsh
иyash
оболочки (сset -o extended-glob
вyash
), вы бы сделатьисточник