簡體   English   中英

從特定文件夾中的所有tar文件中提取特定文件類型

[英]Extracting specific file types from all tar files from specific folder

我需要接受兩個參數的shell腳本。 第一個是指向特定文件夾的路徑,第二個是int值(1或2)。

如果第二個參數為1,那么我必須遍歷提到的文件夾中的所有tar文件,並將可執行文件僅提取到第一個參數的路徑內的特定文件夾中。 在這種情況下,該文件夾的名稱為“ unpacked”。

如果第二個參數是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

[MEMBER...]參數必須位於最后。

#!/bin/bash

cd $1
if [$2 –eq 1 ]
then
for f in *.tar; do
tar –xv –f "$f" –-wildcards -C ./unpacked EXECUTABLE FILES
done
fi

if [$2 –eq 2 ]
then
for f in *.tar; do
tar –xv –f "$f" –-wildcards -C ./unpacked "*.txt"
done
fi

要從tar文件中提取特定文件,請在您的終端中執行:

$ tar -zxvf TARNAME.tar.gz PATH/FILNAME

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM