0

次のようなファイル名形式で変数を作成するにはどうすればよいですか:FileNameパターン:SnapshotIR__somenumber.csv

私は次のようなものを試しました:

TODAY=$(date +"%m%d%Y")    
SNAPSHOT = $(SnapshotIR$TODAY*.csv)

次のようなエラーが発生します:

test.sh: line 2: SnapshotIR02122013_2239.csv: command not found
test.sh: line 2: SNAPSHOT: command not found

だから、もし一緒に使いたいとき

if [ -f SnapshotIR$TODAY*.csv]  -> works 
if [ -f ${SNAPSHOT} ]           -> does not work (I get the above error)
4

1 に答える 1

0
SNAPSHOT=SnapshotIR${TODAY}\*.csv

$(.....) を指定すると、中かっこ内でコマンドを実行するシェルが表示されます。ファイル名を形成しているだけだと思います。

スペースも削除します。

SNAPSHOT<space>=<space>

また、ワイルドカード「*」を追加したいのですが、-f フラグでは機能しません。

for file in $SNAPSHOT
do
        if [ -f "$file" ]
        then
                FOUND="$file"
                break
        fi
done
于 2013-02-12T09:21:30.873 に答える