現在Youtubeに注力してますので是非チャンネル登録お願いします!

胡田昌彦のコンピューター系チャンネル

バッチファイルの中で%自体を使う方法

コマンドプロンプトテクニック
この記事は約2分で読めます。

バッチファイルの中で”%”を表現したかったら”%%”と書くと良いですよ。というお話です。

バッチファイル。今でもたまに書きますよね。先日ちょっとだけハマったポイントがあったのでご紹介です。

SharePointで発行しているRSSをファイルとして配置したいという状況があり、簡単にやっつけたかったのでwgetで取得するコードをバッチファイルに書きました。以下のような感じです。

C:\Program Files\GnuWin32\bin>wget –output-document=e:\rss\sprss.xml “http://
sharepoint/sites/_layouts/15/listfeed.aspx?List=%7BF71E0F55-986D-4
CC0-97DA-2037A6243AF2D”

wgetはunix系でよく使われる、コマンドラインでHTTPをお喋りしてリソースを取ってきてくれる便利コマンドです。

普通にコマンドプロンプトから実行したら成功するのに、バッチファイルから実行すると失敗してしまいました。調べてみると原因はURLに含まれている”%”でした。

バッチファイルの中では%というのは以下のように引数を表したりなど特殊な意味を持つのです。

なので、バッチファイルの中で「%」自体を表す表現方法を見つけないといけなかったのですが…なかなか見つかりませんでした。で、適当に「%%」と書いてみたらうまく動いちゃいました。他のプログラム言語等でもよくあるパターンなのでこれでよいのだろうと判断しています。

コメント

タイトルとURLをコピーしました