【.cmd】 バッチファイルスクリプト %13 【.bat】

1 :デフォルトの名無しさん:2018/11/21(水) 14:52:07.84 ID:v84I4o+L.net
拡張子が .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/

2 :デフォルトの名無しさん:2018/11/21(水) 14:53:38.55 ID:v84I4o+L

スレ作った

3 :デフォルトの名無しさん:2018/11/21(水) 15:10:24.99 ID:ROx7bOng

>>1
いちおつ

ところで、最近、プロンプトの色が変わってしまったんだが直し方教えてください
くすんだ感じになってしまう

color 9f

とか明るい色が顕著
自分で加えた変更の何が影響したのかわからず、途方に暮れてます

4 :デフォルトの名無しさん:2018/11/21(水) 15:28:50.54 ID:0+i4JzOE

タヒ

5 :デフォルトの名無しさん:2018/11/21(水) 15:34:12.06 ID:0TmpON8B

>>1
テンプレ文だがもうWSHよりはPowershellじゃないのかしら?

6 :デフォルトの名無しさん:2018/11/21(水) 15:54:50.45 ID:waeO4Jak

powershellはここの板に別スレがあってここで取り扱う必用は無い
一方wshはもはや専用スレは無くこのスレに含めた形で残っている

7 :デフォルトの名無しさん:2018/11/21(水) 23:59:36.40 ID:VxDAgoaS

>>3 自己レスです

レジストリの
HKEY_CURRENT_USER¥Console にある ColorTableXX で指定された
色 00BBGGRR がソレだったので何かが変だった訳でもなく、忠実に
この値を読んでいただけでした

黒をわざわざ 0c0c0c にしていたり、全テーブル 00 から 15 まで
全て変更が入っていたので、いつの間に変更したのかという疑問が
残りますが……

8 :デフォルトの名無しさん:2018/11/22(木) 05:37:11.56 ID:HUZaaTR+

>REG QUERY “HKCU¥Console” /f ColorTable*

HKEY_CURRENT_USER¥Console
ColorTable00 REG_DWORD 0x0
ColorTable01 REG_DWORD 0x800000
ColorTable02 REG_DWORD 0x8000
ColorTable03 REG_DWORD 0x808000
ColorTable04 REG_DWORD 0x80
ColorTable05 REG_DWORD 0x800080
ColorTable06 REG_DWORD 0x8080
ColorTable07 REG_DWORD 0xc0c0c0
ColorTable08 REG_DWORD 0x808080
ColorTable09 REG_DWORD 0xff0000
ColorTable10 REG_DWORD 0xff00
ColorTable11 REG_DWORD 0xffff00
ColorTable12 REG_DWORD 0xff
ColorTable13 REG_DWORD 0xff00ff
ColorTable14 REG_DWORD 0xffff
ColorTable15 REG_DWORD 0xffffff

9 :デフォルトの名無しさん:2018/11/22(木) 06:45:17.58 ID:y7NAvoby

>>6
> powershellはここの板に別スレがあってここで取り扱う必用は無い
別にここで取り扱えという話じゃなくて「使用も検討しましょう」って話な
PowerShell の話題が出たら誘導すればいいだけだし

> 一方wshはもはや専用スレは無くこのスレに含めた形で残っている
wshの専用スレがないのは需要がないからだろ
そんなものに対して使用を検討する必要なんてないと思うぞ

10 :デフォルトの名無しさん:2018/11/22(木) 07:28:54.55 ID:Q9Jr5DcP

>>8
デフォルト値ありがとうございます

実際にOSインストールしなおしての確認はしてないのですが
Win10_1809Oct_Japanese_x64.iso の install.wim の
install.wim¥3¥Users¥Default¥NTUSER.DAT
ハイブファイルのロードをしてみると変化していた方の配色と一致してました

OSクリーンインストール後、しばらく変化に気づいていなかっただけ、
という事のようです
少し透かしていたから 000000 と 0c0c0c の違いに気づくのもほぼ無理ゲー、
だったのも加味して……

