Bash 스크립트를 통해 새로 생성된 .txt 파일 읽기

Bash 스크립트를 통해 새로 생성된 .txt 파일 읽기

저는 bash 스크립팅의 초보자이고 엔터프라이즈 시스템에 API를 호출하고 결과를 TXT 파일로 반환하는 스크립트를 작성하고 싶습니다. 마지막으로 API로 생성된 출력 파일을 읽고 싶습니다. 아쉽게도 삭제해도 지나간 파일은 계속 읽히는데 왜그런지는 모르겠습니다.

#!/bin/bash
#Clearing the history to check whether it helps or not
history -cw

#Defining variables
Scan_Output="Scan_output.txt"
Scan_Confirmation_Date=`awk 'NR==7' $Scan_Output` # reads line 7 from txt file
  
#Removing file if already exists
rm -f $Scan_Output

#API Request
curl "my piece of code" > $ScanOutput
sleep 5

echo $Scan_Confrimation_Date

    

답변1

코드의 작업 순서를 따르십시오.

  1. 출력 파일 이름 정의

     Scan_Output="Scan_output.txt"
    
  2. 파일에서 확인 날짜 가져오기(지금 실행)

     Scan_Confirmation_Date=`awk 'NR==7' $Scan_Output` # reads line 7 from txt file
    
  3. 대상 파일 삭제

     rm -f $Scan_Output
    
  4. 출력 파일에 대한 새로운 데이터 가져오기

     curl "my piece of code" > $ScanOutput
    
  5. 스크립트 시작 부분에 우리가 반환하는 날짜를 작성합니다(변수 이름의 오타에 유의하세요).

     echo $Scan_Confrimation_Date
    

당신이 정말로 이 글을 쓰고 싶었던 것 같지만, 확실하지는 않습니다.

#!/bin/bash
Scan_Output='Scan_output.txt'
curl "my piece of code" > "$ScanOutput"
Scan_Confirmation_Date=$(awk 'NR==7' "$Scan_Output")
printf "%s\n" "$Scan_Confirmation_Date"

관련 정보