2013-03-01 45 views
0

我在其中具有多列的CSV文件。讀取文件第一列的csv,並使用UNIX shell腳本搜索與第一列中的值相同的文件系統上的目錄

不過我想讀的使用LINUX shell腳本這個CSV文件只爲第一列與標題命名爲重點,其在它之下

TST-1, TST-2, ..., PROJ-1,PROJ-2,.... 

值採摘第一個值 - TST-1 ,我需要檢查在/ opt/usr/tomcat/home/data/attachments /目錄下是否有任何名爲TST-1的子目錄。如果是,那麼我想將這個目錄移動到備用設備上。同樣,對於第一列重點

下的剩餘值能打動我的目錄不使用CSV文件使用找到rsync的命令在Linux,但我得到的數據存儲在CSV文件我很不熟悉使用Linux shell腳本讀取CSV文件

任何人都可以幫助我解決這個問題!

謝謝, Narendra。

回答

1

試着這樣做:

value=$(awk -F, 'NR>2{print $1}' file.csv) 
if [ -d "/opt/usr/tomcat/home/data/attachments/$value" ]; then 
    mv "/opt/usr/tomcat/home/data/attachments/$value" backup_drive 
fi 

注意:如果您的CSV很簡單,這是確定的,但如果它富人喜歡"aa,aa", xxx, zzz一些價值觀,更好地利用perlrubypythonCSV解析器

+0

謝謝!在您的幫助下,我可以讀取CSV文件。但是使用命令value = $(awk -F,'NR> 1 {print $ 1}'test.csv),當我回顯o/p的值時,我會得到連續的o/p - >「TST-1」「 TST-2" 。我無法將「TST-1」的值從「TST-2」中分離出來,等等......使用這個單個條目「TST-1」,「TST-2」,....我檢查名爲TST-1,TST-2的目錄,並使用命令移動它們 - find/opt/XXXX/tomcat/data/attachments -name $ value -exec rsync -avR --remove-sent-files {}/path/to/backup/drive/\; 任何幫助非常感謝! – Naren 2013-03-05 06:19:24

相關問題