イラストAC フリー素材

2010年07月07日


ファイルのダンプ( vdump )

ブラウザでダウンロード
VBScript だけで作ったファイルの16進数ダンプツールです。
※ wscript 経由で実行はできないようにしてあります
          0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F
--------------------------------------------------------------------------
00000000 50 4B 03 04 14 00 00 00 08 00 37 03 E7 3C 9C 49  PK........7.・廬
00000010 75 ED 1C 02 00 00 AF 05 00 00 0A 00 00 00 72 65  u.....ッ.......re
00000020 61 64 6D 65 2E 74 78 74 B5 54 41 6B 13 41 14 BE  adme.txtオTAk.A.セ
00000030 2F EC 7F 18 7A B2 39 08 F5 E0 51 DC E4 20 C5 A0  /...zイ9..濂ワ・ナ.
00000040 50 41 0B 29 15 43 6B 0C 58 13 9B 6D 2C E8 C1 F9  PA.).Ck.X.嬶,霖.
00000050 9E 87 A6 C9 6E D2 6C E2 7A 10 A9 45 2A 55 8A 68  梏ヲノnメl窘.ゥE*U撹
00000060 A9 21 DA 8A 94 46 4D C8 5E F4 22 E8 C1 83 1E 5A  ゥ!レ株FMネ^."霖・Z
00000070 2A 6C FF 81 33 9B C6 ED A1 ED 65 D3 B9 0C 33 F3  *l.・嵌.。.eモケ.3.
00000080 E6 7B DF 7C F3 BD 17 0A 30 54 25 C4 2E 87 2F 45  諚゚|.ス..0T%ト../E
00000090 26 93 69 9D A1 C1 48 A7 B3 14 A1 3C DA 6C 6C 6A  &妬擅チHァウ.。<レllj
000000A0 22 2D 8E 03 0C 55 51 95 AC 84 61 7D 3E 2E A5 69  "-・.UQ噴・}>.・i
000000B0 B8 4F A4 E2 9A BF 37 70 BA 94 2C 55 E8 2A 59 94  クO、笞ソ7pコ・U・Y
000000C0 AD 8E 98 8B 70 8D 0C 16 F0 13 35 1E 96 20 41 69  発侍却・...5.・Ai
000000D0 84 58 F5 BC 9D C5 97 6E 46 16 14 70 A0 9F 79 0F  Ч.シ敘溶F..p.毓.
000000E0 3B 19 BF A6 AB CA 29 B1 8A 67 BC B5 98 7B 41 57  ;.ソヲォハ)ア拡シオ・AW
000000F0 90 B4 68 98 12 3C 46 F9 A0 68 78 8D B6 B5 8B 0D  清h・<F..hx左オ・
          0  1  2  3  4  5  6  7  8  9  A  B  C  D  E  F
--------------------------------------------------------------------------
00000100 B4 FF 0B EE 5A AF F0 96 AE 53 98 0A 74 81 12 34  エ...Zッ.粍S・t・4
00000110 6B FD 42 B3 3C 25 24 DF E4 1A DE 8B C8 BD 33 55  k.Bウ<%$゚・゙曲ス3U
00000120 91 A7 68 CA 4F 83 5B 6E 61 15 9B B9 77 58 C1 02  息hハOゼna.峪wXチ.
00000130 0F CF 6C 57 5A D6 20 9A 70 B8 76 25 79 6B 2C 75  .マlWZヨ 嗔クv%yk,u
00000140 27 C3 BA F7 3A B7 0E CE 4D 43 94 E1 31 1F A9 27  'テコ.:キ.ホMC批1.ゥ'

************************************************************
* VBSCript で ファイルの dump
************************************************************

vdump "ファイルのパス" で、ファイルの16進数ダンプ表示を行います。


************************************************************
* 必要なファイル 
************************************************************
1) vdump.bat
2) vbsdump.vbs

************************************************************
* インストール
************************************************************
この二つのファイルを同じディレクトリ内に置いて、そのディレク
トリにパスを通して下さい。一般的には、Windows ディレクトリに
この二つのファイルをコピーして下さい

************************************************************
* アンインストール
************************************************************
この二つのファイルを削除して下さい

************************************************************
* その他
************************************************************
大きなファイルは vdump "ファイルのパス" | more とするか、
vdump "ファイルのパス" > dump.txt として、dump.txt をテキスト
エディタで表示して下さい。vdump "ファイルのパス" | more 実行時
の強制終了は、q キー です


■ 著作権その他

