我有53000個文件夾(以數字1,2,3 ...命名),每個文件夾中有一個名爲「支柱」。我需要將它們的數據收集到一個文本文件中。我用那個命令。但是其中一些文件夾有一個空白的「道具」文件。我需要知道我的文本文件中哪些是空白的。用於讀取文件夾下的文件內容並將其寫入文本文件的shell腳本
#!/bin/sh
a=0
while [ $a - le 53000]
do
a= 'expr $a + 1'
cat $a/prop >> x.txt
done
我有53000個文件夾(以數字1,2,3 ...命名),每個文件夾中有一個名爲「支柱」。我需要將它們的數據收集到一個文本文件中。我用那個命令。但是其中一些文件夾有一個空白的「道具」文件。我需要知道我的文本文件中哪些是空白的。用於讀取文件夾下的文件內容並將其寫入文本文件的shell腳本
#!/bin/sh
a=0
while [ $a - le 53000]
do
a= 'expr $a + 1'
cat $a/prop >> x.txt
done
這將所有現有prop
文件的內容複製到x.txt
。這也將使詳述任何丟失的文件的消息在missing.txt
:
cat {1..53000}/prop >x.txt 2>missing.txt
如果,例如,文件515/prop
失蹤了,然後會有一個線missing.txt
指出:
cat: 515/prop: No such file or directory
這需要bash
或任何其他支持大括號擴展的高級外殼。
從目錄與它的編號的文件夾,你可以用look for directories that don't contain your specific file
find . -mindepth 1 -maxdepth 1 -type d '!' -exec test -e "{}/prop" ';' -print
例子:
ls *
1:
prop
2:
prop
3:
$ find . -mindepth 1 -maxdepth 1 -type d '!' -exec test -e "{}/prop" ';' -print
./3
那你要添加到'x.txt'文件時,什麼信息文件夾中沒有文件? – higuaro
我有同樣的問題作爲@higuaro加上這一個:首先你說:'我有53000個文件夾(名稱爲數字1,2,3 ...)裏面*每個*其中有一個文件稱爲「道具」 '但後來你說:'但是有些文件夾沒有「prop」文件。「 - 所有文件夾都有一個'prop'文件或者只有一些文件? –
對不起,其中一些有一個空白的「道具」文件 –