テーマ:バッチファイル

Windows の Java 実行環境で jjs.exeの場所を探して起動

WindowsにJavaの実行環境をインストールするとPATHにJava.exeが設定される。 しかし、jjs.exe はPATHに設定されない。そこで、自動的にjjs.exeの場所を探して実行するバッチファイルを作成した。 ファイル名: run_jjs.bat @echo off  setlocal&…
トラックバック:0
コメント:0

続きを読むread more

バッチでファイルサイズを計算(応用編2:フォルダサイズ一覧)

フォルダの中にあるファイルサイズの合計(以後フォルダサイズ)は、エクスプローラでプロパティを指定すれば、簡単に知ることができる。しかし、フォルダサイズを知りたい場合は、複数のフォルダの中で、どのフォルダのサイズが1番大きいのか知りたい場合が多い。 このような場合、サイズ付きのフォルダ一覧を表示したい。 下記のような構造のフォルダがあっ…
トラックバック:0
コメント:0

続きを読むread more

バッチでファイルサイズを計算(基礎編)

Windowsのコマンドラインでファイルのサイズを知りたいときは FOR文を使って次のようにする。 @FOR %I in ( < ファイル名> ) do @echo %~zI たとえば、”The Look.wma”のファイルサイズを調べた結果は、こんな感じ: 3854282 バイトのファイルであることがわか…
トラックバック:0
コメント:0

続きを読むread more

バッチファイルでリアルなタイムスタンプ(ISO8601)

環境変数にDATEおよびTIMEというのがあるのでバッチファイルでタイムスタンプを表示したいときはコマンドラインで次のように入力すれば表示できる。 echo %DATE% %TIME% 表示結果: 2017/02/12 13:14:29.79 そこで、次のようなバッチファイルを作る。 @echo off …
トラックバック:0
コメント:0

続きを読むread more

バッチファイルのsetlocalとendlocal

今さら誰も気にしないと思うが、バッチファイルでは、環境変数のローカル化するsetlocalというコマンドがある。setlocal と endlocalの間で変更した環境変数は、ローカルな環境変数になる。たとえば、次のようなバッチファイルを書いて1.batとかいう名前で保存する。 @echo off set abc=1 …
トラックバック:0
コメント:0

続きを読むread more

バッチファイルとシェルスクリプトの内部サブルーチン

前回に引き続き、バッチファイルとシェルスクリプトの話。今回はサブルーチンについて。 バッチにしろシェルにしろ、やっつけ仕事なのだから、サブルーチンを作らない人は多いようだ。 しかし、そのつもりはなくても、スクリプトファイルが巨大化してしまったら、やっぱり、サブルーチンが使いたい。 ついでにローカル変数も使いたい。例によって、表にし…
トラックバック:0
コメント:0

続きを読むread more

シェルスクリプトとバッチファイルのecho

echo は、わりとよく使うし、単純なコマンドだが、人の書いたバッチファイルやスクリプトファイルを読むと、間違った使い方をしているのをよく見かける。自分自身も忘れる。だから、表にしてみた。 用途 Windowsバッチ(CMD) UNIXシェル(bash) …
トラックバック:0
コメント:0

続きを読むread more

バッチファイルでカウンターファイルを作る

ときどきバッチファイルの中で数字をカウントしてその値をファイルに保存したいことがある。たとえば、コマンドを実行した回数をファイルに保存したいとか。 作ってみた。こんな感じ: @echo off setlocal enableDelayedexpansion set var_name=%1 se…
トラックバック:0
コメント:0

続きを読むread more

SkyDriveが急にファイル名に使用できない文字があるエラーになった

ずっと前から、SkyDriveでInternet Explorerの「お気に入り」を同期している。しかし、2012年7月未明から、Windowsの起動時にSkyDrive下記のメッセージが表示されるようになった。 このファイル名に使用できない文字が含まれています 詳細を表示すると、下記のようなメッセージボックスが表示された。…
トラックバック:0
コメント:0

続きを読むread more

emacsでバッチファイルの編集にbat-modeを使う

そういえば、emacsでバッチファイルを使うbat-modeのようなものはないのだろうか? そう思って、調べたら、あった。 DOS batch file mode for Emacs | Free Development software downloads at SourceForge.net さっそく、dosbat-0-0-1…
トラックバック:0
コメント:0

