• 締切済み

BシェルのIF文について。。

BシェルのIF文について。。 現在、Bシェルで特定のファイルが存在する場合、ファイル名の末尾をカウントアップ(ファイル名_01)しようと考えております。 以下がスクリプトの内容なのですが fiが無効というエラーが出てしまいます。。。 対応が分かる方がいらっしゃれば教えてください。。 if [ -f aaa_00.txt] then touch aaa_001.txt fi よろしくお願いします。

みんなの回答

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

then の前で改行するならセミコロンは不要>#2. #1 でも言われるように, エラーメッセージを無理に翻訳したりせず「本当にそのまま」見せてください.

  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.2

#1さんの回答に加えて… 1行目の"]"の後にセミコロンが抜けていませんか? ifの書式は… if list; then list; [ elif list; then list; ] ... [ else list; ] fi です。 今回の場合、最初のlistに相当するのは"[ -f aaa_00.txt ]"です。 が、セミコロンが入っていません。

回答No.1

エラーメッセージをそのまま書き写していただくとわかりやすいですよ。質問文から推測しますと、一行目の aaa_00.txt と ] の間のスペースが抜けていませんか?

関連するQ&A