我正在远程处理群集并提供几千个作业。有些工作很早就崩溃了我需要将这些作业的输出文件(小于1KB)移动到另一个文件夹并重新启动它们。我想找到可以像他们一样移动它们:删除小于cetain大小的文件并提取文件名
find . -size -1000c -exec mv {} ../crashed \;
但我还需要重新启动这些崩溃的作业。在输出文件夹中的一堆文件夹中输出文件,我需要分开文件夹名称和文件名(不含任何隔离)。
我想sed或/和awk可以轻松做到这一点,但我不知道如何。顺便说一句,我在BASH shell上工作。
我试图用切割,这似乎是工作:
for i in $(find . -size -1000c)
do
FOLDER=$(echo "${i%.*}" | cut -d'/' -f2)
FILENAME=$(echo "${i%.*}" | cut -d'/' -f3)
done
但使用sed的或AWK岂不是更好?如何?
它的工作表示感谢。 – maynak