このプログラムはフリーです。どうぞ自由に御使用ください。
著作権は作者である私(lightbox)が保有しています。
また、本ソフトを運用した結果については、作者は一切責任を
負えせんのでご了承ください。



posted by at 2010-07-07 00:44 | Comment(0) | 拡張コマンド | このブログの読者になる | 更新情報をチェックする

2010年07月09日


更新されたファイルのみを一括でバックアップする為のコピーコマンド( bakcopy.bat )

bak コピー元ディレクトリ コピー先ディレクトリ
※ xcopy で新しいファイルのみをコピーします
※ コピー先ディレクトリは存在しない場合は作成されます

for 構文は引数の無い場合のチェックをしているだけで、
エラーが出ない事が解っている場合は必要ありません
bakcopy.bat
@echo off
for /F "tokens=1" %%i in ('echo %1') do (
	if "%%i"=="ECHO" (
		goto error1
	)
)
for /F "tokens=1" %%i in ('echo %2') do (
	if "%%i"=="ECHO" (
		goto error2
	)
)
xcopy.exe %1 %2 /D /E /C /S /Y /I
goto end 


:error1
echo bak コピー元ディレクトリ コピー先ディレクトリ
echo 引数1は、コピー元ディレクトリです
goto end

:error2
echo bak コピー元ディレクトリ コピー先ディレクトリ
echo 引数2は、コピー先ディレクトリです
goto end

:end 



posted by at 2010-07-09 10:56 | Comment(0) | 拡張コマンド | このブログの読者になる | 更新情報をチェックする

2010年07月21日


ファイルの分割と結合



ブラウザでダウンロード
比較的ファイルサイズが小さいので

コマンドプロンプトベースのアプリケーションは、必ずしもディスク内に置いておく必要もありません。必要な時にダウンロードして実行すれば良いわけで、また、そのファイルがたとえ書庫であっても、解凍用のコマンドラインプログラムも同時にダウンロードしてしまえば良いわけです。

そのような一連の作業を全て記述したスクリプトを使って、拡張コマンドとして利用すれば、コマンドプロンプトは結構な拡張領域を持った便利なツールになると思います。

ただ、問題が一つ。

いいアプリケーションはたくさんあるのですが、何故か「再配布」に条件を付けるフリーソフトが多く、ややこしくなるのでそういう場合は直接配布先からダウンロードして実行せざるを得ません。公開せずに自分だけ使うという運用ならば、自分のサイトからコピーをダウンロードして使うのですけれど。

この split.exe は、再配布に条件が付いていますし、かなり古いソフトなので直接ダウンロードしています。最悪、配布先が閉じてしまったら使えなくなりますので注意して下さい。

結合について

コマンドプロンプト上では常識ですが、COPY コマンドで結合する事ができます。
COPY /B ファイル1 + ファイル2 + ファイル3 結合結果ファイル という書式で結合されます。Windows のヘルプを読むと、/B の影響について書かれていますが、要するに一度だけ指定するといいです。

また、split.exe が作成する分割ファイルは、7-Zip のエクスプーラから実行する「解凍」で結合する事ができます。元のファイルが解凍可能な書庫であれば、同時に解凍された内容が展開されます。7-Zip では、zip や 7z の圧縮に加えて
たいていの書庫も解凍ができます。lzh はセキュリティの問題でなくなるかもしれないので、最近は 7-Zip で zip 書庫を作っていますが、エクスプローラのメニューから行う操作はとても使い勝手が良いです。
<JOB>
<COMMENT>
************************************************************
■著作権その他

