파일 이름에서 별표 제거

파일 이름에서 별표 제거

다음과 같은 파일 이름이 많이 있습니다.

2501254200*.nc

별표를 없애고 싶습니다. 하지만 다음 코드를 사용할 때 :

mmv '***' '#1#2' 

오류가 발생했습니다.

2501254200*.nc -> : bad new name

Nothing done

이름에서 *를 어떻게 제거하나요?

답변1

많이 사용하지는 않지만 여기서는 파일 이름의 문자 mmv와 정확히 일치하려면 중간 부분이 필요한 것 같습니다 . 패턴이므로 중간을 이스케이프 처리해 보세요 .****

mmv '*\**' '#1#2' 

답변2

*문자 그대로 사용하고 싶은 것을 탈출해야 합니다 . 이 시도:

for file in *\**; do  mv "$file" "${file/\*/}"; done

또는 이미 설치한 경우(Debian 및 Ubuntu와 같은 파생 제품에 perl-rename):rename

rename 's/\*//' *

관련 정보