스크립팅이 처음이고 num.pdb.ostat라는 이름의 모든 파일이있는 디렉토리가 있습니다. 모든 num.ostat의 이름을 바꾸고 싶습니다 (모든 .pdb 삭제). 단일 파일의 경우 다음과 같이 작동합니다.
mv 2.pdb.ostat 2.ostat
하지만이 스크립트를 사용하여 폴더의 모든 파일에 대해 수행하려고하면
for num in ./*; do mv ${num}.pdb.ostat ${num}.ostat; done
아무 반응이 없습니다
누구든지 내가 어디에서 잘못되었는지 말할 수 있습니까?
${num}
전체 파일 이름을 사용합니다. 확장자없이 파일 이름을 얻고 새 확장자를 추가해야합니다. 문자열 형식을 만들 수 있습니다. 다음 명령을 사용하십시오.
for num in ./*; do mv ${num} ${num%.*.*}.ostat ; done
%
$ string 뒤에서 $ substring의 가장 짧은 일치를 삭제합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다