exaxt 이름은 모르지만 항상 BASIC이라는 단어가 포함된 파일의 이름을 바꾸려면 mv 쉘 명령의 이름 바꾸기를 어떻게 사용할 수 있습니까?
rename Ex2WebR1_0WEBSHOP01_005443_B_BASIC.XML BASIC.XML
이런 식으로 시도했지만 작동하지 않습니다
mv 's/.*_BASIC/BASIC/g' BASIC.*
당신의 도움을 주셔서 감사합니다
답변1
답변2
정규식 시도가 올바른 방향으로 진행되고 있으며 다음을 사용하는 경우 약간의 변경이 필요합니다 rename
.
rename 's/.*_BASIC/BASIC/g' *_BASIC*
이는 배포판에 호환 가능한 버전이 설치되어 있다고 가정합니다 rename
(내 경험에 따르면 Red Hat 및 관련 배포판은 그렇지 않은 경우가 많습니다).
또한 동일한 확장자를 가진 일치하는 파일이 여러 개 없어 이름 충돌이 발생할 수 있다고 가정합니다.
이 변형은 확장자가 다른 일치하는 파일이 여러 개 있고 한 번의 작업으로 이름을 바꾸려는 경우 유용합니다. 그렇지 않으면 다음을 사용하는 것이 좋습니다.https://unix.stackexchange.com/a/590037/40482