拡張子が .cmd または .bat のバッチファイルのスクリプティング(プログラミング)に関わる
質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです。
※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう。
前スレ
【.cmd】 バッチファイルスクリプト %11 【.bat】©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1424858999/
それ以前の過去スレ
%10 http://peace.2ch.net/test/read.cgi/tech/1374205515/
%9 http://toro.2ch.net/test/read.cgi/tech/1335015478/
%8 http://toro.2ch.net/test/read.cgi/tech/1315844420/
%7 http://hibari.2ch.net/test/read.cgi/tech/1298873550/
%6 http://hibari.2ch.net/test/read.cgi/tech/1277465356/
%5 http://pc12.2ch.net/test/read.cgi/tech/1242268171/
%4 http://pc12.2ch.net/test/read.cgi/tech/1229955189/
%3 http://pc11.2ch.net/test/read.cgi/tech/1217860043/
%2 http://pc12.2ch.net/test/read.cgi/tech/1197881068/
%1 http://pc11.2ch.net/test/read.cgi/tech/1178281991/
【.cmd】 バッチファイルスクリプト %12 【.bat】©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2017/03/11(土) 13:47:11.66ID:2LSSeyH1
264デフォルトの名無しさん
2017/11/06(月) 19:12:27.47ID:Mdq5cGE3 echo,とか、echo;とかで
265デフォルトの名無しさん
2017/11/06(月) 23:15:25.56ID:RrRem/45 バッチファイルに渡された引数が1つなのか2つなのかを判定したいのですが
どのように記述すれば良いのでしょうか?
以下ではダメでした。
if defined %2 echo 引数は2つです else echo 引数は1つです
どのように記述すれば良いのでしょうか?
以下ではダメでした。
if defined %2 echo 引数は2つです else echo 引数は1つです
266デフォルトの名無しさん
2017/11/07(火) 01:14:40.14ID:xsgE2wk0 if not '%2=='
267デフォルトの名無しさん
2017/11/07(火) 07:09:27.79ID:4pg/kk0r >>264 ありがとう
for /f "delims=" %%i in (001.txt) do (
set "a=%%i"
setlocal enabledelayedexpansion
set "a=!a:"=!"
echo.!a!>>002.txt
endlocal
)
これで空行以外は完璧かな?
for /f "delims=" %%i in (001.txt) do (
set "a=%%i"
setlocal enabledelayedexpansion
set "a=!a:"=!"
echo.!a!>>002.txt
endlocal
)
これで空行以外は完璧かな?
268デフォルトの名無しさん
2017/11/07(火) 10:05:04.55ID:1287flJj >>262の奴で
"echo "を"echo."にするとダメなのに"echo,"にするとOKなのは何故なんだぜ?
今まで、ピリオドとカンマ、セミコロンに違いがあるとは思ってなかったから
ずっとピリオド使ってたのに
"echo "を"echo."にするとダメなのに"echo,"にするとOKなのは何故なんだぜ?
今まで、ピリオドとカンマ、セミコロンに違いがあるとは思ってなかったから
ずっとピリオド使ってたのに
269デフォルトの名無しさん
2017/11/07(火) 22:51:26.28ID:4pg/kk0r270デフォルトの名無しさん
2017/11/08(水) 00:22:28.07ID:X1Aytah6 for /f delims^=^ eol^=
272デフォルトの名無しさん
2017/11/08(水) 19:40:30.74ID:VTzaN0jn >>268
「,」「;」「=」は特別区切り文字だから。
例えば、C:\直下に「a」ってフォルダ作って
「b.cmd」
for /f %%a in ('echo,b') do echo,%%a
「b b.cmd」
echo;c %1
pause
のバッチ作成して、コマンドプロンプトで「C:\a」に移動してから
「b.cmd」を実行すると、()の中の「,」が消えた状態で表示される
「b b.cmd」を実行すると、「b.cmd」が実行される
「"b b.cmd"」を実行すると、「b b.cmd」が実行される
今度はファイル名を指定して実行で
cmd /c "C:\a\b b.cmd"
cmd /c "C:\a\b b.cmd" dを実行すると、pauseで止まるけど
cmd /c "C:\a\b b.cmd" "d"を実行すると、一瞬で終わる
cmd /c,"C:\a\b b.cmd" "d"なら動く
結構知られていないんだよね。
「,」「;」「=」は特別区切り文字だから。
例えば、C:\直下に「a」ってフォルダ作って
「b.cmd」
for /f %%a in ('echo,b') do echo,%%a
「b b.cmd」
echo;c %1
pause
のバッチ作成して、コマンドプロンプトで「C:\a」に移動してから
「b.cmd」を実行すると、()の中の「,」が消えた状態で表示される
「b b.cmd」を実行すると、「b.cmd」が実行される
「"b b.cmd"」を実行すると、「b b.cmd」が実行される
今度はファイル名を指定して実行で
cmd /c "C:\a\b b.cmd"
cmd /c "C:\a\b b.cmd" dを実行すると、pauseで止まるけど
cmd /c "C:\a\b b.cmd" "d"を実行すると、一瞬で終わる
cmd /c,"C:\a\b b.cmd" "d"なら動く
結構知られていないんだよね。
273デフォルトの名無しさん
2017/11/08(水) 22:40:59.50ID:ZHWfUJ7q >>270 ありがとう。完全に動作しました
そもそも eol の既定値が ; だとかヘルプに書いてないぞ
ちなみに "eol=" とすると eol が空になるのかと思ったら
今度は行頭に " があると読み飛ばすようです
何なんだ、これは。for 文のバグですかね
そもそも eol の既定値が ; だとかヘルプに書いてないぞ
ちなみに "eol=" とすると eol が空になるのかと思ったら
今度は行頭に " があると読み飛ばすようです
何なんだ、これは。for 文のバグですかね
274デフォルトの名無しさん
2017/11/09(木) 12:26:56.09ID:NEfZ8eBs @echo off
prompt $g
set a=/?
set b=exe
set c= off
echo on
echo,%a%
echo;%a%
echo.%a%
echo.%b%
echo.%c%
echo
pause
prompt $g
set a=/?
set b=exe
set c= off
echo on
echo,%a%
echo;%a%
echo.%a%
echo.%b%
echo.%c%
echo
pause
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」 [冬月記者★]
- 【外国人問題】小野田紀美担当相「不法就労や不法滞在は許さない」 [シャチ★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 中国で「クレしん」公開延期 対日報復、エンタメに波及 [蚤の市★]
- 経団連会長、日中は建設的対話を 経済3団体が高市首相と初会談も日中関係は話題に登らず… [BFU★]
- 【映画】『クレヨンしんちゃん』 中国で公開延期 対日報復、エンタメに波及 [冬月記者★]
- 友達「ゲームやるからパソコン買えよ!」俺「おう!」友達「これやろうぜ!」(外国の変なゲーム)俺「なにこれ…」
- 逆に幽霊がいる根拠を示して欲しい
- 日経時間外、5万円割れ 垂直落下始まる [402859164]
- 有識者「高市総理が発言を撤回したり、辞職するしかないと言っている人は、それで日中関係が今まで通りになると思ってる?」 [834922174]
- ウッドデッキで調子こいてたやついたじゃん
- えんやすー