スレ汚し失礼しました

11 :デフォルトの名無しさん:2018/11/22(木) 08:20:54.79 ID:HUZaaTR+

俺も以前に経験あるが何で勝手に変わるのか未だに不明
デフォにしたけりゃ”HKCU¥Console”消して起動したらいいんだけど

12 :デフォルトの名無しさん:2018/11/23(金) 06:41:38.84 ID:Yr5PhtU+

>>8 だが
俺も”HKCU¥Console”消して起動したら
ColorTable00 が 0x0 から 0xc0c0c になったよ
今はこれがデフォルトなんだな

13 :デフォルトの名無しさん:2018/11/23(金) 07:03:12.22 ID:Yr5PhtU+

dir | more でEnter押すと1行ずつ出てくるんだけど
前からこんな動作だったっけ?
dir /p みたいにページごとにスクロールしないのか?
ちなみにWin10Pro 1809 17763.107 だ

14 :デフォルトの名無しさん:2018/11/23(金) 07:31:03.82 ID:Yr5PhtU+

すまんhelp見たら
<ret> 次の行を表示します。
になってた。

あとスレチだが gpg -d がエラー出る...

15 :デフォルトの名無しさん:2018/11/23(金) 13:03:06.27 ID:H8vDP5fG

このスレってテンプレに「 次スレは>>970踏んだ人が立てましょう 」とかないんだね。
毎回同じ人が立ててるのかな?

16 :デフォルトの名無しさん:2018/12/02(日) 11:33:28.29 ID:WVaKBjKU

ffmpegで動画容量を減らしています
この先何度も使いそうなのでドラック&ドロップなどで簡単にしたいのでバッチファイルの作り方を教えていただけませんか
また,バッチファイルでなくとも他に良い方法などありましたらぜひお願いします

ffmpeg -i “sample.mp4” -b:v 500k -pass 1 output.mp4

ffmpeg -i “sample.mp4” -b:v 500k -pass 2 output.mp4

普段はこれを実行しています

17 :デフォルトの名無しさん:2018/12/02(日) 14:26:12.73 ID:uIlAasYL

シェルスクリプト・PowerShell もあるけど、
安全性のため、ダブルクリックでは動かない

ダブルクリックで動くのは、バッチファイルだけ

18 :デフォルトの名無しさん:2018/12/03(月) 10:52:45.51 ID:mYQmjn55

>>16
オイラはSendToにバッチファイル(のショートカットでもOK)入れて右クリックの送るから使ってる
C:¥Users¥ユーザ名¥AppData¥Roaming¥Microsoft¥Windows¥SendTo

2-passは使ったことないけど、とりあえず >>16 の処理をするようになってるはず
適当なファイル名を拡張子batで保存して使ってちょ
書き込み時にインデント消えちゃうかもしれないけど、3行目の&&の前だけは先頭に空白1文字以上入れてちょ

for %%f in (%*) do (
ffmpeg -y -i “%%‾ff” -b:v 500k -pass 1 -f mp4 NUL ^
&& ffmpeg -i “%%‾ff” -b:v 500k -pass 2 “%%‾df%%‾pf%%‾nf_output%%‾xf”
)
pause

自動でウィンドウ閉じたければ最後のpauseはいらない
出力ファイル名は入力ファイル名_outputにしてるけど、お好みで変えればよい
複数ファイルも順番に処理するよ

19 :デフォルトの名無しさん:2018/12/04(火) 18:23:57.45 ID:YV7FMG5g

typeコマンドってパイプかますと出力が変わるんだな...
以前はこんなじゃなかったような気がするが?

>type a
abc漢字def

>nkf -SjO a b

>nkf -Js b
abc漢字def

>type b
abc4A;zdef

