다음과 같이 많은 파일이 있습니다.
audiofile_drums_1-ktpcwybsh5c.wav
soundsample_drums_2-fghlkjy57sa.wav
noise_snippet_guitar_5-mxjtgqta3o1.wav
louder_flute_9-mdlsiqpfj6c.wav
"-"와 .wav 파일 확장명 사이의 모든 것을 제거하고 싶습니다.
audiofile_drums_1.wav
soundsample_drums_2.wav
noise_snippet_guitar_5.wav
louder_flute_9.wav
나는 문자 "-"를 사용하여 다음과 같은 모든 것을 삭제하려고했습니다.
rename 's/-.*//' *
내게주는
audiofile_drums_1
soundsample_drums_2
noise_snippet_guitar_5
louder_flute_9
그리고 모든 파일의 이름을 다시 바꾸는 쉬운 방법을 찾지 못해 .wav 확장자를 추가하여 2 대신 한 단계에서 멋진 명령 하나로이 작업을 수행 할 수있는 매끄러운 방법이 있기를 바랍니다.
어떤 제안?
감사
이것은 내 특정 경우에 작동하지만 모든 파일 확장자에 대해 작동합니다.
rename -n 's/-.*(?=\.wav$)//' *
이 명령은 -
파일 이름 에서 기호를 포함한 뒤의 모든 문자를 찾은 다음 긍정적 인 미리보기 ** (?=\.wav$)
를 사용 하여 파일 이름의 끝에있는 문자 (이 경우 파일 확장자)를 검색 $
하고이를 대체합니다. 문자없이 (제거).
** 참고 : 긍정적 인 전망은 너비가 0 인 주장입니다. 경기에 영향을 미치지 만 교체에는 포함되지 않습니다. ( '.wav'부분은 지워지지 않습니다.)
이 예 (?=\.wav$)
에서는 긍정적 인 예측입니다. 정규식에서와 같이 달러 기호 $는 줄 끝을 나타내므로 파일 확장자에 적합합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다