Bash-이름의 날짜를 기준으로 파일을 재구성하는 방법은 무엇입니까?

티아고 벨로 소

2001-01-01에서 2020-12-31까지의 순차적 날짜가 이름에 포함 된 수천 개의 파일로 작업하고 있습니다.

이러한 파일의 샘플은 아래에서 볼 수 있습니다.

gpm_original_20010101.nc
gpm_cressman_20010101_cor_method-add_fac-0.5_pass-1_radius-500km.nc
gpm_cressman_20010101_cor_method-add_fac-0.5_pass-2_radius-250km.nc
gpm_cressman_20010101_cor_method-add_fac-0.5_pass-3_radius-150km.nc
gpm_cressman_20010101_cor_method-add_fac-0.5_pass-4_radius-75km.nc
gpm_cressman_20010101_cor_method-add_fac-0.5_pass-5_radius-30km.nc
.
.
.
gpm_original_20010131.nc
gpm_cressman_20010131_cor_method-add_fac-0.5_pass-1_radius-500km.nc
gpm_cressman_20010131_cor_method-add_fac-0.5_pass-2_radius-250km.nc
gpm_cressman_20010131_cor_method-add_fac-0.5_pass-3_radius-150km.nc
gpm_cressman_20010131_cor_method-add_fac-0.5_pass-4_radius-75km.nc
gpm_cressman_20010131_cor_method-add_fac-0.5_pass-5_radius-30km.nc

그리고까지 2020-12-31. 내가해야 할 일은이 파일들을 년과 월을 기준으로 새 폴더로 재구성하는 것입니다.

디렉토리 트리는 다음 year과 같이 하위 디렉토리가 있는 로직을 따라야합니다 months.

2001
    01
    02
    03
    04
    05
    06
    07
    08
    09
    10
    11
    12

2002
    01
    02
    03
    04
    05
    06
    07
    08
    09
    10
    11
    12

등등. 그리고 파일은 파일 이름의 해당 날짜를 기준으로이 디렉토리로 이동해야합니다. 예 : 200101xx이름에 포함 모든 파일 2001/01폴더 로 이동해야 합니다.

bash를 사용하여 이것을 달성하는 가장 간단한 방법은 무엇입니까?

schrodigerscat 호기심

내가 올바르게 이해했다면 제안은 다음과 같습니다.

for i in *.nc; do 
  [[ "$i" =~ _([0-9]{8})[_.] ]] && d="${BASH_REMATCH[1]}"
  mkdir -p "${d:0:4}/${d:4:2}"
  mv "$i" "${d:0:4}/${d:4:2}"
done

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

열의 날짜를 기준으로 14 일 이상의 날짜를 얻는 방법은 무엇입니까?

분류에서Dev

"수정 된 날짜"를 기준으로 순서대로 숫자로 큰 파일 모음의 이름을 바꾸는 방법은 무엇입니까?

분류에서Dev

파일 이름의 날짜를 기준으로 오래된 백업을 삭제하는 방법은 무엇입니까?

분류에서Dev

bash 스크립트로 여러 tar 파일을 만들고 날짜를 파일 이름으로 사용하는 방법은 무엇입니까?

분류에서Dev

배열의 두 날짜를 기준으로 열 값을 추가하는 방법은 무엇입니까?

분류에서Dev

마지막으로 수정 된 날짜를 기준으로 디렉토리의 텍스트 파일 내용을 에코하는 방법은 무엇입니까?

분류에서Dev

현재 날짜와 시간으로 파일 이름을 저장하는 방법은 무엇입니까?

분류에서Dev

bash / linux를 사용하여 파일 이름의 날짜 형식을 변경하는 방법은 무엇입니까?

분류에서Dev

bash / linux를 사용하여 파일 이름의 날짜 형식을 변경하는 방법은 무엇입니까?

분류에서Dev

현재 기간을 기준으로 MySQL에서 날짜를 업데이트하는 방법은 무엇입니까?

분류에서Dev

요일을 기준으로 datetime을 사용하여 날짜를 만드는 방법은 무엇입니까?

분류에서Dev

Excel에 입력 한 날짜를 기준으로 한 달 (주말 및 미국 공휴일 제외)의 비율을 계산하는 방법은 무엇입니까?

분류에서Dev

줄 시작 날짜를 기준으로 bash 명령에서 출력 줄을 필터링하는 방법은 무엇입니까?

분류에서Dev

날짜 열을 기준으로 선 그림의 색상을 변경하는 방법은 무엇입니까?

분류에서Dev

레일에서 날짜를 기준으로 목록을 표시하는 방법은 무엇입니까?

분류에서Dev

고유 한 파일 이름을 얻기 위해 파일을 생성 날짜와 해시 값으로 이름을 바꾸는 방법은 무엇입니까?

분류에서Dev

날짜 시간을 기준으로 파일을 필터링하는 방법은 무엇입니까?

분류에서Dev

bash : 'cat'파일 이후의 모든 변수 이름을 값으로 바꾸는 방법은 무엇입니까?

분류에서Dev

Mac OSX에서 파일 생성 날짜를 현재 날짜로 설정하는 방법은 무엇입니까?

