我目前正在撰寫一個腳本,它將所有找到的 MKV/MKA/MKS 檔案的標題設定為它們的基本名稱,例如:
/path/to/the/file/this is a cool title.mkv
應使用 mkvpropedit 自動編輯,并且標題應設定為“這是一個很酷的標題”。
我可以 ATM 將標題設定為靜態值,但由于標題應始終是檔案名(不帶擴展名),因此它無法正常作業。
我的腳本如下:
find . -iname "*.mk*" -type f -exec mkvpropedit -e info --set title="$(basename)" {} \;
它運行“find”,然后在每個找到的條目上運行-exec,并將標題設定為找到的條目“basename”。至少它應該是這樣作業的。但是 basename 不起作用,因為它不知道應該從什么創建 basename。
有沒有辦法將路徑傳遞給 -exec 命令中的子命令?
uj5u.com熱心網友回復:
您可以通過將檔案名傳遞給 sh 來執行此類操作:
find . -iname "*.mk*" -type f -exec sh -c 'mkvpropedit -e info --set title="$(basename "$1")" "$1"' _ {} \;
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/430764.html
