簡體   English   中英

使用bash腳本提取tar文件

[英]Extract tar file using bash script

嗨,我正在使用Bash Script,並且我在提取tar文件時遇到困難,而tar文件內部是另一個tar文件。 請參閱下面的代碼,並向我提供反饋,因為該代碼所做的唯一事情就是提取第一個tar文件並將其刪除。

#!/bin/bash

output=$(df -h)
bundle=$(awk -F = '{print $2}' config.txt)
bundlename=$(echo $bundle | awk -F / '{print $11}')  
echo "$output"

wget $bundle
echo "$bundlename"
tar -xzvf "$bundlename"
rm -vf "$bundlename"

我的問題是提取tar文件中所有tar文件的正確方法/代碼是什么?

您可以再次將tar提取的輸出通過管道傳遞到tar command以運行它。 例如:

tar -xvf xyz.tar |grep '\.tar$' | xargs -n 1 | tar -xvf

但這只會提取一個級別的tar文件,如果提取的tar包含另一個tar,則必須再次通過管道傳輸它。 我希望你明白這一點。

暫無
暫無

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

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