Bash를 사용하여 파일 시작 부분에 날짜를 추가하는 방법을 알아냈습니다. 문제는 내가 2020.12.09 - filename
역사적으로 모든 파일에 해당 형식을 사용하고 선호한다는 것입니다. 내 명령은 날짜에 대한 표준 형식을 추가합니다 2020-12-09filename
. 대시를 마침표로 바꾸고 날짜와 파일 이름 사이에 공백이 있는 대시를 추가하고 싶습니다.
도움을 주시면 감사하겠습니다. 감사합니다!
답변1
초기 프로그램을 편집할 수 있으면 date
매뉴얼 페이지를 확인하십시오.
date '+%Y.%m.%d' # --> 2020.12.09
기존 파일의 이름을 바꾸려면:
prename 's/(\d{4})-(\d{2})-(\d{2})/$1.$2.$3 - /' 20*
일부 Linux 배포판에서 prename
호출됨rename
답변2
이것은 나에게 효과적입니다.
mv 12-34-5.txt 12\.34\.5.txt
구문은 다음과 같습니다.mv
<old name>
<new name>
답변3
나는 당신이 다음과 같은 날짜를 생성하고 있다고 생각합니다.
$ date -Idate
2020-12-09
다음을 사용하여 이를 배관으로 sed
대체 할 수 있습니다 .-
.
$ date -Idate | sed 's/-/./g'
2020.12.09
그런 다음 파일 이름을 바꿀 수 있습니다.
mv "$file" $(date -Idate | sed 's/-/./g')\ -\ "$file"
이것은 약간 장황하므로 다음에서 함수를 만들 수 있습니다 ~/.bashrc
.
function add-date {
mv "$1" $(date -Idate | sed 's/-/./g')\ -\ "$1"
}
이제 작동 방식을 보여드리겠습니다.
$ touch file1
$ ls
file1
$ add-date file1
$ ls
'2020.12.09 - file1'