변경해야 할 파일 이름으로 가득 찬 디렉토리가 있습니다. 단순히 접미사나 접두사의 이름을 바꿀 필요는 없고 파일 이름을 완전히 바꿀 필요가 있습니다.
new_names.txt라는 파일에 새 파일 이름을 포함시켰습니다.
new_names에 포함된 이름을 읽고 디렉터리에 있는 파일의 이름을 바꾸려면 어떤 명령을 사용할 수 있습니까?
답변1
이를 사용하여 명령 목록을 생성할 수 있습니다 mv
.
paste /path/to/new_names <(ls /path/to/files | grep -v new_names) | awk '$2 !~ /^$/ {print "mv " $2,$1}'
괜찮아 보이면 다음을 사용하여 실행할 수 있습니다.
cd /path/to/files
$( paste /path/to/new_names <(ls /path/to/files | grep -v new_names) | awk '$2 !~ /^$/ {print "mv " $2,$1}' )