gnuplotフローティングコマンドでbashスクリプト変数を使用する

gnuplotフローティングコマンドでbashスクリプト変数を使用する

別のファイルに保存されたデータセットをプロットしたいと思います。

file.txt_100K
file.txt_200K
file.txt_300K

私は次のbashスクリプトを思いついた。

  1 #!/bin/bash
  2 
  3 filename=file.txt_
  4 
  5 gnuplot <<- EOF
  6     set term png
  7     set output "plot.png"
  8     plot '"$filename"100K' w lp,\
  9                 '"$filename"200K' w lp,\
 10                 '"$filename"300K' w lp
 11 EOF

スクリプトを実行した後の出力は次のとおりです。

         line 0: warning: Cannot find or open file ""file.txt_"100K"
     line 0: warning: Cannot find or open file ""file.txt_"200K"
     line 0: warning: Cannot find or open file ""file.txt_"300K"
     line 0: No data in plot

私のBashスクリプトの8行、9行、10行目で以下が発生すると予想しています。

'"$filename"100K' == 'file.txt_100K'
'"$filename"200K' == 'file.txt_200K'
'"$filename"300K' == 'file.txt_300K'

上記の目的の結果を得るには、8、9、10行をどのように変更する必要がありますか?よろしくお願いします。

答え1

マンページからbashここのドキュメントただ

パラメータ拡張、コマンド置換、算術拡張、

したがって、引用符は削除されません。これらの行を使用してください

plot '${filename}100K' w lp,\

関連情報