だから私は持っています
find . -name \*.md -type f -exec pandoc --filter ./filter1.py -o {}.html {}
そして{}.html
。で{}
終わるファイル名を返します.md
が、存在しないファイル名のみを返したいので、返す必要があるファイルがあると仮定する.md
と、file nameという名前のファイルを生成するのではなくという名前のファイルを生成します。index.md
{}
index
index.html
index.md.html
.md
では、このコマンドからどのように削除しますか?
答え1
動作します。
たとえば、.txt
現在のディレクトリのファイルを考えてみましょう。
find . -type f -iname "*.txt" -exec basename \{\} .txt \;
答え2
これを使用-exec
して新しいbashシェルを作成し、{}
それを引数として渡してシェルの内部で動作させることができます($0
新しいシェルと同じようにアクセスできます)。.md
パラメータ拡張子で終わるファイル形式を削除できます。
find . -name '*.md' -type f -exec bash -c 'pandoc --filter ./filter1.py -o ${0%md}html' {} \;