イラストAC フリー素材

2014年11月28日


dir > log.txt >&2 で log.txt は作成されない

どうも、最後のほうから解析されるようですが、かっこを使うと log.txt は作成されます。

(dir > log.txt) >&2

後者は当然何も表示されませんが、前者はコマンドプロンプトに表示されます

関連する記事

Windows のコマンドプロンプトで、標準エラー出力へ出力する


posted by at 2014-11-28 00:37 | Comment(0) | コマンドプロンプト | このブログの読者になる | 更新情報をチェックする

コマンドプロンプト : Sleep( ミリ秒 ) する

現在は、秒単位ならば、timeout 5 と言うようにコマンドが使用できます
標準の Windows でスリープする方法は以下のようになります
REM バッチファイル内でも直接でも可能です

echo Wscript.Sleep 5000 > %TEMP%\sleep.vbs & cscript.exe %TEMP%\sleep.vbs
5000 は、単位がミリ秒ですから、5秒です。

同時に二つのプロセスが、sleep.vbs を作る事があると問題ありますが、
通常は大丈夫でしょう。また、ファイルを削除したければ、del を追加します

また、このような方法を使うと、バッチファイル内に VBScript のコードを書いて、
実行する事が可能となります。
以下は、GUID を取得してユニークな文字列を作成します
@echo off

echo strGuid = CreateObject("Scriptlet.TypeLib").Guid > %TEMP%\guid.vbs
echo strGuid = Replace(strGuid,"{", "") >> %TEMP%\guid.vbs
echo strGuid = Replace(strGuid,"}", "") >> %TEMP%\guid.vbs
echo strGuid = Replace(strGuid,"-", "") >> %TEMP%\guid.vbs
echo Wscript.Echo strGuid >> %TEMP%\guid.vbs

cscript.exe //Nologo %TEMP%\guid.vbs




posted by at 2014-11-28 00:16 | Comment(0) | コマンドプロンプト | このブログの読者になる | 更新情報をチェックする

2013年12月11日


バッチファイル : IE8 でファイルをダウンロードして、ダウンロードしたディレクトリをエクスプローラで開く

この方法は、IE8 の時に検証した方法で、現在はダウンロードされたディレクトリがレジストリ内に無いようなので使用できません。ただ、バッチファイルでレジストリを参照する手法は使えると思います。

IE が最後にダウンロードで使用したディレクトリはレジストリ内にあるので、reg /query で該当場所を表示します。For コマンドで、プログラムの実行結果の標準出力を取り込めるので、ディレクトリ部分を取り出して変数にセットして、Explorer で実行します。

For のオプションとして、"skip=4 tokens=3 delims=	" を指定しています。delimsには、タブを指定しており、reg コマンドのデータの区切りがタブなので、3番目のトークンが目的の文字列です。そこで、tokens=3 となって、%%i にセットされます。該当行だけが必要なので、skip=4 となっています。

※ skip= は、実際の行数に対して指定します

Windows7 では、区切りがスペースに変わっており、他の仕様も微妙に変更されているので以下のようにする必要がありました

"skip=1 tokens=4 delims= "

※ delims= の右側はスペース1文字です。
-noframemerging は、存在する引数ですが何も指定しないと IE8 が終わってしまうので指定しています。iexplore.exe で、指定した URL からファイルをダウンロードして、ダウンロードしたディレクトリを開きます Microsoft ドキュメント Internet Explorer Command Line Options
@echo off
start /wait iexplore.exe -noframemerging http://lightbox.on.coocan.jp/download/WinOfSql102.lzh
FOR /F "skip=4 tokens=3 delims=	" %%i IN ('reg query "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer" /v "Download Directory"') DO (
	Explorer /e,%%i
)

関連する記事

IE11 でファイルをダウンロードしてその終了を待つく
2008/7/28 - Internet Explorer 8 と信頼性

※ For コマンドの詳細は、For /? で表示されます


posted by at 2013-12-11 03:15 | Comment(0) | バッチファイル | このブログの読者になる | 更新情報をチェックする
Seesaa の各ページの表示について
Seesaa の 記事がたまに全く表示されない場合があります。その場合は、設定> 詳細設定> ブログ設定 で 最新の情報に更新の『実行ボタン』で記事やアーカイブが最新にビルドされます。

Seesaa のページで、アーカイブとタグページは要注意です。タグページはコンテンツが全く無い状態になりますし、アーカイブページも歯抜けページはコンテンツが存在しないのにページが表示されてしまいます。

また、カテゴリページもそういう意味では完全ではありません。『カテゴリID-番号』というフォーマットで表示されるページですが、実際存在するより大きな番号でも表示されてしまいます。

※ インデックスページのみ、実際の記事数を超えたページを指定しても最後のページが表示されるようです

対処としては、このようなヘルプ的な情報を固定でページの最後に表示するようにするといいでしょう。具体的には、メインの記事コンテンツの下に『自由形式』を追加し、アーカイブとカテゴリページでのみ表示するように設定し、コンテンツを用意するといいと思います。


※ エキスパートモードで表示しています

アーカイブとカテゴリページはこのように簡単に設定できますが、タグページは HTML 設定を直接変更して、以下の『タグページでのみ表示される内容』の記述方法で設定する必要があります

<% if:page_name eq 'archive' -%>
アーカイブページでのみ表示される内容
<% /if %>

<% if:page_name eq 'category' -%>
カテゴリページでのみ表示される内容
<% /if %>

<% if:page_name eq 'tag' -%>
タグページでのみ表示される内容
<% /if %>
この記述は、以下の場所で使用します