
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
당신이 원하는 것을해야합니다.