![목록이 포함된 x 파일에서 선택하기 위해 선택을 사용하는 방법에는 일련의 명령을 실행해야 합니다. 이 경우에는 컬](https://linux55.com/image/158831/%EB%AA%A9%EB%A1%9D%EC%9D%B4%20%ED%8F%AC%ED%95%A8%EB%90%9C%20x%20%ED%8C%8C%EC%9D%BC%EC%97%90%EC%84%9C%20%EC%84%A0%ED%83%9D%ED%95%98%EA%B8%B0%20%EC%9C%84%ED%95%B4%20%EC%84%A0%ED%83%9D%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%97%90%EB%8A%94%20%EC%9D%BC%EB%A0%A8%EC%9D%98%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%EC%8B%A4%ED%96%89%ED%95%B4%EC%95%BC%20%ED%95%A9%EB%8B%88%EB%8B%A4.%20%EC%9D%B4%20%EA%B2%BD%EC%9A%B0%EC%97%90%EB%8A%94%20%EC%BB%AC.png)
상태 확인을 위한 약 100개의 URL 목록(200, 300,400,500)이 있지만 문제를 제기하는 용어를 파악할 수 없습니다. 미리 사과드립니다.
목록을 사용하여 URL이 포함된 식별된 목록 파일을 선택한 다음 컬을 실행하여 결과를 얻고 싶습니다. 현재 저는 혼란스럽습니다.
해당 파일을 암시적으로 호출하면 작업을 수행할 수 있습니다. 선택할 파일 목록에 대해 select를 사용하면 파일을 가져오고 결과에 대해 간단한 "cat"을 수행하여 해당 파일 내의 URL을 성공적으로 가져올 수 있습니다.
선택을 할 수 없고 파일을 해당 변수에 넣은 다음 루프를 입력하여 선택한 파일에서 해당 항목을 성공적으로 실행할 수 없습니다.
머리가 상해서 당황했어요.
일하다
select f in *.lst; do echo $f
done
어떤 방식이나 형식으로도 작동하지 않음
select f in *.lst;
for i in (cat $f); do curl $i
done
bash -x ./test.sh
+ select f in '*.lst'
1) availability_health_check.lst 3) facility_service_health_check.lst
2) explorer_health_check.lst 4) mobile_service_health_check.lst
#? 1
+ echo availability_health_check.lst
availability_health_check.lst
답변1
코드 do
에 선언에 및가 없습니다. 나는 당신이 다음과 같은 것을 원한다고 믿습니다 :done
select
select f in *.lst; do
for i in $(cat $f); do
curl "$i"
done
done
이렇게 하면 파일을 선택한 다음 선택한 파일의 각 줄에서 컬을 실행할 수 있습니다. exit 0
파일을 선택한 후 스크립트를 종료하려면 파일 뒤에 for 루프를 추가하세요.