여기에 두 가지 문제가있다.
1.
문자열
이 매우 쉽기 때문에 날짜를 가져옵니다. +
옵션과 함께 date
명령을 사용하기 만하면됩니다. 우리는 백틱을 사용하여 변수의 값을 캡처 할 수 있습니다.
$ DATE=`date +%d-%m-%y`
당신은 date man page에 설명 된대로 다른 %
옵션을 사용하여 날짜 형식을 변경할 수 있습니다.
2. 이름과 확장명으로 파일을 분할하십시오.
이것은 약간 까다 롭습니다. 파일 이름에 .
이 하나만 있다고 생각하면 cut
과 .
을 구분 기호로 사용할 수 있습니다.
$ NAME=`echo $FILE | cut -d. -f1
$ EXT=`echo $FILE | cut -d. -f2`
그러나이 방법은 파일 이름에 .
을 여러 개 사용할 경우 작동하지 않습니다. - 당신은 아마 - 우리가 bash
를 사용하는 경우 우리는 약간의 bash magic that allows us to match patterns when we do variable expansion 사용할 수 있습니다
$ FILE=somefile.txt
$ NAME=${FILE%.*}
$ EXT=${FILE#*.}
$ DATE=`date +%d-%m-%y`
$ NEWFILE=${NAME}_${DATE}.${EXT}
$ echo $NEWFILE
somefile_25-11-09.txt
을 우리가 가독성에 대해 덜 걱정한다면 우리는 모든 수행
$ NAME=${FILE%.*}
$ EXT=${FILE#*.}
이 하나로 모으기 우리가 얻을 (다른 날짜 형식을 가진) 한 줄에 작업 :
$ FILE=somefile.txt
$ FILE=${FILE%.*}_`date +%d%b%y`.${FILE#*.}
$ echo $FILE
somefile_25Nov09.txt
대신 DD-MM-YYYY의-MM-DD YYYY는 파일 이름의 사전 편찬 종류도에 얻을 할 수 있습니다 시간순으로 정렬하십시오. – laalto