■ 使用方法 cscript.exe lsplit.wsf ファイルパス 分割サイズ

	分割サイズ : 数値のみは K、最後にM を付けると
		     メガバイト

	卓人氏の配布している split.exe をダウンロードして
	ファイル分割を行います
	( http://www.geocities.jp/web_takuto/ )

このプログラムはフリーです。どうぞ自由に御使用ください。
著作権は作者である私(lightbox)が保有しています。
また、本ソフトを運用した結果については、作者は一切責任を
負えせんのでご了承ください。
************************************************************
</COMMENT>

<OBJECT id="Fso" progid="Scripting.FileSystemObject" /> 
<OBJECT id="WshShell" progid="WScript.Shell" /> 

<SCRIPT language="VBScript"
	src="http://homepage2.nifty.com/lightbox/laylaClass.vbs">
</SCRIPT>

<SCRIPT language=VBScript>
Call laylaFunctionTarget( "http://homepage2.nifty.com/lightbox/" )
Call laylaLoadFunction( "baseFunction.vbs" )
Call laylaLoadFunction( "toolFunction.vbs" )

Crun

Dim strFile : strFile = "split.exe"
Dim strSize : strSize = "1M"
if Wscript.Arguments.Length = 0 then
	Wscript.Echo "分割するファィルを指定して下さい"
	Wscript.Quit
end if
if Wscript.Arguments.Length = 1 then
	Wscript.Echo "分割サイズは " & strSize & " に設定されました"
else
	strSize = Wscript.Arguments(1)
	if Right( strSize, 1 ) = "M" then
		Wscript.Echo "分割サイズは " & strSize & " に設定されました"
	else
		Wscript.Echo "分割サイズは " & strSize & "K に設定されました"
	end if
end if

if Not Fso.FileExists( TempDir & "\split\" & strFile ) then

	strDownloadPlace = "http://www.geocities.jp/web_takuto/soft/split_12.lzh"
	ret = HTTPDownload( strDownloadPlace, TempDir & "\split.lzh" )
	if not ret then
		Wscript.Echo ErrorMessage
		Wscript.Quit
	end if
	Wscript.Echo strDownloadPlace & " をダウンロードしました"

	strDownloadPlace = "http://homepage2.nifty.com/lightbox/Lhasa.exe"
	ret = HTTPDownload( strDownloadPlace, TempDir & "\Lhasa.exe" )
	if not ret then
		Wscript.Echo ErrorMessage
		Wscript.Quit
	end if
	Wscript.Echo strDownloadPlace & " をダウンロードしました"

	strCommand = Dd( TempDir & "\Lhasa.exe" ) & " -d- -a -q -f -e- " & Dd(TempDir & "\split.lzh")
	Call WshShell.Run( strCommand, 0, True )

else
	Wscript.Echo "既に split.exe はダウンロード済です"
end if

Dim strCommand : strCommand = _
	Dd(TempDir & "\split\" & strFile) & _
	" /Y /" & strSize & " " & _
	Dd(Wscript.Arguments(0))

Call WshShell.Run( strCommand, 0, True )
Wscript.Echo "分割が終了しました"

</SCRIPT>

</JOB>





posted by at 2010-07-21 23:23 | Comment(0) | 拡張コマンド | このブログの読者になる | 更新情報をチェックする

2017年05月04日


PATH 環境変数の内容をパス毎に改行して表示する pathx.bat ファイルの内容

内容は、cmd.exe /c と echo を使用して %temp% ディレクトリに VBScript のファイルを作成して実行しています。前半はシステム環境変数の PATH で、後半は ユーザ環境変数の PATH です。

以下の内容を pathx.bat の中に書き込んで作成し、windows ディレクトリの中にコピーします。そしてコマンドプロンプトから pathx とすると、登録されたパス毎に改行して表示されます。
@echo off
cmd /c echo Set ws=WScript.CreateObject("WScript.Shell"):Set wv=ws.Environment("SYSTEM"):pt=wv("PATH"):ad=Split(pt,";"):For I=0 To Ubound(ad):Wscript.echo ws.ExpandEnvironmentStrings(ad(I)):Next>%temp%\_.vbs&cscript.exe /NOLOGO %temp%\_.vbs
echo;
cmd /c echo Set ws=WScript.CreateObject("WScript.Shell"):Set wv=ws.Environment("USER"):pt=wv("PATH"):ad=Split(pt,";"):For I=0 To Ubound(ad):Wscript.echo ws.ExpandEnvironmentStrings(ad(I)):Next>%temp%\_.vbs&cscript.exe /NOLOGO %temp%\_.vbs






posted by at 2017-05-04 01:33 | Comment(0) | 拡張コマンド | このブログの読者になる | 更新情報をチェックする

管理者権限のコマンドプロンプトを開くバッチファイル

テストとして admin.bat として、windows ディレクトリにコピーしました。ファイル名を指定して実行からでもいいし、通常のコマンドプロンプトから実行してもかまいません。
@echo off
cmd "/c echo set o=CreateObject("Shell.Application"):o.ShellExecute "cmd","/k cd %USERPROFILE%","","runas",1 > %TEMP%\_.vbs & wscript.exe %TEMP%\_.vbs"
echo を使用して、VBScript のコードをファイルに書き込んで、そのコードを wscript.exe で実行して、結果的に管理者権限を持ったコマンドプロンプトを開きます。

※ 開いた時、USERPROFILE 環境変数の示す場所に CD しています。



posted by at 2017-05-04 01:52 | 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 %>
この記述は、以下の場所で使用します