Вы отметили вопрос с oh-my-zsh
, но не упоминал это в вопросе.
Я подозреваю, что oh-my-zsh создает свое собственное ls
псевдоним. Если это произойдет после определения псевдонима то он переопределит Ваш.
Необходимо, вероятно, не прокомментировать DISABLE_LS_COLORS="true"
в Вашем .zshrc
, или помещенный Ваш псевдоним после строки, которая делает source $ZSH/oh-my-zsh.sh
.
То, что вам нужно, это Xargs. Я не знаком с Pandoc, но что-то подобное должно работать:
$ find . -name \*.html -type f | sed 's/\.html$//' | xargs -I {} pandoc -f html -t markdown -s -o "{}.md" "{}.html"
Это использует «найти», чтобы перечислить все файлы .html в выбранном вами каталоге (и любых подкатах). Они трубаны для SED, которая откладывается от расширения «.html», а затем побудило к Xargs, которые питают их односторонним в Pandoc; PANDOC (если я правильно использовал синтаксис), затем принимает каждое имя (замещено для {}), использует каждый HTML-файл в качестве источника и выводы в новый файл с расширением MD в том же каталоге, что и исходный файл.
Вы должны в конечном итоге с исходными HTML-файлами и равным количеством соответствующих файлов MD в одном каталоге.
Использование xargs
для обработки вывода find
для многих людей выглядит как-то не так. вполне понятно. Может быть, перебрать все файлы с помощью циклаwhile read
-проще для понимания?
find. -name "*.html" -type f | while read line ; do pandoc "${line}" \ -f html \ -t markdown \ -s \ -o "${line%%.html}.md" done
Кавычки также используются для обозначения файлов, содержащих пробелы, на всякий случай. Конструкция ${line%%.html}
— это «башизм», который может не работать в других оболочках. Он удаляет любой суффикс .html-из имени файла.