【发布时间】:2016-10-02 02:41:51
【问题描述】:
我需要接受两个参数的 shell 脚本。 第一个是特定文件夹的路径,第二个是 int 值(1 或 2)。
如果第二个参数是 1,那么我必须遍历上述文件夹中的所有 tar 文件,并将可执行文件从第一个参数提取到路径内的特定文件夹中。在这种情况下,该文件夹的名称是“解压”。
如果第二个参数是 2,那么我必须从第一个参数给出的文件夹中的所有 tar 文件中提取所有 *.txt 文件。
我正在尝试这样的事情,但不知道如何捕获每个 tar 文件并提取这两种文件类型之一。
#!/bin/bash
cd $1
if [$2 –eq 1 ]
then
for f in *.tar; do
tar –xv –f "$f" –-wildcards EXECUTABLE FILES -C ./unpacked
done
fi
if [$2 –eq 2 ]
then
for f in *.tar; do
tar –xv –f "$f" –-wildcards "*.txt" -C ./unpacked
done
fi
【问题讨论】: