다음 파일에 대해 cut 명령을 사용해야 합니다.

다음 파일에 대해 cut 명령을 사용해야 합니다.
ff_rms_mark_head_gp_20221019569987.dat.gz
ff_rms_sharp_head_20221019569987_full.dat.gz

여기에는 두 가지 유형의 파일이 있습니다. 하나는 full, 다른 하나는 gp, 이것이 차이점입니다. 그러나 이 경우 다음 세부 정보를 얻으려면 cut 명령을 사용해야 합니다.

....

출력: `` Table_Name은 다음과 같아야 합니다: "첫 번째 파일의 mark_head

두 번째 테이블은 "sharp_head"여야 합니다.

"두 테이블의 차이점은 "gp"와 "full"입니다. 테이블 이름은 줄어들거나 늘어날 수 있습니다.

날짜: 2022년 10월 19일


`Table Name` would start from `rms_` till `gp` but if there is no `gp` then till `date`)

The date would be with the following format:

```python
date=2022-10-19

답변1

이것이 당신이 원하는 것입니까?

*가 있는 디렉토리에 있는지 확인하십시오..gz 파일이 스크립트를 실행하기 전에:

#!/bin/bash

for file in ./*.gz; do
   
   echo -e "=========================================="
   echo Current file "$file"

   fhead=$(cut -d '_' -f3,4 <<< "$file")
   sixthCol=$(cut -d '_' -f6 <<< "$file")

   if [[ ${sixthCol%%.*} = "full" ]];then
      #Table name till date
      fdate=$(cut -d '_' -f5 <<< "$file" | awk -v FS='' -v OFS='-' '{print $1$2$3$4,$5$6,$7$8}')
      tableName="$(cut -d '_' -f2-4 <<< "$file")_${fdate}"
   else
      #Table name till gp
      fdate=$(cut -d '_' -f6 <<< "$file" | awk -v FS='' -v OFS='-' '{print $1$2$3$4,$5$6,$7$8}')
      tableName=$(cut -d '_' -f2-5 <<< "$file")
   fi

   echo Table_Name: $tableName
   echo Head: $fhead
   echo Date: $fdate
   echo -e "==========================================\n\n"
done

다음 파일이 있다고 가정합니다.

ff_rms_mark_head_gp_20221019569987.dat.gz
ff_rms_sharp_head_20221019569987_full.dat.gz

위 스크립트를 실행하면 다음과 같은 결과가 출력됩니다.

==========================================
Current file ./ff_rms_mark_head_gp_20221019569987.dat.gz
Table_Name: rms_mark_head_gp
Head: mark_head
Date: 2022-10-19
==========================================


==========================================
Current file ./ff_rms_sharp_head_20221019569987_full.dat.gz
Table_Name: rms_sharp_head_2022-10-19
Head: sharp_head
Date: 2022-10-19
==========================================

아마도 Head중요하지 않을 것입니다( Date아마도 여전히 그럴 것입니다). 다른 특정 결과를 원할 경우 실제로 원하는 내용에 대한 세부 정보를 제공해야 합니다.
스크립트와 관련하여 모든 수의 경우에 작동합니다..gz 파일(둘 중 하나 gp) full.

관련 정보