
매 시간마다 FTP를 통해 여러 파일을 전송합니다. 수신 시스템에는 동일한 배치의 일종의 식별자가 필요하므로 파일 이름에 타임스탬프를 추가하고 싶습니다. 이것만으로도 매우 간단하지만 각 파일이 동일한 타임스탬프를 가지기를 원하기 때문에(일괄 식별자로 사용할 수 있음) 이 작업을 수행하는 방법을 모르겠습니다.
그래서 나는 가지고있다:
file1.txt
file2.txt
file3.txt
나는 원해요:
file1_20141110184303.txt
file2_20141110184303.txt
file3_20141110184303.txt
첫 번째 이후의 사용은 date +%Y%m%d%H%M%S
분명히 초 단위의 다른 값을 초래하므로 첫 번째 타임스탬프를 파일의 나머지 부분에 추가하고 싶습니다.
답변1
date +%Y%m%d%H%M%S
변수에 값을 저장하십시오 .
x=$(date +%Y%m%d%H%M%S)
그리고 나중에
mv file1 file1_$x.txt
mv file2 file2_$x.txt
...
*.txt
또는 모든 파일에 대한 루프에서
for file in *.txt; do echo mv "$file" "${file%.txt}"_$x.txt; done
( echo
화면에 보이는 내용이 만족스러우면 삭제하세요.)