파일 이름 확인 날짜 및 번호
5780 단어 Bash
date(MacOSX에 미리 설치된 녀석)
오늘의 날짜를 출력합니다YYYYmmdd
.$ date +%Y%m%d
20141031
YYYY-mm-dd
로 어제 날짜를 출력합니다.$ date -v-1d +%Y-%m-%d
2014-10-30
2000년 2월 말의 윤년을 수출하다.$ date -v1d -v3m -v0y -v-1d +%Y-%m-%d
2000-02-29
-v
옵션이 편리합니다. -v Adjust (i.e., take the current date and display the result of the adjustment; not actually set the date) the second, minute, hour, month
day, week day, month or year according to val. If val is preceded with a plus or minus sign, the date is adjusted forwards or backwards
according to the remaining string, otherwise the relevant part of the date is set. The date can be adjusted as many times as required
using these flags. Flags are processed in the order given.
Linux에 있는 그 옵션은 또 다를 거예요.
해결 번호
for 및 Brace Expansion에서 반복
Brace Expansion은 {1..5}
같은 것입니다.$ echo {1..5}
1 2 3 4 5
$ for I in {1..5}; do echo $I; done
1
2
3
4
5
printf에서 0
$ printf "%02i\n" 1
01
for
문장으로 돌리면 됩니다.$ for I in {1..5}; do echo "server-$(printf %02i $I).your.domain"; done
server-01.your.domain
server-02.your.domain
server-03.your.domain
server-04.your.domain
server-05.your.domain
조합
원격 케이스에서 여러 서버의 5일 전부터 오늘까지의 로그 파일을 실행합니다!(이하 echo
확인용)$ for I in {1..5}; do for D in {4..0}; do echo "ssh server-$(printf %02i $I).your.domain cat /PATH/TO/log.$(date -v-${D}d +%Y-%m-%d)"; done; done
ssh server-01.your.domain cat /PATH/TO/log.2014-10-27
ssh server-01.your.domain cat /PATH/TO/log.2014-10-28
ssh server-01.your.domain cat /PATH/TO/log.2014-10-29
ssh server-01.your.domain cat /PATH/TO/log.2014-10-30
ssh server-01.your.domain cat /PATH/TO/log.2014-10-31
ssh server-02.your.domain cat /PATH/TO/log.2014-10-27
ssh server-02.your.domain cat /PATH/TO/log.2014-10-28
ssh server-02.your.domain cat /PATH/TO/log.2014-10-29
ssh server-02.your.domain cat /PATH/TO/log.2014-10-30
ssh server-02.your.domain cat /PATH/TO/log.2014-10-31
ssh server-03.your.domain cat /PATH/TO/log.2014-10-27
ssh server-03.your.domain cat /PATH/TO/log.2014-10-28
ssh server-03.your.domain cat /PATH/TO/log.2014-10-29
ssh server-03.your.domain cat /PATH/TO/log.2014-10-30
ssh server-03.your.domain cat /PATH/TO/log.2014-10-31
ssh server-04.your.domain cat /PATH/TO/log.2014-10-27
ssh server-04.your.domain cat /PATH/TO/log.2014-10-28
ssh server-04.your.domain cat /PATH/TO/log.2014-10-29
ssh server-04.your.domain cat /PATH/TO/log.2014-10-30
ssh server-04.your.domain cat /PATH/TO/log.2014-10-31
ssh server-05.your.domain cat /PATH/TO/log.2014-10-27
ssh server-05.your.domain cat /PATH/TO/log.2014-10-28
ssh server-05.your.domain cat /PATH/TO/log.2014-10-29
ssh server-05.your.domain cat /PATH/TO/log.2014-10-30
ssh server-05.your.domain cat /PATH/TO/log.2014-10-31
이렇게 하면 일지 어획이 진전된다
Reference
이 문제에 관하여(파일 이름 확인 날짜 및 번호), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kozy4324/items/68696758d23e48070335
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ date +%Y%m%d
20141031
$ date -v-1d +%Y-%m-%d
2014-10-30
$ date -v1d -v3m -v0y -v-1d +%Y-%m-%d
2000-02-29
-v Adjust (i.e., take the current date and display the result of the adjustment; not actually set the date) the second, minute, hour, month
day, week day, month or year according to val. If val is preceded with a plus or minus sign, the date is adjusted forwards or backwards
according to the remaining string, otherwise the relevant part of the date is set. The date can be adjusted as many times as required
using these flags. Flags are processed in the order given.
for 및 Brace Expansion에서 반복
Brace Expansion은
{1..5}
같은 것입니다.$ echo {1..5}
1 2 3 4 5
$ for I in {1..5}; do echo $I; done
1
2
3
4
5
printf에서 0
$ printf "%02i\n" 1
01
for
문장으로 돌리면 됩니다.$ for I in {1..5}; do echo "server-$(printf %02i $I).your.domain"; done
server-01.your.domain
server-02.your.domain
server-03.your.domain
server-04.your.domain
server-05.your.domain
조합
원격 케이스에서 여러 서버의 5일 전부터 오늘까지의 로그 파일을 실행합니다!(이하
echo
확인용)$ for I in {1..5}; do for D in {4..0}; do echo "ssh server-$(printf %02i $I).your.domain cat /PATH/TO/log.$(date -v-${D}d +%Y-%m-%d)"; done; done
ssh server-01.your.domain cat /PATH/TO/log.2014-10-27
ssh server-01.your.domain cat /PATH/TO/log.2014-10-28
ssh server-01.your.domain cat /PATH/TO/log.2014-10-29
ssh server-01.your.domain cat /PATH/TO/log.2014-10-30
ssh server-01.your.domain cat /PATH/TO/log.2014-10-31
ssh server-02.your.domain cat /PATH/TO/log.2014-10-27
ssh server-02.your.domain cat /PATH/TO/log.2014-10-28
ssh server-02.your.domain cat /PATH/TO/log.2014-10-29
ssh server-02.your.domain cat /PATH/TO/log.2014-10-30
ssh server-02.your.domain cat /PATH/TO/log.2014-10-31
ssh server-03.your.domain cat /PATH/TO/log.2014-10-27
ssh server-03.your.domain cat /PATH/TO/log.2014-10-28
ssh server-03.your.domain cat /PATH/TO/log.2014-10-29
ssh server-03.your.domain cat /PATH/TO/log.2014-10-30
ssh server-03.your.domain cat /PATH/TO/log.2014-10-31
ssh server-04.your.domain cat /PATH/TO/log.2014-10-27
ssh server-04.your.domain cat /PATH/TO/log.2014-10-28
ssh server-04.your.domain cat /PATH/TO/log.2014-10-29
ssh server-04.your.domain cat /PATH/TO/log.2014-10-30
ssh server-04.your.domain cat /PATH/TO/log.2014-10-31
ssh server-05.your.domain cat /PATH/TO/log.2014-10-27
ssh server-05.your.domain cat /PATH/TO/log.2014-10-28
ssh server-05.your.domain cat /PATH/TO/log.2014-10-29
ssh server-05.your.domain cat /PATH/TO/log.2014-10-30
ssh server-05.your.domain cat /PATH/TO/log.2014-10-31
이렇게 하면 일지 어획이 진전된다
Reference
이 문제에 관하여(파일 이름 확인 날짜 및 번호), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kozy4324/items/68696758d23e48070335텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)