2014-02-18 58 views
0

我在一些舊數據中有不同的文件。將所有以相同前綴開頭的文件放在linux中的文件夾中

它們位於相同的文件夾中。它們按前綴分組。

我想移動以相同前綴命名的文件夾中以相同前綴開頭的所有文件。

尋找一個能自動完成的腳本。

編輯1 腳本自己來看看這多少前綴在那裏,隨後組

感謝

+0

腳本?爲什麼不用'mkdir前綴&& mv前綴*前綴'? –

+0

以及我不提前知道所有前綴,腳本也會找到所有前綴 – Shan

+0

腳本應如何確定什麼是前綴,哪些不是?您可能需要顯示一些有代表性的數據,除了您嘗試過的不工作之外......從技術上講,每個文件名都是(唯一)前綴,但我懷疑您所想的僅限於一些(可能是非統一的)文件名稱的子集,但腳本如何知道前綴結尾和後綴開始的位置?它是隻有4個字符,或17,或由'_'或其他完全分隔?... – twalberg

回答

0

作爲一個起點,怎麼樣的所有文件的ls -1上市,管道到awk命令讓所有的獨特的前綴:

xxx 
yyy 
zzz 
www 
... 

然後,使用的輸出210條命令和遍歷創建前綴目錄及所有文件移動到它作爲@Noufal易卜拉欣建議:

mkdir ${prefix} && mv ${prefix}* prefix 

我不是AWK專家,但是從我的頭頂,我想awk的腳本將沿線︰

BEGIN { 
    // initialize associative array $x 
} 

{ $x[prefix($0)] = 1; } 

END { 
    // foreach key in $x: 
     print $key 
} 
相關問題