Unix 날짜 형식 파일 문제

Unix 날짜 형식 파일 문제

내 파일 이름은 날짜 형식입니다. 예: 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
  • 참고: 입력 파일의 특정 날짜가 아닌 현재 날짜를 접두사 및 접미사로 사용하여 파일을 이동하도록 선택합니다.

관련 정보