쉘스크립트로 텍스트 파일에 나열된 이미지 링크를 파일명을 입력해서 다운하려고 합니다.

-@Naver의 이미지

처음에
cat ~/Desktop/LINK2.txt | xargs wget -i LINK2.txt
이걸로 이미지 전체를 다운받았는데
이미지파일 수십개중 원하는 파일명을 입력하여 그걸 토대로 특정 이미지파일만 다운받게 하고싶은데 wget을 쓰려니 옵션을 뭘써야할지 모르겠고 head/tail을 쓰자니 그냥 읽기만하는거라 입력값을 넣고 원하는 파일을 다운받는걸 어떻게 만들어야할지 모르겠습니다.

-@Naver의 이미지

웹페이지 링크에서 나열된 이미지들을 다운받고자 아래와 같은 bash스크립트를 작성했습니다,.

wget -q https//LINK -P ~/Desktop/urls/ -O LINK

grep -i ".jpg" LINK > LINK.txt

sed 's/[^,]*//)/' > LINK2.txt

이걸로 이미지파일만 따로 LINK2.txt파일에 나열되게 만들었는데 이 텍스트 파일을 기반으로 LINK2.txt에 나열된 이미지파일을 원하는 이미지만 파일명을 입력하여 다운받고 싶은데 어떻게 해야할까요?

익명 사용자의 이미지

아래 블로그 글 보고 소스를 약간 수정했습니다.

https://www.cyberciti.biz/faq/unix-howto-read-line-by-line-from-file/

#!/bin/bash
input="link.txt"
while IFS= read -r line
do
  wget ""$line""
done < "$input"