0

私が使用するこのプログラムには、実行時に設定する独自の変数があるため、それらの変数を設定し、出力をgrepしてから変数内に保存します。ただし、これを正しい方法で行う方法がわかりません。私が持っているアイデアは機能しません。焦点は 7 行目から 14 行目です。

1  #!/usr/local/bin/bash
2  source /home/gempak/NAWIPS/Gemenviron.profile
3  FILENAME="$(date -u '+%Y%m%d')_sao.gem"
4  SFFILE="$GEMDATA/surface/$FILENAME"
5  echo -n "Enter the station ID: "
6  read -e STATION
7  OUTPUT=$(sflist << EOF
8  SFFILE = $SFFILE
9  AREA = @$STATION
10 DATTIM = all
11 SFPARM = TMPF;DWPF
12 run
13 exit
14 EOF)
15 echo $OUTPUT

しかし、私はこれを取得します:

./listweather: line 7: unexpected EOF while looking for matching `)'
./listweather: line 16: syntax error: unexpected end of file
4

3 に答える 3

0

sflist に対話が必要な場合は、次のようにします。

SFFILE=$(
  ( echo SFFILE = "$SFFILE"
    echo AREA = "@$STATION"
    echo DATTIM = all
    echo SFPARM = TMPF;DWPF
    echo run
    cat
  ) | sflist)

残念ながら、exitインタラクションの一部として入力する必要があります。

于 2009-05-21T09:35:33.287 に答える