저는 쉘 스크립팅에 대해 아는 바가 거의 없지만 뭔가 복잡한 것을 구현해 보고 싶습니다.
다음 내용이 포함된 doitall.sh가 있다고 가정해 보겠습니다.
zip -j version_a_en.zip en_filea1.txt en_fileb2.json
내용이 다음과 같은 doitall2.sh도 있습니다.
zip -j version_b_en.zip en_fileb1.txt en_fileb2.json
하나의 스크립트만 사용하여 유사한 요구 사항을 모두 처리할 수 있도록 "a" 및 "en"을 매개 변수로 사용하려면 어떻게 해야 합니까? 좋다
./doitall.sh a en
또는
./doitall.sh b fr
답변1
a
en
명령줄 매개변수는 $1
및 다음을 사용하여 쉘 스크립트에서 액세스할 수 있습니다 $2
.
#! /bin/bash
zip -j version_"$1"_"$2".zip "$2"_filea1.txt "$2"_fileb2.json
텍스트에서 뒤에 숫자가 있을 때는 주의해야 합니다. 그래서 저는 항상 큰따옴표로 묶는 경향이 있지만 이 경우에는 생략할 수 있습니다.