>type b | more
abc$B4A;z(Bdef

22 :デフォルトの名無しさん:2018/12/05(水) 10:02:24.61 ID:miUFx5r6

>>20
こんな感じでどうだろうか?

taskkill /im hoge.exe /f

:check_run
timeout /t 1 /nobreak >nul
tasklist | find “hoge.exe” >nul && goto check_run

start C:¥hoge.exe

21 :デフォルトの名無しさん:2018/12/04(火) 21:09:17.31 ID:YV7FMG5g

TASKLISTで確認?

20 :デフォルトの名無しさん:2018/12/04(火) 20:16:59.52 ID:Mme7W69z

“C:¥hoge.exe”というプログラムを再起動したくて

 taskkill /im hoge.exe /f
 start C:¥hoge.exe

という2行のバッチを書いたら、hoge.exeがまだ終了しきってなくて起動しませんでした。
hoge.exeの終了にかかる時間が3秒だったり20秒だったりとまちまちなので
タスクリストから居なくなったことを確認してから起動したいのですが
どう書けばよいのでしょうか?

23 :デフォルトの名無しさん:2018/12/05(水) 15:06:21.73 ID:B1LaPmLX

>>20
tasklist xx|findstr xx
if %errorlevel% == 0

24 :デフォルトの名無しさん:2018/12/05(水) 15:22:10.57 ID:GaZgkwnu

今help見たら、まだ直ってねえ...
tasklist/?のフィルター名IMAGENAMは間違いだ...
for /f “skip=1” %%i in (‘tasklist /fi “imagename eq hoge.exe”‘) do goto check_run

25 :デフォルトの名無しさん:2018/12/05(水) 15:39:45.58 ID:GaZgkwnu

あ、条件が逆w...

26 :デフォルトの名無しさん:2018/12/05(水) 15:42:42.33 ID:GaZgkwnu

逆じゃないなw ボケたなあ...

27 :20:2018/12/05(水) 22:04:34.15 ID:82viBDdQ

みなさんレスありがとうございます!

明日職場で試してみますね。

恥ずかしながら自宅PCが古すぎてtasklistコマンドとかが無いので
(WinXP Homeです。Win7が故障中なので…)

どうもありがとうございました!

28 :デフォルトの名無しさん:2018/12/05(水) 22:18:55.09 ID:NGe7cQU/

XPならtimeoutも無いから

29 :デフォルトの名無しさん:2018/12/06(木) 05:58:03.99 ID:+WfW7iJP

XPってtaklistすらないんか…( ゚д゚)ポカーン

にしては↓のスレは盛況だなw

WindowsXPを使い続けるよ Part94
https://mevius.5ch.net/test/read.cgi/win/1543650955/

30 :デフォルトの名無しさん:2018/12/06(木) 06:30:42.74 ID:U/lGMKnD

XP Proにはあるんだが
XP HomeではPowerShellのGet-Processで代用できるらしいよ
PowerShell1.1以降らしいから、PowerShell2.0をインストールしないといけないけど

31 :デフォルトの名無しさん:2018/12/06(木) 15:26:32.29 ID:iJNEICpM

Sysinternals Suite にある、pslistを始めとするコマンド群を利用すれば、
XPでも同等のことは出来る

32 :デフォルトの名無しさん:2018/12/06(木) 21:28:59.92 ID:HLPPFLjR

XPの駆除には苦労した。
Vistaの切られぶりには辟易。
管理者って損な役回りだよなぁ…。

今は7の駆除中。

33 :デフォルトの名無しさん:2018/12/06(木) 23:38:01.47 ID:UfR2YFj9

>>18
ありがとうございます
レス内のものは上手く行きませんでしたが別でうまく行くものを作るためのヒントになりました

34 :デフォルトの名無しさん:2018/12/07(金) 11:34:54.02 ID:k1b27fN5

>>19
それパイプ処理してるコマンドの方の問題じゃなくて?

35 :デフォルトの名無しさん:2018/12/07(金) 12:17:44.85 ID:cJMcluJv

俺には何が原因か分からない
画面コンソール入力するたびに最下段にスクロールするし
スレチだけど
gpg -d で画面表示させるとエラー
gpg -h で画面表示させると文字化けまくり
cmd の表示関係が最近おかしい...

36 :デフォルトの名無しさん:2018/12/07(金) 19:56:05.65 ID:iBsL10N5

xcopyで出来ることは全てrobocopyでも出来るという認識で良いのでしょうか?

37 :デフォルトの名無しさん:2018/12/07(金) 21:49:55.05 ID:cUniS7mm

>>36
削られてるオプションもあるけど「出来ること」に関してはほぼその認識で合ってるんじゃないかな。
ただ、xcopy が対話指向なのに対して robocopy はバッチ指向になってる。(言い換えればログ指向)
コマンドを置き換えれば良いというものではない。場合によってはログが五月蠅い。

ま、今時、ネットワーク越しやバッチ処理でのコピーに xcopy は御法度レベルだから xcopy なんか忘れちゃってもいいと思う。

38 :not 36:2018/12/07(金) 23:31:50.72 ID:J47iFz0r

>>37
>ネットワーク越しやバッチ処理でのコピーに xcopy は御法度レベルだから xcopy なんか忘れちゃってもいいと思う。
そうだったのか、情報ありがとう
調べたらxcopyを使ったバッチファイルがあった、なおそ

39 :デフォルトの名無しさん:2018/12/08(土) 20:14:50.36 ID:Zhb2FJyz

xcopyはほぼフォルダ丸ごとコピー用途に使ってたから
/mirオプションで済むrobocopyの方が覚えやすくて助かるw
コピー自体も高速らしいし

43 :39:2018/12/09(日) 10:35:27.52 ID:lZKvlyRa

>>41
過去にrobocopyのが速いみたいな記事を見た気がしたんだが
今探しても見当たらないので記憶違いかもしれぬ…

47 :デフォルトの名無しさん:2018/12/13(木) 09:48:12.16 ID:vKHUraGB

>>45
入らないようにする

49 :デフォルトの名無しさん:2018/12/14(金) 07:43:35.08 ID:0Ppktz+s

ありがとうございます。

54 :デフォルトの名無しさん:2018/12/17(月) 00:07:47.83 ID:C+acxNdu

>>53
DOSってMS最古だから、ビルベイツ謹製のコードか仕様が残っていて
今の社員は恐れ多くて変えられない
ということにしておこう

60 :デフォルトの名無しさん:2018/12/17(月) 20:28:40.66 ID:uU80GVRL

あ、ごめん
どっちでもいいよ

63 :デフォルトの名無しさん:2019/01/07(月) 16:12:14.33 ID:06gMfJVc

>>62
そうですか、昔のくせでつい
ありがとうございます

100 :デフォルトの名無しさん:2019/01/23(水) 15:33:11.44 ID:HwNiCy+r

今時、メモリ不足とか滅多に無いよ。
バッチで80byte文字列の一万個の配列変数とかやったことあるけど
問題なかったよ。

133 :デフォルトの名無しさん:2019/02/21(木) 22:19:20.44 ID: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

180 :デフォルトの名無しさん:2019/04/19(金) 23:47:56.76 ID:UTkV4PFm

あのさ
もう設計書はあるからバッチ作ってって言われて設計書見たんだが
「%0¥..¥xxx¥yyy.batをコールする」とか書かれてて腰折れそうなんだけど…

248 :デフォルトの名無しさん:2019/06/17(月) 08:25:16.99 ID:gSWoSWwj

.commandでターミナルを開いてpython3 /hoge/test.pyを入力、エンターを送信してpyファイルを実行したいのですがご教授ください。m(_ _)m

echo python3 /hoge/test.pyとするとターミナルに入力はされるのですが、pythonが実行されません。

ちなみに.batでは、
cd C:¥hoge¥
cmd /k python test.py
でpythonを実行する事ができました。

.commandで同じ事をするにはどうすればいいでしょうか?

300 :デフォルトの名無しさん:2019/07/06(土) 08:01:28.83 ID:NPkITZNc

>>298
PowerShellは色々トリッキーなところあるからなぁ
もう少し普通のスクリプト言語で良かったのに…

394件をまとめました。
最新情報はこちら