所以 script2 是:
find /some_directory -type f -not -iname "*.pdf" -exec bash -c './script "{}"' \; -print > temp_file
while read line
do
mkdir -p result"$(dirname "$line")"
cp "$line" ~/result"$(dirname "$line")"/$(basename "$line" .txt).pdf
done < temp_file
rm temp_file
./腳本是 file "$1"|grep -q PDF
這兩個組合應該找到實際上是 PDF 檔案的 .txt 檔案,然后將它們復制到某個結果目錄并將它們重命名為 .pdf 檔案。但檔案應位于:result/their/original/directories/file.pdf. (如果原來是some_directory/their/original/directories/file.txt,有些目錄也有空間,所以很多"..")
它完成了,它作業了,但問題是:沒有 mkdir 怎么辦?
我嘗試了很多東西,但似乎都沒有效果,我讀到的每一篇文章都說它可以通過使用 mkdir 來完成(但因為我的教授要求它在沒有 mkdir 的情況下完成,我很確定它可以完成。我不必這樣做,但我想知道如何做到)。
也許它可以通過管道找到?(一些引數會先列印目錄,然后將它們一個一個復制,然后再復制檔案?)我在這方面浪費了很多時間,如果沒有正確的回答就退出它會很可惜。
uj5u.com熱心網友回復:
您可以在創建主要目標目錄時復制檔案install:
install -D src/file dest/src/file
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/406091.html
標籤:
