トップページ > プログラム > 2014年07月04日 > VbWz3yHz

書き込み順位&時間帯一覧

31 位/223 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000002000002



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
【.cmd】 バッチファイルスクリプト %10 【.bat】

書き込みレス一覧

【.cmd】 バッチファイルスクリプト %10 【.bat】
642 :デフォルトの名無しさん[sage]:2014/07/04(金) 18:37:49.81 ID:VbWz3yHz
>>640
どんな風にユーザーからフォルダ名を貰おうとしてるの?
普通はパラメタで指定して貰うんだろうが、その時点で完璧な対処は無理となる
まあそこは目をつぶって一例を示すと(batの中にWSH(jscript)を埋め込んだ形だが)
(パラメタの途中に"がある、a^bとかはダメ、a^&bや"a&b"や"a^b"ならOK)
@if (0)==(0) echo off
set parms=
for /f %%i in ("%~1") do set parms=%%i
if not defined parms (cscript //nologo //e:jscript "%~f0">tmp.txt) else (
for /f %%i in ("%~1") do cscript //nologo //e:jscript "%~f0" %%i>tmp.txt
)
for /f %%i in (tmp.txt) do echo %%i
if errorlevel 2 echo フォルダが指定されていません&goto :eof
if errorlevel 1 echo 全角文字または^&^<^>%%^^が使用されています&goto :eof
goto :eof
@end
var folder="", rc=0, sh, oFolder, args=WScript.Arguments;
if(args.length<1) {
sh = new ActiveXObject("Shell.Application");
oFolder = sh.BrowseForFolder(0, "フォルダ選択",0);
if(oFolder==null) rc=2;
else folder=oFolder.Items().Item().Path;
} else { folder = args(0); }
if (rc==0) {if(/[^\x00-\x7f]|[&<>%\^]/.test(folder)) rc=1;}
sh = null;
WScript.Echo("フォルダ名:"+folder);
WScript.quit(rc)
【.cmd】 バッチファイルスクリプト %10 【.bat】
643 :デフォルトの名無しさん[sage]:2014/07/04(金) 18:53:46.73 ID:VbWz3yHz
訂正
for /f "tokens=*" %%i in ("%~1") do set parms=%%i
if not defined parms (cscript //nologo //e:jscript "%~f0">tmp.txt) else (
for /f "tokens=*" %%i in ("%~1") do cscript //nologo //e:jscript "%~f0" "%%i">tmp.txt
)
for /f "tokens=*" %%i in (tmp.txt) do echo %%i


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。