2014-11-14 42 views
2

我需要做一些測試,並且需要與我在/ home/testing文件夾中的目錄/ home/recordings中相同的文件名。如何在反映其他目錄中的文件的目錄中創建空的txt文件?

例如,如果我在/ home /錄音有一個文件recording01.mp4,我想有一個空文件recording01.txt或recording01.mp4或在/ home /測試

我明白我可以使用下面的命令嗎?

for i in /home/recordings/*; do touch "$i"; done 

不確定如何在這種情況下指定擴展名或目標目錄?

+0

的命令看起來不錯,應該是適合您的需求。 – Skynet

+0

但我如何更改目的地,如果我需要/ home/testing/*中的所有文件? – Andy

+0

給出答案檢查它。 – Skynet

回答

2

你也可以做到這一點沒有環

find /home/recordings/ -type f -printf /home/testing/%f'\n' | xargs -n1 touch 
2

試試這個:

for i in /home/recordings/*; do touch "/home/testing/$i"; done 

你只需要指定絕對路徑,事情會正常工作。將創建一堆0長度的文件,它們的名稱與/home/recordings中的文件名相對應。

3

一個簡單的/home/testing/添加到觸摸命令將做到這一點。

for i in /home/recordings/*; do 
      temp=`echo $i|cut -f3 -d'/'` 
      cd /home/testing/ 
      touch "$temp"; 
      cd ../.. 
    done 

我假設你是不是在home目錄並運行從其他地方這個腳本文件。

+0

觸摸:不能觸摸'/home/testing//home/recordings/rec001.mp4':沒有這樣的文件或目錄。它看起來像它存儲了一個路徑,而不是文件名到變量 – Andy

+0

現在就試試@Andy – Skynet

+0

謝謝,工作。 – Andy

相關問題