2017-05-29 43 views
0

我已經閱讀了幾批重命名的答案,並沒有讓他們爲我的應用程序工作。我的正則表達式和循環技巧很弱。批處理文件移動,並重命名,使用目錄名稱的一部分

我需要移動許多具有相同名稱的文件,比如說將non_unique_file.txt從具有半唯一名稱的目錄(例如「Directory#1 /」或「Directory#2 /」)移動到'non_unique_files /'目錄,同時修改它們的名稱,使其包含來自目錄的唯一標識符。如果我移動只有一個文件,它看起來像:

cp Directory#1/non_unique_file.txt non_unique_files/#1.txt 

我試了幾個圈,如:

for f in Directory* ; do cp $f/*txt non_unique_files/$f ; done 

知道,這是不正是我需要的,但我不知道如何解析原始目錄名稱並將其添加到新目錄中的新文件名稱。

任何幫助/資源,將不勝感激。

回答

0

想通了。不確定這是如何工作,但它的工作原理。

for f in Directory* ; do cp $f/non_unique_file.txt non_unique_files/$f"".txt"" ; done 

我的文件在我的non_unique_files /目錄中被重命名爲'Directoy#X.txt'。

相關問題