gpt4 book ai didi

linux - shell 脚本等待gunzip 完成然后再进入下一行

转载 作者:太空宇宙 更新时间:2023-11-04 03:46:07 25 4
gpt4 key购买 nike

我创建了一个 shell 脚本来循环访问目录中的一些文件,解压缩它们,添加日期字段,压缩它们备份,然后将它们移动到 hadoop 文件系统。但是,当我运行脚本时,它似乎直接进入下一行,而无需等待gunzip 完成。我如何告诉它等待它完成后再移动到下一行?

FILENAME="/datatst/toproc/*"

for i in $FILENAME
do
echo "file name is: " $i
FILENAMEv2=$(basename "${i}" .gz )
echo "Stripped file name is: " $FILENAMEv2
DATEPART=$(echo $i| cut -d"." -f1| cut -d"-" -f2-)
echo "Datepart is: " $DATEPART
FileDir="/datatst/unzip/$FILENAMEv2"
echo "unzip directory file is: " $FileDir
echo "unzipping file..."
gunzip $i > -c $FileDir && trash $i
echo "unzipping done..."
echo "sed operation begin..."
sed -i 's/^/'$DATEPART' /g' $FileDir
echo "sed operation done..."
echo "zip operation begin..."
gzip $FileDir -c > /datatst/tomove/$i && trash $FileDir
su hadoop fs -put /datatst/tomove/$i /user/hdfs/
done

最佳答案

我认为你应该尝试改变...

gunzip $i > -c $FileDir && trash $i

...到...

gunzip $i -c > $FileDir && trash $i

...我不确定垃圾是什么。

根据用户评论进行更新*

关于linux - shell 脚本等待gunzip 完成然后再进入下一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28131404/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com