분류에서Dev

이름을 기반으로 파일의 경로를 찾는 방법은 무엇입니까?

분류에서Dev

"찾기"를 사용하여 두 날짜 사이에 파일을 찾는 방법은 무엇입니까?

분류에서Dev

Bash를 사용하여 덮어 쓰지 않고 점진적으로 로그 파일 배치의 이름을 바꾸는 방법은 무엇입니까?

분류에서Dev

파일 이름의 날짜를 기준으로 파일을 폴더로 정렬 하시겠습니까?

분류에서Dev

분위수를 기준으로 날짜별로 행을 제거하는 방법은 무엇입니까?

분류에서Dev

왼쪽 문자열을 기준으로 파일을 각 파일 이름의 고정 구분자 문자열로 이동하는 방법은 무엇입니까?

분류에서Dev

파일의 타임 스탬프 (날짜)를 기반으로 파일을 다른 디렉토리에 복사하는 방법은 무엇입니까?

분류에서Dev

날짜 (분)를 기준으로 Excel에서 행을 삭제하는 방법은 무엇입니까?

분류에서Dev

날짜를 기준으로 수식을 필터링하는 방법은 무엇입니까?

분류에서Dev

T-SQL : 최대 날짜를 기준으로 행을 선택하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    열의 날짜를 기준으로 14 일 이상의 날짜를 얻는 방법은 무엇입니까?

  2. 2

    "수정 된 날짜"를 기준으로 순서대로 숫자로 큰 파일 모음의 이름을 바꾸는 방법은 무엇입니까?

  3. 3

    파일 이름의 날짜를 기준으로 오래된 백업을 삭제하는 방법은 무엇입니까?

  4. 4

    bash 스크립트로 여러 tar 파일을 만들고 날짜를 파일 이름으로 사용하는 방법은 무엇입니까?

  5. 5

    배열의 두 날짜를 기준으로 열 값을 추가하는 방법은 무엇입니까?

  6. 6

    마지막으로 수정 된 날짜를 기준으로 디렉토리의 텍스트 파일 내용을 에코하는 방법은 무엇입니까?

  7. 7

    현재 날짜와 시간으로 파일 이름을 저장하는 방법은 무엇입니까?

  8. 8

    bash / linux를 사용하여 파일 이름의 날짜 형식을 변경하는 방법은 무엇입니까?

  9. 9

    bash / linux를 사용하여 파일 이름의 날짜 형식을 변경하는 방법은 무엇입니까?

  10. 10

    현재 기간을 기준으로 MySQL에서 날짜를 업데이트하는 방법은 무엇입니까?

  11. 11

    요일을 기준으로 datetime을 사용하여 날짜를 만드는 방법은 무엇입니까?

  12. 12

    Excel에 입력 한 날짜를 기준으로 한 달 (주말 및 미국 공휴일 제외)의 비율을 계산하는 방법은 무엇입니까?

  13. 13

    줄 시작 날짜를 기준으로 bash 명령에서 출력 줄을 필터링하는 방법은 무엇입니까?

  14. 14

    날짜 열을 기준으로 선 그림의 색상을 변경하는 방법은 무엇입니까?

  15. 15

    레일에서 날짜를 기준으로 목록을 표시하는 방법은 무엇입니까?

  16. 16

    고유 한 파일 이름을 얻기 위해 파일을 생성 날짜와 해시 값으로 이름을 바꾸는 방법은 무엇입니까?

  17. 17

    날짜 시간을 기준으로 파일을 필터링하는 방법은 무엇입니까?

  18. 18

    bash : 'cat'파일 이후의 모든 변수 이름을 값으로 바꾸는 방법은 무엇입니까?

  19. 19

    Mac OSX에서 파일 생성 날짜를 현재 날짜로 설정하는 방법은 무엇입니까?

  20. 20

    이름을 기반으로 파일의 경로를 찾는 방법은 무엇입니까?

  21. 21

    "찾기"를 사용하여 두 날짜 사이에 파일을 찾는 방법은 무엇입니까?

  22. 22

    Bash를 사용하여 덮어 쓰지 않고 점진적으로 로그 파일 배치의 이름을 바꾸는 방법은 무엇입니까?

  23. 23

    파일 이름의 날짜를 기준으로 파일을 폴더로 정렬 하시겠습니까?

  24. 24

    분위수를 기준으로 날짜별로 행을 제거하는 방법은 무엇입니까?

  25. 25

    왼쪽 문자열을 기준으로 파일을 각 파일 이름의 고정 구분자 문자열로 이동하는 방법은 무엇입니까?

  26. 26

    파일의 타임 스탬프 (날짜)를 기반으로 파일을 다른 디렉토리에 복사하는 방법은 무엇입니까?

  27. 27

    날짜 (분)를 기준으로 Excel에서 행을 삭제하는 방법은 무엇입니까?

  28. 28

    날짜를 기준으로 수식을 필터링하는 방법은 무엇입니까?

  29. 29

    T-SQL : 최대 날짜를 기준으로 행을 선택하는 방법은 무엇입니까?

뜨겁다태그

보관