내 파일 이름은 날짜 형식입니다. 예: 20160920-A.cc1. 매일 나는 현재 날짜(yyyymmdd-A.cc1)가 포함된 다른 파일을 받습니다. 로드된 파일과 동일한 이름과 파일 접미사로 날짜 및 시간 스탬프를 사용하여 이 파일을 보관해야 합니다.
따라서 내 입력은 20160920-A.cc1
출력과 마찬가지로 다른 폴더로 이동되며 다음과 같아야 합니다.
20160920-A.cc1_20160920-hh:mm:ss
답변1
date
명령을 자세히 알아야 합니다 . 바라보다 date --help
.
tarball 사용을 위해 아카이브하려면,
tar czf filename_`date +%Y%m%d_%H_%M_%S`.tar.gz filename
즉
tar czf 20160920-A.cc1_`date +%Y%m%d_%H_%M_%S`.tar.gz 20160920-A.cc1
콜론은 :유효한 파일 이름이 아니므로 _hh:mm:ss 대신 밑줄을 사용하십시오.
답변2
date 명령을 사용하면 문제가 해결될 것이라고 생각합니다.
echo some fancy data for the file > $(date +"%Y%m%d")-A.cc1
cp $(date +"%Y%m%d")-A.cc1 <another folder path>/$(date +"%Y%m%d")-A.cc1_$(date +"%Y%m%d-%H:%M:%S")
다른 생성 날짜에 파일을 복사하려면 다음 명령을 사용하십시오.
cp {,<another path>/}20160919-A.cc1
mv <another path>/20160919-A.cc1{,_$(date +"%Y%m%d-%H:%M:%S")}
중요: 여러 파일을 복사하려면 루프를 사용하세요.
답변3
Terjas와 Keokla에게 감사드립니다.
나는 또한 아래와 같은 형식을 시도했습니다. 그러나 그것은 그날에만 적용됩니다.
mv 20160919-A.cc1 `date "+%Y%m%d"'-A.cc1_`date +%Y%m%d_%H_%M_%S`
내 결과는 다음과 같습니다
20160920-A.cc1_2016_09_20_16:50:00
- 참고: 입력 파일의 특정 날짜가 아닌 현재 날짜를 접두사 및 접미사로 사용하여 파일을 이동하도록 선택합니다.