untar命令在终端中有效,但在bash脚本中无效

问题描述 投票:0回答:1

我正在尝试从互联网上下载一些公共数据集并将其解压缩。我要循环执行此操作,因为我想下载几个.tar.gz文件,将它们放在文件夹中,然后将它们全部解压缩。下载有效,而tar命令在终端中有效,但在我的bash脚本中无效。我不了解这种不一致的行为。

#!/bin/sh

PATH="$(pwd)/data"
cd $PATH

/usr/bin/curl "https://s3.eu-central-1.wasabisys.com/aicrowd-public-datasets/myfoodrepo/round-2/val.tar.gz" --output val.tar.gz

for file in *.tar.gz
do
    /bin/tar zxf $file
done
bash unix tar
1个回答
0
投票
sh,但似乎已在终端中使用

bash。测试是否可行:

#!/bin/bash directory="$(pwd)/data" cd $directory curl "https://s3.eu-central-1.wasabisys.com/aicrowd-public-datasets/myfoodrepo/round-2/val.tar.gz" --output val.tar.gz for file in *.tar.gz do tar zxf $file done 让我知道是否有帮助!
注意:

我也删除了不需要的绝对路径,并且将

PATH局部变量的名称更改为目录,因为

PATH

当然已经在您的环境中了。
© www.soinside.com 2019 - 2024. All rights reserved.