続きを読むread more

今日の日付をクリップボードにコピーする(2)

前回のように「2012/05/23」ではなく、「12/05/23」と表示したい場合は次のようにする。 echo %DATE:~2,8% | Clip 「%DATE:~2,8%」は「2012/05/23」の文字列の先頭の3文字目から8文字だけ取り出すという意味になる。 「2012年05月23日」と表示したい場合は次のようにす…
トラックバック:0
コメント:0

続きを読むread more

今日の日付をクリップボードにコピーする(1)

Windows には DATEという環境変数がある。たとえば、コマンドプロンプトで次のように入力すると、今日の日付が表示される。 echo %DATE% 出力はこんな感じ: 2012/05/22 具体的にはこんな感じ: Windows 7/Vista以降(あるいは Windows Server 2003以降…
トラックバック:1
コメント:0

続きを読むread more

Win32でXLSperlでバッチファイルからExcelファイルをつまみ食い

XLSperlはMicrosoft Excelファイルに対応のPerlである。『ミニマルperl』とか好きな人は、XLSファイルに対してワンライナーが書けるといえば、ピンとくるでしょう。 ただし、Excel 2007 のxlsxには対応していない。 たとえば、test.xls をタブ区切りのテキストファイルに変換したいときはコマンド…
トラックバック:0
コメント:0

続きを読むread more

バッチファイルからVBScriptをつまみ食いする

問題点: バッチファイルは簡単に書けるが低機能である。そこで、バッチファイルから、VBScriptを呼び出して機能を補完する記事をよく見かける。しかし、そのたびに、小さなスクリプトファイルを作ると最終的に小さなスクリプトファイルの山になる。これはスクリプトの整理に困るし、ディスクの無駄である。それならば、VBScriptの機能を簡単に…
トラックバック:0
コメント:0

続きを読むread more

ウェブリブログを自力でアクセス解析(4)~複数日分のデータをデータベースファイル化~

1日分のログが入ったHTMLファイルをTSVに変換して統計を取ったところで、わかることは少ない。 そこで、日々のデータをMicrosoft Access用のファイルに出力することにした。 結果的に過去に書いたVBScriptよるデータベース操作用のスクリプトとHTMLファイルを解析してタブ区切りテキストにするPerlスクリプトをバッ…
トラックバック:0
コメント:0

続きを読むread more

バッチファイル内での文字列の操作

バッチファイル内での文字列の操作 Windows Vista になっても相変わらずバッチファイルを書いてしまう。 そして、滅多に書かないので細かい文法を忘れてしまう。 忘れたときはヘルプを読めばいいのだけれど、なかなか難解な説明で、すぐに思い出せいない。 だから、ここでメモ。 文字列の置換 環境変数に文字列が設定されてい…
トラックバック:0
コメント:0

続きを読むread more

CGIが実行できるようにFTPサーバー上のファイルの属性を自動的に変更する

むかし、むかし、インターネット・サービス・プロバイダー(NTT OCNとか、DIONとか、@NiftyとかBiglobeとかのことね。以降ISP)でCGIなんかを作るとき、ファイル属性の変更はTelnetでやっていた。しかし、今となってはtelnetはセキュリティ上、危険すぎるのでほとんどの場合は使えない。 @Niftyの@Homep…
トラックバック:0
コメント:2

続きを読むread more

続・Windows で UNIX の which みたいなこと

真面目に、MSDNを読んでみたら PATHEXTという環境変数があることに気が付いた。 PATHEXTに拡張子を登録すると、ベースネームだけを入れればプログラムが実行される。 たとえば、telnet とたたけば、telnet.exe とたたかなくてもtelnetが実行される。 それは、.exe が PATHEXTに設定されているか…
トラックバック:0
コメント:0

続きを読むread more

Windows で UNIX の which みたいなこと

UNIX には which というコマンドがある。     which man とかやると、"/usr/bin/man" とか、man コマンドのフルパスが表示される。 長らくWindows には、この手のコマンドはないものと思っていた。 しかし、MSDNで「バッチ パラメータを使用す…
トラックバック:0
コメント:0

続きを読むread more