Bash에서 여러 파일에 대한 권한 변경

Bash에서 여러 파일에 대한 권한 변경

여러 위치에 있는 다른 많은 스크립트의 권한을 변경하여 실행 가능하게 만드는 스크립트를 작성하려고 합니다. 나는 온통 검색했는데 구문을 올바르게 얻을 수 없는 것 같습니다. 목록의 첫 번째 파일에 대한 권한만 변경됩니다. 나는 그것이 매우 간단하다고 확신합니다. 나는 이것에 아주 새로운 것입니다. 당신의 도움을 주셔서 감사합니다.

files=(/file/location/one/script1.sh /file/location/two/script2.sh /file/location/three/scriipt3.sh)

chmod +x $files

답변1

알다시피 files변수는 배열이며 $files첫 번째 요소로 확장됩니다. chmod배열의 모든 요소에 대해 수행 하려면 다음을 사용하십시오.

chmod +x "${files[@]}"

답변2

반복할 수 있도록 배열을 정의합니다.

for file in "${files[@]}"; do
  chmod +x "$file"
done

관련 정보