
아래 파일의 이름을 바꿔야 합니다. .job-209675
다음으로 시작하는 파일 이름 만 제거 SOA
하고 이 디렉토리에 다른 파일이 있으므로 원본 파일 이름은 그대로 유지하고 싶습니다.
예를 들어
이전: ./SOA_990377897NW0001_1557340549734.xml.job-2074645
이후:./SOA_990377897NW0001_1557340549734.xml
답변1
변수에 filename
파일 이름 중 하나가 포함되어 있으면 ${filename%.job-*}
마지막 점 뒤의 비트가 없는 이름이 됩니다.
파일 이름을 반복하면서 각 이름을 차례로 바꾸려면,
for filename in SOA_*.job-*; do
echo mv -i "$filename" "${filename%.job-*}"
done
보호를 위해 존재 echo
합니다. 루프를 한 번 실행하고 출력을 검사한 다음 echo
정확하다고 생각되면 제거해야 합니다. 기존 파일을 덮어쓰기 전에 확인을 요청하는 -i
옵션입니다 .mv
이는 모든 관련 파일(다른 파일 제외)이 패턴과 일치한다고 가정합니다 SOA_*.job-*
.