2004-03-01から1ヶ月間の記事一覧

【続】日付け時刻を得る

CMD

先日、日付け時刻について、 まあ、date と書いた。 news:alt.msdos.batch.nt とかを最近読み書きしだしたのだが、そこに年月日の順序に依存しない日付け取得スクリプトが載っていた。ただし、date 構文解析めいたことをしない巧妙なやり方でそんなに複雑で…

「ザ・ホワイトハウス2」が終わりましたが

TV

20日、ザ・ホワイトハウス(The West Wing)が最終回でした。 NHKの公式サイトに、「ついに今シリーズ最大の見せ場である最終回です。全米で大絶賛されたエピソードです。」とあった通りの出来だったと思います。アメリカでは第5シーズンまでやってるので、引…

「彼女が死んじゃった」が終わりましたが

TV

TVドラマの話は多分初めてか。「彼女が死んじゃった」が昨日最終回でした。 2,3回目の頃、あるところで、「面白いかどうかわからないけど、大化けしそうで見続けるのを止められない」と評したんだけど、最終回まで見ても、他人に「面白い」と薦めていいもの…

日付時刻を得る

CMD

日付や時刻の入ったファイル名・フォルダ名を作るために、日付・時刻を BAT スクリプトで得たいという話が良くある。掲示板では、 for /f "tokens=1-3 delims=/ " %%A in ('date/t') do set YMD=%%A%%B%%C と答えたりするわけだが、これはWin2000やWinXPでも…

パラメータ区切り文字の謎

CMD

ビルトインコマンドの多く( echo は違うようだが)で、パラメータの区切りに、空白の他、, ; = が使える。コマンド処理の時点で空白になっているようだ。 例えば、 dir a.txt;b.txt,c.txt も可能だし、 for=%I=in=(A;B=C),do=@echo %I では、A B C が1行ずつ…

【続々々々】ディレクトリかどうかの判断〜whichコマンドの改訂版

CMD

以前の記事において、 昨日の記事に対し、 私は、dir "対象" /a:d してみて errorlevel を見ます。 NUL に頼るより確実では? というコメントを頂いた。ただ、if existで一気にチェックできるコンパクトさは捨てがたい。ということで、もう少しあがいてみま…

【続々々】tailコマンドの作成

CMD

続き。tail コマンドの完成版。+ オプションもつけたが、単に more の機能を使っているだけ。 @echo off setlocal set MORE= if not defined LINE set LINE=20 set "OPT=%~1" if not defined OPT goto pipe if "%OPT:~0,1%"=="/" echo>&2 コマンドの構文が誤…

call命令のオーバーヘッド〜添え字付き環境変数へのセット

CMD

前回書いた環境変数へセットする方式の tail コマンドでは、添え字付き環境変数へのセットで、call 命令を使う。前回書いたような eval 的な call の使い方と、実際にサブルーチンコールする場合とでの処理時間を念のため計ってみた。 for /l %%I in (1,1,10…

【続々】tailコマンドの作成

CMD

前回書いた2つの方法で書いた tail コマンドの基幹部分を示す。 (1) 中間ファイル方式 set I=-%LINE% set J=0 for /f "delims=" %%A in ('more %1') do ( set /a J+=1, I+=1 echo.%%A>%TEMPFILE% call set /p SAVE%%J%%=< %TEMPFILE% call set "SAVE%%I%%=" …