터미널에서 bash를 사용하여 폴더 이름을 바꾸려고 합니다.
1 2 3 4 5
a.txt 파일을 기반으로 이름을 바꾸고 싶습니다.
a 2
c 3
d 5
e 1
b 4
.txt 파일의 순서는 완전히 무작위입니다. 폴더 이름을 다음과 같이 바꾸는 방법을 찾고 싶습니다.
1 > e
2 > a
3 > c
4 > b
5 > d
이를 수행할 수 있는 방법이 있습니까? 저는 OSX를 사용하고 있습니다.
답변1
위에 표시된 간단한 경우에는 각 줄에 대상 디렉토리와 새 이름이라는 두 개의 "단어"가 있고 둘 다 공백을 포함할 수 없으며 간단히 다음을 수행할 수 있습니다.
while read -r from to; do mv "$from" "$to"; done < file
file
이는 첫 번째 문자열이 할당된 각 줄(첫 번째 공백까지) $from
과 나머지 줄을 읽은 $to
다음 mv
각 줄에서 실행됩니다.