拡張子が .cmd または .bat のバッチファイルのスクリプティング(プログラミング)に関わる
質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです。
※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう。
前スレ
【.cmd】 バッチファイルスクリプト %11 【.bat】©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1424858999/
【.cmd】 バッチファイルスクリプト %12 【.bat】
https://mevius.5ch.net/test/read.cgi/tech/1489207631/
それ以前の過去スレ
%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】 バッチファイルスクリプト %13 【.bat】
■ このスレッドは過去ログ倉庫に格納されています
2018/11/21(水) 14:52:07.84ID:v84I4o+L
2018/12/15(土) 08:56:57.96ID:q+o88Lhc
その仕様のせいでパス区切り文字を/にすることができないという呪いが
53デフォルトの名無しさん
2018/12/16(日) 12:34:58.23ID:2Wn8M764 仕様がカオスになってるよね。
はやくLinuxcommandも標準対応して欲しい
はやくLinuxcommandも標準対応して欲しい
2018/12/17(月) 00:07:47.83ID:C+acxNdu
2018/12/17(月) 00:08:37.24ID:msnfpX97
>>51
そうだったのか、サンクス
そうだったのか、サンクス
2018/12/17(月) 07:58:43.76ID:xQB1O269
>>53
永久にならないから忘れろ
永久にならないから忘れろ
57デフォルトの名無しさん
2018/12/17(月) 19:54:34.22ID:zeK+PGUB >>43だけどやっぱわからん!
sendtoにバッチファイル入れといてフォルダを指定します。
指定したフォルダの名前をechoで表示したいんだけど&^がフォルダ名に付けられているとフォルダ名表示が出来ない。
batファイル &というフォルダを右クリック送るをした時
@echo off
echo "%~f1" これは表示できる
set fname="%~f1"
echo "%fname%" &や^が消えてしまう
どうやったら代入ができるの?エスケープに置き換えも一文字分しかできないし。
sendtoにバッチファイル入れといてフォルダを指定します。
指定したフォルダの名前をechoで表示したいんだけど&^がフォルダ名に付けられているとフォルダ名表示が出来ない。
batファイル &というフォルダを右クリック送るをした時
@echo off
echo "%~f1" これは表示できる
set fname="%~f1"
echo "%fname%" &や^が消えてしまう
どうやったら代入ができるの?エスケープに置き換えも一文字分しかできないし。
2018/12/17(月) 20:25:30.59ID:CiJxr7Yn
set "fname=%~f1"
2018/12/17(月) 20:26:56.58ID:uU80GVRL
>>57
echo %fname%
echo %fname%
2018/12/17(月) 20:28:40.66ID:uU80GVRL
あ、ごめん
どっちでもいいよ
どっちでもいいよ
2019/01/07(月) 13:47:43.45ID:ZTiiH/I2
バッチファイル中の*.*で、そんなファイルはないとエラーが出た
もう一度実行するとこれまでどおり問題なしに実行
windows更新の影響かセキュリティソフトのせいかも知れないが、
ウィルスがコマンドをすり替えている可能性もあるから、バッチ中のコマンドはパスも含めて
たとえばnotepadでなくC:\Windows\notepad.exeの方が安全だなと思った
もう一度実行するとこれまでどおり問題なしに実行
windows更新の影響かセキュリティソフトのせいかも知れないが、
ウィルスがコマンドをすり替えている可能性もあるから、バッチ中のコマンドはパスも含めて
たとえばnotepadでなくC:\Windows\notepad.exeの方が安全だなと思った
2019/01/07(月) 15:56:36.05ID:ZNh/EsxI
話変わるが
今は *.* としても意味無いよ * だけでOK
今は *.* としても意味無いよ * だけでOK
2019/01/07(月) 16:12:14.33ID:06gMfJVc
2019/01/07(月) 17:05:59.89ID:ZNh/EsxI
色んなソフト入れると %PATH% が膨れ上がる
使わないパスが30個とか..
気味が悪いのでバッチの先頭に
PATH C:\WINDOWS\system32;C:\WINDOWS;
と書くようにしてる
使わないパスが30個とか..
気味が悪いのでバッチの先頭に
PATH C:\WINDOWS\system32;C:\WINDOWS;
と書くようにしてる
2019/01/07(月) 20:11:25.89ID:xW7Pde1m
既に存在しないフォルダが環境変数PATHに設定されてるとコマンド検索がそこで止まってしまう
こんなのを使って時々確認するといい。
powershell $env:path -split ';'^|%{$_ ,(test-path $_ -patht cont ^)}
こんなのを使って時々確認するといい。
powershell $env:path -split ';'^|%{$_ ,(test-path $_ -patht cont ^)}
66デフォルトの名無しさん
2019/01/11(金) 19:37:34.13ID:WNI2j4XF 遅延環境変数OFFでやると面倒だ
ONにするとパス名などの文字列の扱いが複雑化して読み取れないのが出る
ONにするとパス名などの文字列の扱いが複雑化して読み取れないのが出る
2019/01/12(土) 00:39:03.28ID:IAz54C40
PowerShell で、$env:path -split ';' と打つと、
C:\WINDOWS\system32
C:\WINDOWS
Intel を除いて、これらが先頭に来る
C:\WINDOWS\system32
C:\WINDOWS
Intel を除いて、これらが先頭に来る
2019/01/12(土) 07:44:55.84ID:uK0WXiBn
>>67
普通はね
普通はね
2019/01/14(月) 09:23:20.28ID:e5YcHVOA
@echo off & set "p=%path%"
:v
for /f "delims=; tokens=1*" %%i in ("%p%") do set "p=%%j" & echo "%%i"
if defined p goto :v
おらの環境
"C:\Program Files (x86)\Common Files\Oracle\Java\javapath"
"C:\ProgramData\Oracle\Java\javapath"
"C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common"
"C:\Program Files (x86)\Intel\iCLS Client\"
"C:\Program Files\Intel\iCLS Client\"
"C:\WINDOWS\system32"
"C:\WINDOWS"
:v
for /f "delims=; tokens=1*" %%i in ("%p%") do set "p=%%j" & echo "%%i"
if defined p goto :v
おらの環境
"C:\Program Files (x86)\Common Files\Oracle\Java\javapath"
"C:\ProgramData\Oracle\Java\javapath"
"C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common"
"C:\Program Files (x86)\Intel\iCLS Client\"
"C:\Program Files\Intel\iCLS Client\"
"C:\WINDOWS\system32"
"C:\WINDOWS"
2019/01/14(月) 09:53:16.85ID:e5YcHVOA
マイクロソフトがどこまでチェックしているか知らんが
コマンド追加したら干渉する可能性はあるな
コマンド追加したら干渉する可能性はあるな
2019/01/20(日) 00:11:28.57ID:xs+avKSw
C:\HOGE
├─aaa
│ ├─old
│ │ aaa1.bat
│ │
│ └─src
│ aaa1.bat
│
├─bbb
│ ├─old
│ │ bbb1.bat
│ │
│ └─src
│ bbb1.bat
│
└─ccc
├─old
│ ccc1.bat
│
└─src
ccc1.bat
↑のoldフォルダとその中身を一括で削除したいのですが、コマンドでは難しいでしょうか?
├─aaa
│ ├─old
│ │ aaa1.bat
│ │
│ └─src
│ aaa1.bat
│
├─bbb
│ ├─old
│ │ bbb1.bat
│ │
│ └─src
│ bbb1.bat
│
└─ccc
├─old
│ ccc1.bat
│
└─src
ccc1.bat
↑のoldフォルダとその中身を一括で削除したいのですが、コマンドでは難しいでしょうか?
2019/01/20(日) 00:13:41.92ID:xs+avKSw
↑HOGEの下には実際にはaaa〜cccのようなフォルダが無数にあります…
2019/01/20(日) 00:15:44.50ID:xs+avKSw
↑たびたびすみません。
正確に言うと「HOGE配下に存在する"old"という名前のフォルダとその中身を全て削除する」です。
正確に言うと「HOGE配下に存在する"old"という名前のフォルダとその中身を全て削除する」です。
2019/01/20(日) 02:15:14.20ID:pk2ilGy6
for /d /r
とif文つかえばいいだけじゃん
とif文つかえばいいだけじゃん
2019/01/20(日) 04:39:06.95ID:K0yQSeRR
del
2019/01/20(日) 07:09:39.32ID:YWDkxQqJ
FOR /R C:\HOGE %%I IN (.) DO rd/s/q "%%~I\old" 2> nul
2019/01/20(日) 07:32:36.37ID:YWDkxQqJ
バッチにするまでもない
直接入力なら%%を%に
直接入力なら%%を%に
2019/01/20(日) 09:22:02.93ID:pk2ilGy6
2019/01/20(日) 10:27:11.29ID:pk2ilGy6
おいらならこう書く
for /d /r c:\hoge %a in (old) rd /q /s %a
for /d /r c:\hoge %a in (old) rd /q /s %a
2019/01/20(日) 10:28:21.11ID:xs+avKSw
2019/01/20(日) 10:36:33.72ID:xs+avKSw
でもrdはディレクトリ削除コマンドなんだから最後に"\"を付けるのは不自然か…
2019/01/20(日) 10:54:52.71ID:YWDkxQqJ
2019/01/20(日) 11:08:28.37ID:pk2ilGy6
2019/01/20(日) 11:18:39.20ID:YWDkxQqJ
そうかな?
RD の前に echo 付けて見たら?
ファイルでも RD OLD がでるぞ
FOR のヘルプをよく見てね
RD の前に echo 付けて見たら?
ファイルでも RD OLD がでるぞ
FOR のヘルプをよく見てね
2019/01/21(月) 21:18:15.33ID:9WBiq3dN
ざっくり言うと、
EternalForceBlizzard.bat C:\hoge
とかいうバッチが欲しいという中二に対して「俺なら!」「俺なら!」とやってた流れ…かな。
>>82
どうでもいいけど全部大文字とかやめれ。
内容は知らんが死ぬほどダサい。
EternalForceBlizzard.bat C:\hoge
とかいうバッチが欲しいという中二に対して「俺なら!」「俺なら!」とやってた流れ…かな。
>>82
どうでもいいけど全部大文字とかやめれ。
内容は知らんが死ぬほどダサい。
2019/01/21(月) 21:58:45.27ID:rFmuVz+a
今後は小文字にするよ。気が変わるかもしれんが。
forの括弧内のファイルは存在しなくてもスキップしない
例外はワイルドカードで対象はファイル
/dだと対象はフォルダ
ただそれだけの話だ
forの括弧内のファイルは存在しなくてもスキップしない
例外はワイルドカードで対象はファイル
/dだと対象はフォルダ
ただそれだけの話だ
2019/01/22(火) 11:52:34.58ID:dXptnPwJ
findstrの結果に文字列を連結したいのですがうまくいきません
どうしたらよういでしょういか?
cd /d %~dp0
type test1.txt | echo"りんご" & findstr "りんご" >> out.txt
どうしたらよういでしょういか?
cd /d %~dp0
type test1.txt | echo"りんご" & findstr "りんご" >> out.txt
2019/01/22(火) 14:00:46.60ID:CTNOEPFx
call :a "りんご" test1.txt > out.txt & goto :eof
:a
echo %1 & findstr %1 %2
:a
echo %1 & findstr %1 %2
2019/01/22(火) 15:31:22.37ID:dXptnPwJ
>88
ありがとうございます。
[りんご]
[りんごを含んだ文]
[りんごを含んだ文]
[りんごを含んだ文]
といった感じにでました。
[りんご][りんごを含んだ文]
[りんご][りんごを含んだ文]
[りんご][りんごを含んだ文]
という感じはならないでしょうか?
ありがとうございます。
[りんご]
[りんごを含んだ文]
[りんごを含んだ文]
[りんごを含んだ文]
といった感じにでました。
[りんご][りんごを含んだ文]
[りんご][りんごを含んだ文]
[りんご][りんごを含んだ文]
という感じはならないでしょうか?
2019/01/22(火) 15:58:11.82ID:CTNOEPFx
call :a "りんご" test1.txt > out.txt & goto :eof
:a
for /f delims^=^ eol^= %%i in ('findstr %1 %2') do echo.%1 %%i
:a
for /f delims^=^ eol^= %%i in ('findstr %1 %2') do echo.%1 %%i
2019/01/22(火) 16:44:03.03ID:dXptnPwJ
>90
おお!、うまくいきました。ありがとうございます!。
エクセルの&のように簡単なのかと思ったら以外と複雑な処理で驚きです。
おお!、うまくいきました。ありがとうございます!。
エクセルの&のように簡単なのかと思ったら以外と複雑な処理で驚きです。
2019/01/22(火) 17:08:05.17ID:nMQEwTi4
単に行数を少なくするだけの&の使い方で
デバッグもメンテの面でもいい事はないんで行を分けて書いたほうがいい
デバッグもメンテの面でもいい事はないんで行を分けて書いたほうがいい
2019/01/22(火) 17:31:44.20ID:CTNOEPFx
そういうのは質問者の方で調整よろしくお願いします
2019/01/22(火) 18:02:51.94ID:nMQEwTi4
2019/01/22(火) 18:15:04.06ID:CTNOEPFx
言いたい事は分かります。
はっきり言って自分用のバッチはこんな書き方はしません。
行数を抑える為に繋いでるだけなんで。
バランス見て改行します。すみません。
はっきり言って自分用のバッチはこんな書き方はしません。
行数を抑える為に繋いでるだけなんで。
バランス見て改行します。すみません。
2019/01/22(火) 18:27:13.64ID:nMQEwTi4
って思ったら、質問者は&に感心してたわけじゃなくて
逆に&で簡単に書けない点が不満なんだな
逆に&で簡単に書けない点が不満なんだな
2019/01/22(火) 19:15:10.41ID:ak2Ch+AT
Basic言語では&は文字列結合演算子だが
バッチスクリプトは出自からBasicじゃないので&は別の意味(ステートメントメント区切り)となる
文字列結合演算子自体が存在しない
バッチスクリプトは出自からBasicじゃないので&は別の意味(ステートメントメント区切り)となる
文字列結合演算子自体が存在しない
2019/01/23(水) 13:46:03.43ID:HgbeZ9kI
昨日の質問者です、たびたびすみません
複数ワードを処理しようとして
call :a "りんご" test1.txt > out.txt
:a
for /f delims^=^ eol^= %%i in ('findstr %1 %2') do echo.%1 %%i
call :a "みかん" test1.txt > out.txt
:a
for /f delims^=^ eol^= %%i in ('findstr %1 %2') do echo.%1 %%i
としたところ、うまくいったのですが
これが5項目くらいになると
dos窓に「別のプロセスが使用中です」と表示されてしまいます。
なにかメモリ的なものがいっぱいになるのでしょうか?
回避方法はありますでしょうか?
複数ワードを処理しようとして
call :a "りんご" test1.txt > out.txt
:a
for /f delims^=^ eol^= %%i in ('findstr %1 %2') do echo.%1 %%i
call :a "みかん" test1.txt > out.txt
:a
for /f delims^=^ eol^= %%i in ('findstr %1 %2') do echo.%1 %%i
としたところ、うまくいったのですが
これが5項目くらいになると
dos窓に「別のプロセスが使用中です」と表示されてしまいます。
なにかメモリ的なものがいっぱいになるのでしょうか?
回避方法はありますでしょうか?
2019/01/23(水) 15:17:41.73ID:HwNiCy+r
意味不明だが?
@echo off
call :a "りんご" test1.txt > out.txt
call :a "みかん" test1.txt >> out.txt
goto :eof
:a
for /f delims^=^ eol^= %%i in ('findstr %1 %2') do echo.%1 %%i
@echo off
call :a "りんご" test1.txt > out.txt
call :a "みかん" test1.txt >> out.txt
goto :eof
:a
for /f delims^=^ eol^= %%i in ('findstr %1 %2') do echo.%1 %%i
100デフォルトの名無しさん
2019/01/23(水) 15:33:11.44ID:HwNiCy+r 今時、メモリ不足とか滅多に無いよ。
バッチで80byte文字列の一万個の配列変数とかやったことあるけど
問題なかったよ。
バッチで80byte文字列の一万個の配列変数とかやったことあるけど
問題なかったよ。
101デフォルトの名無しさん
2019/01/23(水) 16:10:02.06ID:HgbeZ9kI >99さんの書式にするとうまくいきました
おそらく私が
:a
for /f delims^=^ eol^= %%i in ('findstr %1 %2') do echo.%1 %%i
をいっぱい書いてしまったからかもしれません。
おそらく私が
:a
for /f delims^=^ eol^= %%i in ('findstr %1 %2') do echo.%1 %%i
をいっぱい書いてしまったからかもしれません。
102デフォルトの名無しさん
2019/01/24(木) 07:52:40.56ID:ElV7iNpQ 文字列:形式の「ラベル」はバッチファイル内でユニークにしてください。
今回のa:は共通サブルーチンなので、バッチ内で1つで良く、コードの最後に置きましょう。
サブルーチンを使う場合、メインルーチンのラストにはgoto :eof
を書くようにしてください。これが無いとメインが終わった後にまたサブルーチン処理が行われます。
今回のa:は共通サブルーチンなので、バッチ内で1つで良く、コードの最後に置きましょう。
サブルーチンを使う場合、メインルーチンのラストにはgoto :eof
を書くようにしてください。これが無いとメインが終わった後にまたサブルーチン処理が行われます。
103デフォルトの名無しさん
2019/01/24(木) 07:58:36.47ID:ElV7iNpQ またバッチ内で複数のサブルーチンを使いたい場合はそれぞれのサブルーチンの後にexit /bのコマンド行を付けてください。
exit /bによってメインルーチンに処理が戻ります。
これ無いと下の行に処理が遷移してしまいます
exit /bによってメインルーチンに処理が戻ります。
これ無いと下の行に処理が遷移してしまいます
104デフォルトの名無しさん
2019/01/24(木) 10:48:11.21ID:4/xiY5nl なるほど、丁寧な説明ありがとうございます。
105デフォルトの名無しさん
2019/01/24(木) 11:16:25.14ID:tFfJW+eT cmdの基礎を勉強しろ
あまりにも質問のレベルが低いとレスがつかないと思え
あまりにも質問のレベルが低いとレスがつかないと思え
106デフォルトの名無しさん
2019/02/16(土) 02:44:12.08ID:Aqg/y48e for %%I in (*.txt) do (
echo #%%I
)
*.txt だけでなく *.txt2 などもあれば表示する
.txt などの拡張子が3文字の時だけ4文字目以降を無視する
拡張子が2文字の時は問題なし
バグか仕様か
echo #%%I
)
*.txt だけでなく *.txt2 などもあれば表示する
.txt などの拡張子が3文字の時だけ4文字目以降を無視する
拡張子が2文字の時は問題なし
バグか仕様か
107デフォルトの名無しさん
2019/02/16(土) 14:24:30.26ID:dbRt9asv dir もね
他にもMS-DOS用の短い名前に反応したり
ワイルドカードは、いやらしい動作をするね
他にもMS-DOS用の短い名前に反応したり
ワイルドカードは、いやらしい動作をするね
108デフォルトの名無しさん
2019/02/16(土) 15:05:34.51ID:H4+bjsi1 dir c:\*1
でProgram Filesが表示されるやつか
でProgram Filesが表示されるやつか
109デフォルトの名無しさん
2019/02/16(土) 15:23:46.61ID:dbRt9asv del *~*
は危険
は危険
110デフォルトの名無しさん
2019/02/16(土) 18:22:32.57ID:VRMsBAkU 8.3形式でもファイル見てるのね
111デフォルトの名無しさん
2019/02/16(土) 21:48:09.10ID:6/sri1HY112デフォルトの名無しさん
2019/02/17(日) 08:58:17.36ID:2q4tHixb *.txt2 のファイル名を dir/x で見ると
*~1.TXT とか *~2.TXT になってるから
dir *.txt
dir *txt
dir *xt
dir *t
で一致するということね
*~1.TXT とか *~2.TXT になってるから
dir *.txt
dir *txt
dir *xt
dir *t
で一致するということね
113デフォルトの名無しさん
2019/02/17(日) 10:18:01.03ID:vf3NvI2M やっても良いPCなら OS インストール直後に
>fsutil 8dot3name set
で set 1 をして 8.3名作成を無効化するけど
>fsutil 8dot3name strip
を実際にはしたことがない俺チキン
>fsutil 8dot3name set
で set 1 をして 8.3名作成を無効化するけど
>fsutil 8dot3name strip
を実際にはしたことがない俺チキン
114デフォルトの名無しさん
2019/02/17(日) 18:32:35.83ID:2q4tHixb これでOK
for %%i in (*.txt) do if /i "%%~xi"==".txt" echo %%i
for %%i in (*.txt) do if /i "%%~xi"==".txt" echo %%i
115デフォルトの名無しさん
2019/02/18(月) 23:00:03.97ID:xTG5esR6 以下のように「C:\hoge」の下の全ファイルのファイル名(拡張子は除く)を
"aaa"に書き換えたいのですが、どのようなコマンドを書けば良いのでしょうか?
■書き換え前
C:\hoge
│ あああ.txt
│ いいい.xlsx
│
├─hage
│ ううう.xml
│ えええ.docx
│
└─hige
おおお.jpeg
かかか.gif
■書き換え後
C:\hoge
│ aaa.txt
│ aaa.xlsx
│
├─hage
│ aaa.xml
│ aaa.docx
│
└─hige
aaa.jpeg
aaa.gif
"aaa"に書き換えたいのですが、どのようなコマンドを書けば良いのでしょうか?
■書き換え前
C:\hoge
│ あああ.txt
│ いいい.xlsx
│
├─hage
│ ううう.xml
│ えええ.docx
│
└─hige
おおお.jpeg
かかか.gif
■書き換え後
C:\hoge
│ aaa.txt
│ aaa.xlsx
│
├─hage
│ aaa.xml
│ aaa.docx
│
└─hige
aaa.jpeg
aaa.gif
116デフォルトの名無しさん
2019/02/18(月) 23:02:17.45ID:xTG5esR6 すみません、higeの下のファイル名がずれてしまいました。
正しくは↓です。
■書き換え前
└─hige
おおお.jpeg
かかか.gif
■書き換え後
└─hige
aaa.jpeg
aaa.gif
正しくは↓です。
■書き換え前
└─hige
おおお.jpeg
かかか.gif
■書き換え後
└─hige
aaa.jpeg
aaa.gif
117デフォルトの名無しさん
2019/02/18(月) 23:05:19.42ID:xTG5esR6 それと、同一フォルダ内に同じ拡張子のファイルは複数存在しません。
118デフォルトの名無しさん
2019/02/18(月) 23:08:58.74ID:rXc7x2eo for文とmv組み合わせでしょ
サイト2個検索した方が聞くよりはやくできるとおもうけど
なんで質問したの?
サイト2個検索した方が聞くよりはやくできるとおもうけど
なんで質問したの?
119デフォルトの名無しさん
2019/02/19(火) 06:30:48.56ID:Hb9ZoB2m >>115
for /r "c:\hoge" %%i in (*) do ren "%%~fi" "aaa%%~xi"
for /r "c:\hoge" %%i in (*) do ren "%%~fi" "aaa%%~xi"
120デフォルトの名無しさん
2019/02/19(火) 09:50:06.91ID:Hb9ZoB2m 話変わるが
for に /r を付けたら
%~nxi の引用符が何故かとれない
>for %i in ("abc") do @echo %~nxi
abc
>for /r %i in ("abc") do @echo %~nxi
"abc"
>for /r %i in ("abc*") do @echo %~nxi
abc
for に /r を付けたら
%~nxi の引用符が何故かとれない
>for %i in ("abc") do @echo %~nxi
abc
>for /r %i in ("abc") do @echo %~nxi
"abc"
>for /r %i in ("abc*") do @echo %~nxi
abc
121デフォルトの名無しさん
2019/02/19(火) 10:03:42.75ID:/Qrw8ZSg 管理者として実行したいアプリ、さらに優先度を低で起動させる方法ありますか?
さらにそれをスタートアップに登録したいんです
さらにそれをスタートアップに登録したいんです
122デフォルトの名無しさん
2019/02/19(火) 10:09:52.10ID:e0NdV1CM タスクに登録すれば?
123デフォルトの名無しさん
2019/02/19(火) 10:57:12.10ID:Hb9ZoB2m start /LOW のコマンドのショートカットを
スタートアップのフォルダに入れりゃいいんじゃね
ショートカットの設定は管理者にして
スタートアップのフォルダに入れりゃいいんじゃね
ショートカットの設定は管理者にして
124117
2019/02/19(火) 20:46:10.94ID:kZ82VOHH125デフォルトの名無しさん
2019/02/20(水) 00:04:58.50ID:GzdyKGwx 聞いたほうが早いならそれでもいいと思うよ。
126デフォルトの名無しさん
2019/02/20(水) 08:00:48.35ID:vs0GH/UB AzureAD、Office365を使うなら(Office365についてはGraphの使いこなしも必須)。バッチやVBSの代替としても必須。
「Powershellが出来る」だけではなくPowershellも活用し、なんの業務をしてたか?がスキルとなる基本的にはインフラ屋のスキルの一要素
「Powershellが出来る」だけではなくPowershellも活用し、なんの業務をしてたか?がスキルとなる基本的にはインフラ屋のスキルの一要素
127デフォルトの名無しさん
2019/02/20(水) 08:01:45.93ID:vs0GH/UB すみません
>>126は誤爆
>>126は誤爆
128デフォルトの名無しさん
2019/02/21(木) 18:42:23.51ID:WAQ7+H44 環境変数の中に=があると
変数参照が変な事になってくるな...
>set a=b=c
>echo %a%
b=c
>echo %a=b%
c
変数参照が変な事になってくるな...
>set a=b=c
>echo %a%
b=c
>echo %a=b%
c
129デフォルトの名無しさん
2019/02/21(木) 19:45:58.39ID:bhin4IwL イコールは^つけないと特殊な動作するはず
130デフォルトの名無しさん
2019/02/21(木) 20:25:05.21ID:WAQ7+H44 俺も最初はそう思ったんだけど...
>set a=b^=c
>echo %a=b%
c
>set a=b^=c
>echo %a=b%
c
131デフォルトの名無しさん
2019/02/21(木) 21:37:53.86ID:m0MzDbdd ならないんだけど?(win7)
BATだと
ECHO は <ON> です。
ダイレクトだと
%a=b%
BATだと
ECHO は <ON> です。
ダイレクトだと
%a=b%
132デフォルトの名無しさん
2019/02/21(木) 21:41:55.31ID:oU3vU03f 自分の環境でもならない
win10
win10
133デフォルトの名無しさん
2019/02/21(木) 22:19:20.44ID:WAQ7+H44 バッチでやって見た
set a=b^=c
echo %a%
echo %a=b%
結果
b=c
c
set "a=b=c" でも同じ
Microsoft Windows 10 Pro
10.0.17763 N/A ビルド 17763
>set a
a=b=c
ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\ore\AppData\Roaming
set a=b^=c
echo %a%
echo %a=b%
結果
b=c
c
set "a=b=c" でも同じ
Microsoft Windows 10 Pro
10.0.17763 N/A ビルド 17763
>set a
a=b=c
ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\ore\AppData\Roaming
134デフォルトの名無しさん
2019/02/21(木) 23:16:08.70ID:WAQ7+H44135デフォルトの名無しさん
2019/03/01(金) 16:41:47.85ID:7J1MA7z+ 1.batファイルで
start ***.bat
を実行してその***.batの中に
call ***.exe
があるんだけど
最初に実行するbatファイルでどうにか ***.exeを最小化で起動できますか?
start ***.bat
を実行してその***.batの中に
call ***.exe
があるんだけど
最初に実行するbatファイルでどうにか ***.exeを最小化で起動できますか?
136デフォルトの名無しさん
2019/03/01(金) 16:56:22.92ID:1DJZnnpK start "" /min "hoge.exe"
137デフォルトの名無しさん
2019/03/12(火) 10:13:24.40ID:2ZxzO4Nc forで行取得して並列で処理してるんですが、一度にすべて実行するのでPCの負担が大きいです。
さらに回数指定するには、どうすればできますか?
さらに回数指定するには、どうすればできますか?
138137
2019/03/12(火) 11:09:28.51ID:2ZxzO4Nc すみません。説明不足でした。
初めにforでテキストを取得しsetに割り当て、全てをコマンドとして生成して並列処理しています。
並列で3回ずつ実行し終了をループしたいです。
初めにforでテキストを取得しsetに割り当て、全てをコマンドとして生成して並列処理しています。
並列で3回ずつ実行し終了をループしたいです。
139デフォルトの名無しさん
2019/03/12(火) 13:04:35.48ID:6sZCRvoD batを見ないと良く分からん
140デフォルトの名無しさん
2019/03/12(火) 14:22:43.31ID:JT0qCUVC FORでサブルーチンをCALLするようにして、
3回呼び出されたら実行するようにするとかかな
これ以上は元のバッチを見ないと何とも
3回呼び出されたら実行するようにするとかかな
これ以上は元のバッチを見ないと何とも
141デフォルトの名無しさん
2019/03/12(火) 14:35:25.41ID:ollYoz5v 並列処理ということは、非同期呼び出しを使ってるわけだから
その呼び出した処理の終了をどうやって感知するかが肝
多分プロセスの存在チェックでいけると思うがそういうのが過去ログにあったと思う
その呼び出した処理の終了をどうやって感知するかが肝
多分プロセスの存在チェックでいけると思うがそういうのが過去ログにあったと思う
142デフォルトの名無しさん
2019/03/12(火) 20:57:10.17ID:kFHhQjU8 んでもそんな高度な事がしたいならVCあたりで作っちゃいかんの?
143デフォルトの名無しさん
2019/03/14(木) 00:11:57.06ID:MfJOghkN -- A.bat --
:loop
if "%~1" == "" goto end
call B.bat "%~1"
shift
goto loop
:end
-- B.bat --
--
if exist "%~dpn1_hoge.txt" (
set XXX=--option "%~dpn1_hoge.txt"
)
--
A.batに複数ファイルをD&DしたときにB.batのif existで指定したファイルがA.batに入力したファイルに1つでも存在すれば他の入力ファイルにも同じ処理が実行されてしまいます
これを回避するにはどうすればいいでしょうか?
:loop
if "%~1" == "" goto end
call B.bat "%~1"
shift
goto loop
:end
-- B.bat --
--
if exist "%~dpn1_hoge.txt" (
set XXX=--option "%~dpn1_hoge.txt"
)
--
A.batに複数ファイルをD&DしたときにB.batのif existで指定したファイルがA.batに入力したファイルに1つでも存在すれば他の入力ファイルにも同じ処理が実行されてしまいます
これを回避するにはどうすればいいでしょうか?
144デフォルトの名無しさん
2019/03/14(木) 00:20:05.87ID:Gms0hgp4 毎回リセットしとけば?
b.batの先頭でset xxx=を書くとかb.batをsetlocal〜endlocalするとか
b.batの先頭でset xxx=を書くとかb.batをsetlocal〜endlocalするとか
145デフォルトの名無しさん
2019/03/14(木) 00:26:03.45ID:Gms0hgp4 すまん良く読んでなかった
ファイルね
b.batで生成するのかな?
削除しちゃっても問題ないのならa.batの先頭でdelしちゃえば?
ファイルね
b.batで生成するのかな?
削除しちゃっても問題ないのならa.batの先頭でdelしちゃえば?
146デフォルトの名無しさん
2019/03/14(木) 00:37:26.49ID:MfJOghkN B.batは動画のエンコードに使っているバッチファイルの中身の一部で %~dpn1_hoge.txt があった場合はツールに追加のオプションを指定するようにしている感じです
147デフォルトの名無しさん
2019/03/19(火) 11:54:10.54ID:hD2ftWP/ set day=3/19(火)
if 1==1 (
echo %day%
)
すみませんどなたか教えてください。
曜日の半角括弧のせいでif文が閉じられてしまうんだけど
どうやってエスケープすればいいんでしょうか?
if 1==1 (
echo %day%
)
すみませんどなたか教えてください。
曜日の半角括弧のせいでif文が閉じられてしまうんだけど
どうやってエスケープすればいいんでしょうか?
148デフォルトの名無しさん
2019/03/19(火) 12:02:29.16ID:9bBZVsPM ^)
バッチ エスケープで検索すりゃすぐわかるだろ
バッチ エスケープで検索すりゃすぐわかるだろ
149デフォルトの名無しさん
2019/03/19(火) 12:50:21.44ID:Juttg7oZ 括弧はpsのワンライナーでも嵌まる箇所
150デフォルトの名無しさん
2019/03/19(火) 12:57:54.34ID:dDtGuicR >>147
こういう方法もある
変数dayの中に、二重引用符がなければ
set day=3/19(火)
if 1==1 (
for /f delims^=^ eol^= %%i in ("%day%") do echo %%i
)
これだとdayに & | > < ^ ( ) 等やばそうな文字が入っても大丈夫
こういう方法もある
変数dayの中に、二重引用符がなければ
set day=3/19(火)
if 1==1 (
for /f delims^=^ eol^= %%i in ("%day%") do echo %%i
)
これだとdayに & | > < ^ ( ) 等やばそうな文字が入っても大丈夫
151デフォルトの名無しさん
2019/03/19(火) 13:01:36.48ID:dDtGuicR echo.%%i
にしたらもっといいかも
にしたらもっといいかも
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【インバウンド】中国からの“渡航自粛”…ツアー1000人分の直前キャンセル「キャンセル料は免除してくれ」 ことしいっぱいキャンセルに [1ゲットロボ★]
- 【芸能】日中関係悪化でエンタメ業界に大ダメージ… JO1の中国でのイベント中止、邦画は公開延期、STARTOアイドルへの影響も [冬月記者★]
- 「国民の憤りを引き起こした」中国側“高市首相発言の撤回改めて要求” [どどん★]
- XやChatGPTで広範囲の通信障害 投稿や閲覧できず [蚤の市★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- 【ローソン】ロゴの「L」で誤解生んだコーヒーカップ、デザイン変更へ 在庫使い切る3か月後にリニューアル [ぐれ★]
- パラドゲーやってる人に聞きたい総理の発言がそのまま国家意思になるって中世かよ [279479878]
- 【高市早苗】バス会社、中国からのキャンセルで12月で2000万円~3000万円の損失へ [115996789]
- 米シンクタンク「アメリカは台湾問題で"あいまい戦略"を取っている。高市早苗はこの方針から逸脱している」 [603416639]
- かしこいワンコっていうVtuberの子知ってる?
- 岡田克也「軽々しく存立危機事態とか言うべきじゃない」高市早苗「台湾で武力攻撃が発生したらどう考えても日本の存立危機事態」 [931948549]
- 俺が「う~寒い寒い」って言いながらお前らが寝てるお布団に潜り込んだら…
