gnuplot, 여기에 있는 문서 및 명령줄 인수

gnuplot, 여기에 있는 문서 및 명령줄 인수

여기 문서를 사용하여 gnuplot 스크립트를 gnuplot에 전달하고 명령줄 인수를 gnuplot에 전달할 수 있습니까?

내 bash 파일에는 보통 다음과 같이 작성합니다.

#!/bin/bash
#set up code in here...
gnuplot -c script.gp $first $second

하지만 나는 모든 것을 bash 파일에 넣고 싶었기 때문에 그렇게 했습니다.

#!/bin/bash
#set up code in here...
gnuplot -c <<- EOF
do for [j=0:ARG1] {
   do for [i=4:ARG2] {
      plot '${data}' index j using 2:i with lp
   }
}
EOF $first $second

warning: here-document at line 87 delimited by end-of-file (wanted하지만 악명 높은 EOF')`` 오류가 발생했습니다 . $data, $first및 는 $second이전에 bash 스크립트에 정의되어 있습니다.

EOF에 관계없이 다음 줄에 명령줄 인수를 넣으면 값 관련 명령을 찾을 수 없음 오류가 발생합니다 $first.

여기 내 문서에서는 탭 들여쓰기만 사용합니다. 뒤에 공백이 없습니다.

답변1

해결책은 다음과 같습니다. 매개변수를 제거하고 수동으로 교체합니다.

#!/bin/bash
#set up code in here...
gnuplot <<- EOF
do for [j=0:${first}] {
   do for [i=4:${second}] {
      plot '${data}' index j using 2:i with lp
   }
}
EOF

답변2

다음과 같이 시도해 볼 수 있습니다.

gnuplot -c /dev/stdin "$first" "$second" <<-EOF
do for [j=0:ARG1] {
   do for [i=4:ARG2] {
      plot '${data}' index j using 2:i with lp
   }
}
EOF

Gnuplot이 불평합니다.

line 4: No previous filename

하지만 스크립트 파일을 사용할 때 동일한 오류가 발생하므로 이는 불완전한 코드와 관련이 있을 수 있습니다.

관련 정보