タグ

Tipsとバッチファイルに関するnekorockのブックマーク (6)

  • バッチ引数、FOR引数の有無を判定する。 - Windows Script Programming

    よくあるのは、 IF "%1"=="" ECHO 引数なし または、 IF "%~1"=="" ECHO 引数なし ですが、 どちらも上手く行かないケースがあるので、 SET TEST=%1 IF NOT DEFINED TEST ECHO 引数なし がお勧めです。 環境変数の部分文字列の有無(空)の判定も同様です。 IF "%AAA:~3%"=="" ECHO 空 のような判定は危険です。 SETLOCAL ENABLEDELAYEDEXPANSION IF "!AAA:~3!"=="" ECHO 空 または、 SETLOCAL ENABLEDELAYEDEXPANSION SET TEST=!AAA:~3! IF NOT DEFINED TEST ECHO 空 なら安全です。

    バッチ引数、FOR引数の有無を判定する。 - Windows Script Programming
    nekorock
    nekorock 2011/01/12
    FOR関数のみではなく、引数の有無を判定する方法として参考になる。しかも、比較前に引数を引数に代入して使うのか。あと、左辺の値を""でくくるのをよく忘れるから注意。
  • コマンドの結果をファイルに保存する(標準出力と標準エラー出力)

    今回はコマンドプロンプト上のコマンドの結果をファイルに保存する方法についてです。バッチファイルを実行させるときや、何かの処理の結果を記録しておきたいときには必須のテクニックになりますので、きちんと理解して楽をしましょう。 コマンドプロンプトで何かコマンドを入力、実行したときに表示されるメッセージは、コマンドプロンプト上では見分けがつきませんが、実は以下の2種類に明確に分かれています。 標準出力 標準エラー出力 ちょっと具体的に見てみましょう。 上記のコマンドの結果を見てみてください。単純なdirコマンドはディレクトリの中身を表示しています(何もないですが)。dir hogeコマンドは、hogeというサブディレクトリが存在しないので「ファイルが見つかりません」と表示されています。 コマンドプロンプト上ではすべてコマンドの結果が表示されているだけにしか見えませんが、実はすでに標準出力と標準エラ

    コマンドの結果をファイルに保存する(標準出力と標準エラー出力)
  • fpcu.jp -  リソースおよび情報

    fpcu.jp は、あなたがお探しの情報の全ての最新かつ最適なソースです。一般トピックからここから検索できる内容は、fpcu.jpが全てとなります。あなたがお探しの内容が見つかることを願っています!

  • fpcu.jp -  リソースおよび情報

    fpcu.jp は、あなたがお探しの情報の全ての最新かつ最適なソースです。一般トピックからここから検索できる内容は、fpcu.jpが全てとなります。あなたがお探しの内容が見つかることを願っています!

  • Windowsバッチのかゆいところメモ - cloned.log

    Windowsバッチを久しぶりに書いたら、小学校の同級生の名前くらい思い出せなかったので、かゆいところをメモ。 実行コマンドを出力しない デフォルトでシェルの-x付けたときと同じような状態なので、抑制するときには次のようにする。 @ECHO OFF 変数の代入 SETを使う。次の例では「B」と表示される。%date%とかみたいな標準で使える環境変数も上書きできるので注意。 SET A=B ECHO %A% 変数の参照は「%変数名%」とする。あと、こんな感じで最後にセミコロンとかはつけないし、文字列をダブルクォートで括ったりしない。 エスケープシーケンス エスケープシーケンスは「%」。「%」を表示したい場合などでは「%%」とする。次の例では「%」と表示される。 ECHO %% コメントアウト REMを使う、もしくは「::」を使う。次の例はコメントアウトなので何も実行されない。 REM SET

    Windowsバッチのかゆいところメモ - cloned.log
  • @IT:Windows TIPS -- Tips:findstrで正規表現を検索する

    Windows OSで正規表現による文字列検索をしたい! メモやログといったテキストファイルから、いろいろなパターンで文字列を検索して目的の情報を見つけたい。そのようなときに便利なのが「正規表現」による文字列検索だ。固定の検索文字列に比べ、はるかに多様なパターンの文字列をずっと少ない記述で見つけ出せる。 UNIX/Linux環境に慣れているなら、解決策として「grep」コマンドや「egrep」コマンドが思い浮かぶのではないだろうか。しかし、Windows OSにはgrepは標準装備されていない。 その代わり、「findstr.exe」というコマンドラインコマンドを利用すると、正規表現を使った検索機能が利用できる。Tech TIPSでは、その使い方を説明したい。ただ制限もあるので、使用上の注意点の他、代替策も紹介する。 findstrコマンドの基的な使い方 findstrの基的な使い方

    @IT:Windows TIPS -- Tips:findstrで正規表現を検索する
  • 1