【问题标题】:How to unzip all files in directory using shell script?如何使用shell脚本解压缩目录中的所有文件?
【发布时间】:2022-01-01 21:28:25
【问题描述】:

我想解压缩特定目录中的所有文件,但不知道如何使用 shell 脚本。

Lgl_Entitiy.txt.zip
Lgl_Entitiy.txt_1.zip
Lgl_Relate.txt.zip
Lgl_Relate.txt_1.zip
Lgl_Name.txt.zip
Lgl_Name.txt_1.zip

【问题讨论】:

  • 用cURL检索文件后,可以调用unzip命令解压(见man unzip
  • 我没有从 curl 中检索文件...我只想使用 curl 从目录中解压缩文件

标签: linux bash shell directory unzip


【解决方案1】:

你可以使用简单的解压缩命令。

让我举个例子:

  1. 进入您拥有 zip 文件的目录。
cd /home/rexter/test
  1. 此位置的 zip 文件很少。
ls

1.zip
2.zip
3.zip
  1. 现在,如果您想将它们全部解压缩,只需键入:
unzip '*.zip'

它完成了!

#########################

正如你想要的脚本一样。 这里只是相应地编辑

#!/bin/bash

cd <path-to-your-directory>

unzip '*.zip'

将此文件保存为 unzipscript.sh 并使用 'sudo chmod +x unzipscript.sh' 为其授予可执行权限,然后运行此脚本。

【讨论】:

  • 我实际上想使用 shell 脚本而不是 unzip commande ...有没有可能使用 shell 脚本来解压缩目录中的文件?
  • 即使是shell脚本也会使用解压并执行相同的命令。如果不使用 unzip 命令,您将无法创建脚本。
  • #!/bin/bash ZIPDIR=P:\TEST\20211123\ cd "$ZIPDIR" unzip '*.zip'
  • 我尝试使用下面的 shell 脚本,但不知何故它不起作用
  • 那是一样的,只是创建一个具有相同命令的脚本。我已经编辑了解决方案,请相应地编辑。
【解决方案2】:

安装解压:

sudo apt install解压或yum install unzip

在您要解压缩文件的同一目录中使用它:

unzip ‘*.zip’

如果你想把解压后的文件放到其他目录,那么使用这个:

unzip ‘*.zip’ -d /usr/sampleZip/ExampleDir

将其放入 shell 脚本中:

vim shellscript.sh

那么脚本可能是这样的:

#!/bin/bash

unzip ‘*.zip’

保存脚本后,执行:

./shellscript.sh

【讨论】:

  • 我实际上想使用 shell 脚本而不是 unzip commande ...是否可以使用 shell 脚本来解压缩目录中的文件?
  • @Andrew 只是将该命令放在一个 shell 脚本中并执行它(我编辑了我的答案)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-02
  • 2016-02-28
  • 2011-02-12
  • 1970-01-01
  • 2021-11-20
  • 1970-01-01
相关资源
最近更新 更多