![폴더 이름을 변수로 사용하여 각 폴더에 대해 명령을 반복하는 스크립트를 어떻게 실행할 수 있습니까?](https://linux55.com/image/212326/%ED%8F%B4%EB%8D%94%20%EC%9D%B4%EB%A6%84%EC%9D%84%20%EB%B3%80%EC%88%98%EB%A1%9C%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%EA%B0%81%20%ED%8F%B4%EB%8D%94%EC%97%90%20%EB%8C%80%ED%95%B4%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%EB%B0%98%EB%B3%B5%ED%95%98%EB%8A%94%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EB%A5%BC%20%EC%96%B4%EB%96%BB%EA%B2%8C%20%EC%8B%A4%ED%96%89%ED%95%A0%20%EC%88%98%20%EC%9E%88%EC%8A%B5%EB%8B%88%EA%B9%8C%3F.png)
저는 rclone을 사용하고 있으며 해당 리모컨과 이름을 공유하는 폴더를 생성하여 자동으로 리모컨을 마운트하는 스크립트를 작성하고 싶습니다.
내 디렉터리 구조는 /home/user/remotes/
마운트 지점으로 사용되는 총 5개의 폴더입니다.
실행 시 원격 디렉터리를 참조하고 각 폴더에 대해 설치 명령을 실행하는 스크립트를 작성하는 방법을 배우고 싶습니다.
스크립트에 의해 생성된 명령은 다음과 같습니다.
rclone mount FolderName1: /home/user/remotes/FolderName1 --flags
rclone mount FolderName2: /home/user/remotes/FolderName2 --flags
이상적으로는 스크립트가 각 폴더에 대해 위의 명령을 자동으로 생성하므로 앞으로 해야 할 일은 마운트 지점으로 사용할 폴더를 만드는 것뿐입니다. (저는 스크립트를 cron 작업으로 실행하여 원격에서 스캔하도록 할 계획입니다. 목차).
이를 수행할 수 있는 방법이 있습니까?
답변1
가장 쉬운 방법은 이미 사용하고 있는 명령을 스크립트에 넣는 것입니다.
#!/bin/sh
rclone mount remote:path/to/files_1 /path/to/local/mount_1
rclone mount remote:path/to/files_2 /path/to/local/mount_2
rclone mount remote:path/to/files_3 /path/to/local/mount_3
자동방식은 좀 까다롭네요
#!/bin/sh
# get a list of directory names
dirs=$(rclone lsf --dirs-only remote:path/to/dirs)
# assuming you do not have a directory with a space in a name
for dir in $dirs
do
# ensure you have a mount point
mkdir -p /path/to/local/$dir
# and mount it
rclone mount remote:path/to/$dir /path/to/local/$dir
done