파일에서 n번째 줄을 읽고 구분 기호를 기준으로 배열로 분할해 봅니다.
HEAD_START=4
IFS='|' read -r -a headers < sed "${HEAD_START}q;d" "/FILE_UPLOADS/Checklist-Relationship (4).txt"
위에 주어진"sed: cannot open [No such file or directory]"
하지만 sed "${HEAD_START}q;d" "/FILE_UPLOADS/Checklist-Relationship (4).txt"
프롬프트에서 실행하면 잘 작동합니다.
답변1
read -r -a headers < sed ...
"읽기"라는 파일 을 열려고 합니다 sed
.
Bash에서 sed
명령으로 실행하고 표준 입력 스트림에서 출력을 사용할 수 있도록 하려면 다음을 사용할 수 있습니다.프로세스 교체:
IFS='|' read -r -a headers < <(sed "${HEAD_START}q;d" "/FILE_UPLOADS/Checklist-Relationship (4).txt")
답변2
파일이 너무 크지 않으면 sed를 건너뜁니다.
mapfile -t lines < filename
IFS='|' read -ra headers <<< "${lines[HEAD_START - 1]}"