"Backup yzT Jan-01-2013" 폴더가 있습니다. 매일 백업하는 스크립트도 만들었습니다.
내가 직면하고 있는 문제는 날짜를 기준으로 매일 폴더 이름을 바꾸는 방법입니다. 새 이름을 선택하는 것은 쉽습니다.
"/home/yzT/Backup yzT `date '+%b-%d-%Y'`"
그러나 "Backup yzT Jan-01-2013" 폴더를 정확히 선택하는 방법은 무엇입니까? 매일이 다르기 때문이죠.
나는 노력했다
mv "/home/yzT/Backup yzT *" "/home/yzT/Backup yzT `date '+%b-%d-%Y'`
mv 경로가 정규식처럼 작동하기를 바라지만, 불행하게도 그렇지 않습니다.
그렇다면 폴더 이름을 어떻게 바꾸나요?
답변1
을 인용했기 때문에 명령 mv
이 작동하지 않으므로 *
파일 이름 글로빙이 시작되지 않았습니다.
다음과 같이 시도해 볼 수 있습니다.
mv "/home/yzT/Backup yzT "* "/home/yzT/Backup yzT `date '+%b-%d-%Y'`
*
( 인용문에서 제거 된 내용 입니다. 이는아니요정규식 일치, 즉와일드카드.)
이는 해당 디렉터리로 시작하는 해당 디렉터리의 모든 파일 이름과 일치하므로 기본 디렉터리가 있는 시나리오 Backup yzT
에서는 작동하지 않습니다 .Backup yzT weekly
그러고보니 당신은진짜이러한 디렉토리 이름은 당신을 어렵게 만듭니다. 이 옵션을 선택하는 경우:
yzT.daily.timestamp yzT.weekly.timestamp etc...
모든 스크립트를 올바르게 작성하기 어렵게 만드는 공백에 대해 걱정할 필요가 없습니다. 또한 이 시나리오를 사용하면 주간 백업과 별도로 일일 백업을 쉽게 수행하거나 두 사용자에 대한 백업을 독립적으로 쉽게 수행할 수 있습니다.
마지막으로, 스크립트에서 날짜 형식을 사용하는 것은 YYYYMMDD.HHMMSS
지역화된 타임스탬프보다 다루기가 더 쉽습니다. 예를 들어 기본적으로 잘 정렬되고 구문 분석하기 쉽습니다(언어, 월 이름 매핑 등에 대해 걱정할 필요가 없습니다).