찾기 + 파일 이름을 다시 편집하는 방법

찾기 + 파일 이름을 다시 편집하는 방법

폴더 아래에 /home/files다음 파일이 있습니다

VER_3all_servers_home\server383_232.35.35.341
VER_3all_servers_home\server323_232.35.35.342
VER_3all_servers_home\server313_232.35.35.343
VER_3all_servers_home\server303_232.35.35.344
VER_3all_servers_home\server381_232.35.35.345
VER_3all_servers_home\server380_232.35.35.346

3all_servers_home\아래의 모든 파일에서 " " 단어를 제거하여 파일을 다시 편집하겠습니다./home/files

그래서 파일은 다음과 같습니다

VER_server383_232.35.35.341
VER_server323_232.35.35.342
VER_server313_232.35.35.343
VER_server303_232.35.35.344
VER_server381_232.35.35.345
VER_server380_232.35.35.346

이를 수행하는 방법에 대한 제안이 있습니까?

답변1

넌 할 수있어:

for f in /home/files/*3all_servers_home*; do 
    mv -- "$f" "${f//3all_servers_home\\}"
done

이 형식은 변수에서 ${var//glob}모든 glob 항목을 제거합니다 .globvar

또는 다음과 같은 경우 perl-rename(Red Hat에서는 뭐라고 부르는지 기억나지 않습니다. rename, prename또는 중 하나일 것입니다 perl-rename):

rename 's/3all_servers_home\\//' /home/files/*3all_servers_home*

관련 정보