여러 명령을 중첩 루프로 결합하는 방법은 무엇입니까?

여러 명령을 중첩 루프로 결합하는 방법은 무엇입니까?

wget쉘 스크립트에는 , 7z및 3개의 명령이 있습니다 rm.

list.txt 내부

URL1 archive_01.zip  
URL2 archive_02.zip  
URL2 archive_03.zip

아카이브 다운로드:

while read -r url filename; do
    wget -O "$filename" "$url";
done < list.txt  

$ ls
아카이브_01.zip
아카이브_02.zip
아카이브_03.zip

파일의 압축을 풉니 다:

for file in *zip; do
    7z x $file;
done

$ ls
archive_01.zip
archive_02.zip
archive_03.zip
폴더_01
폴더_02
폴더_03

파일 삭제:

rm *zip

이 세 가지 명령을 중첩 루프로 만드는 것이 가능합니까? 그렇다면 어떻게?

위 명령이 다음과 같이 실행될지 궁금합니다(제 기억이 맞다면).

URL1 다운로드 > URL2 다운로드 > URL3 다운로드
아카이브 추출 1 > 아카이브 추출 2 > 아카이브 추출 2
아카이브 삭제 1 > 아카이브 2 삭제 > 아카이브 3 삭제

실행을 이렇게 보이게 만드는 방법은 무엇입니까?

URL1 다운로드 > 아카이브 1 추출 > 아카이브 1
삭제 URL2 다운로드 > 아카이브 2 추출 > 아카이브 2 삭제
URL3 다운로드 > 아카이브 3 추출 > 아카이브 3 삭제

답변1

이 같은?

#! /bin/bash -

while read -r url filename; do
    wget -O "$filename" "$url"
    7z x "$filename"
    rm -- "$filename"
done < list.txt

답변2

while read -r url filename; do
  wget -O "$filename" "$url";
  7z x $filename
  rm $filename
done < list.txt  

당신이 원하는 것을해야합니다.

관련 정보