拡張子が .cmd または .bat のバッチファイルのスクリプティング(プログラミング)に関わる
質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです
※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう
過去スレ
%13 http://mevius.2ch.net/test/read.cgi/tech/1542779527/
%12 http://mevius.2ch.net/test/read.cgi/tech/1489207631/
%11 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://pc11.2ch.net/test/read.cgi/tech/1197881068/
【.cmd】 バッチファイルスクリプト %1 【.bat】
http://pc11.2ch.net/test/read.cgi/tech/1178281991/
バッチファイルプログラミング 3.bat
http://pc11.2ch.net/test/read.cgi/tech/1148485555/
バッチファイルプログラミング 2.bat
http://pc8.2ch.net/test/read.cgi/tech/1104911889/
バッチファイルプログラミング質問スレ
http://pc5.2ch.net/test/read.cgi/tech/1040614686/
【.cmd】 バッチファイルスクリプト %14 【.bat】
■ このスレッドは過去ログ倉庫に格納されています
2020/08/15(土) 07:00:26.64ID:f3kW5kCx
343338
2021/08/25(水) 08:35:00.27ID:CHwZclnY 340,341,342 ありがとう。
遅延?がどうこうって、勉強になりました。
単純な展開ですので、341の !var! 展開を使います。
遅延?がどうこうって、勉強になりました。
単純な展開ですので、341の !var! 展開を使います。
344デフォルトの名無しさん
2021/08/25(水) 12:37:01.24ID:sbFyoxUW ヘルプ読んでから質問してね
345デフォルトの名無しさん
2021/08/25(水) 15:31:20.26ID:Fod5ZYNl CALL %FILENAME%
CALL "%FILENAME%"
職場のパソコン変えたら上で動かなくて下に修正することになったんだけど仕様変更あった?
CALL "%FILENAME%"
職場のパソコン変えたら上で動かなくて下に修正することになったんだけど仕様変更あった?
346デフォルトの名無しさん
2021/08/25(水) 17:21:04.65ID:sbFyoxUW FILENAMEに区切り文字は無い?
347デフォルトの名無しさん
2021/08/25(水) 18:09:16.31ID:eN7VzoDp echo onなら環境変数展開後のコマンドラインが表示される
なにがおかしいのかステップ実行で確認してから質問してくれ
なにがおかしいのかステップ実行で確認してから質問してくれ
348デフォルトの名無しさん
2021/08/25(水) 18:59:42.87ID:rpvOn9yc >>347
ステップ実行して抜き出したのがこれなんだ
ステップ実行して抜き出したのがこれなんだ
349デフォルトの名無しさん
2021/08/25(水) 19:00:54.62ID:rpvOn9yc >>346
Onedrive同期してるフォルダーだからスペースとか今までなかったの増えてるかも
Onedrive同期してるフォルダーだからスペースとか今までなかったの増えてるかも
350デフォルトの名無しさん
2021/08/25(水) 19:11:06.73ID:sbFyoxUW 区切り文字あればそれが原因でしょ
引数がフルパスなら上位フォルダもチェック
念の為にきくけどバッチファイルだよね
引数がフルパスなら上位フォルダもチェック
念の為にきくけどバッチファイルだよね
351デフォルトの名無しさん
2021/08/25(水) 20:18:52.59ID:lzuDi78b >>345
こういう輩は、なんで自分以外がおかしい前提で話をするんだろう?
こういう輩は、なんで自分以外がおかしい前提で話をするんだろう?
352デフォルトの名無しさん
2021/08/25(水) 21:55:38.08ID:Fod5ZYNl >>351
こういうやつって掲示板にいる価値ないわ
こういうやつって掲示板にいる価値ないわ
353デフォルトの名無しさん
2021/08/25(水) 22:12:01.88ID:HCLFH+1o 差し支えの無い範囲でFILENAMEの中身とかバッチを見せればいいのでは?
354デフォルトの名無しさん
2021/08/26(木) 04:16:32.18ID:UZ8JqWyB 少なくともcmdにそんな仕様変更などあるわけ無いからね
355デフォルトの名無しさん
2021/08/26(木) 04:17:53.32ID:UZ8JqWyB 潜在バグが表に出ただけで大騒ぎすな
全部bat作ったお前が悪い
全部bat作ったお前が悪い
356デフォルトの名無しさん
2021/08/26(木) 06:46:44.11ID:dNXcmjRL FILENAME がフルパスで環境変わってスペース含むようになったとかかな
357デフォルトの名無しさん
2021/08/26(木) 16:42:40.02ID:LxJHntSN >>342
%%%%a→%%a
%%%%a→%%a
358デフォルトの名無しさん
2021/08/30(月) 09:59:58.73ID:2ApHZNp2 %FILENAME%に空白が含まれたら、最初の空白までが%1になるの当たり前じゃん
これを考え落とすって、8.3時代で頭の更新が止まったままの化石だね
これを考え落とすって、8.3時代で頭の更新が止まったままの化石だね
359デフォルトの名無しさん
2021/08/30(月) 10:57:48.15ID:cyOwxYqr まあ空白とは限らないけどね
360デフォルトの名無しさん
2021/09/01(水) 12:25:22.16ID:BpsqJM8W 複数動画ファイルをバッチにドロップしてH265で再エンコードしたいです。保存先はドロップ元と同じです。自分で作ってみたのですがうまくいきませんでした。改善点を教えてほしいです
@echo off
%~d1
cd "%~p1"
type nul > ./files.txt
SET NAME_1=%~n1
SET NAME_2=%~n2
SET NAME_3=%~n3
SET NAME_4=%~n4
SET NAME_5=%~n5
:start
IF "%~1"=="" GOTO ffmpegstart
IF "%~x1" == ".MP4" GOTO add
IF "%~x1" == ".mp4" GOTO add
GOTO next
:add
echo file "%~1" >> ./files.txt
:next
SHIFT
GOTO start
:ffmpegstart
ffmpeg.exe -i "%~p1files.txt" -c:v libx265 -c:a copy -crf 22 -tag:v hvc1 "%~p1"%NAME_1%""_k_h265.mp4"
pause
ドロップせずに、パスを書いて実行したら成功はしました。
@echo off
%~d1
cd "%~p1"
type nul > ./files.txt
SET NAME_1=%~n1
SET NAME_2=%~n2
SET NAME_3=%~n3
SET NAME_4=%~n4
SET NAME_5=%~n5
:start
IF "%~1"=="" GOTO ffmpegstart
IF "%~x1" == ".MP4" GOTO add
IF "%~x1" == ".mp4" GOTO add
GOTO next
:add
echo file "%~1" >> ./files.txt
:next
SHIFT
GOTO start
:ffmpegstart
ffmpeg.exe -i "%~p1files.txt" -c:v libx265 -c:a copy -crf 22 -tag:v hvc1 "%~p1"%NAME_1%""_k_h265.mp4"
pause
ドロップせずに、パスを書いて実行したら成功はしました。
361デフォルトの名無しさん
2021/09/01(水) 12:38:53.45ID:3LGwAbit たから echo onにしろっつってんだろ
362デフォルトの名無しさん
2021/09/01(水) 16:04:27.85ID:rR7+iwTB @echo off
:LOOP
if not exist "%~nx1" pause &exit /b
if exist "%~n1_k_h265.mp4" echo ERROR: 出力と同名のファイルが存在します&pause &exit /b
ffmpeg.exe -i "%~nx1" -c:v libx265 -c:a copy -crf 22 -tag:v hvc1 "%~n1_k_h265.mp4"
shift /1
goto :LOOP
:LOOP
if not exist "%~nx1" pause &exit /b
if exist "%~n1_k_h265.mp4" echo ERROR: 出力と同名のファイルが存在します&pause &exit /b
ffmpeg.exe -i "%~nx1" -c:v libx265 -c:a copy -crf 22 -tag:v hvc1 "%~n1_k_h265.mp4"
shift /1
goto :LOOP
363デフォルトの名無しさん
2021/09/01(水) 17:15:47.13ID:79X4wBHs364デフォルトの名無しさん
2021/09/01(水) 17:35:20.23ID:JwKVF6M3 @echo off って完成してからつけるものじゃないのか
最初からあるなんて随分と自信があるんだなぁ
最初からあるなんて随分と自信があるんだなぁ
365デフォルトの名無しさん
2021/09/01(水) 17:36:38.68ID:3SVggb9G だよな
366デフォルトの名無しさん
2021/09/01(水) 21:20:41.59ID:CWQ1EA8H >>362
ありがとうございます!
ありがとうございます!
367デフォルトの名無しさん
2021/09/01(水) 21:32:18.07ID:79X4wBHs 丸投げ質問はやめてくれ
368デフォルトの名無しさん
2021/09/01(水) 21:55:30.34ID:t7KCJs9B なんだ、>>362でうまくいったのか
つまりエラーは変換先のファイルが存在しててffmpegでエラーが出たってことだったのか
俺はエラー内容が書かれてなかったんで他のことを考えてたよ
"あい うえお.mp4"とかパスに半角空白が無くて全角空白がある場合とかね
つまりエラーは変換先のファイルが存在しててffmpegでエラーが出たってことだったのか
俺はエラー内容が書かれてなかったんで他のことを考えてたよ
"あい うえお.mp4"とかパスに半角空白が無くて全角空白がある場合とかね
369デフォルトの名無しさん
2021/09/01(水) 21:55:32.25ID:MGC13/Ge はいw
370デフォルトの名無しさん
2021/09/01(水) 22:51:40.87ID:79X4wBHs -i のところやろ
371デフォルトの名無しさん
2021/09/01(水) 23:03:16.29ID:UTT/foLD 例えば、デスクトップにショートカットを作る。
コマンドプロンプトを起動して、Ruby スクリプト・a.rb を実行する
リンク先
C:\Windows\System32\cmd@.exe /k "ruby C:/Users/Owner/Documents/a.rb"
(ただし、書き込めないので、間に@を入れました)
作業フォルダ
C:\Users\Owner\Desktop
例えば、a.rb 内では、以下のようにRubyスクリプト内で、
7zip を起動して、ドロップしたファイルのSHA256 ハッシュ値を求める
command = "C:/Program Files/7-Zip/7z.exe"
option = " h -scrcsha256 "
ARGV.select { |full_path| File.file?( full_path ) } # ファイルのみ
.each do |full_path|
res = `#{ '"' + command + '"' + option + '"' + full_path + '"' }` # コマンド実行
puts full_path + res + ( "-" * 20 )
end
(ARGV は配列で、そこにコマンドライン引数・ドロップしたファイルパスが渡ってくる)
それで、ショートカットに、複数のファイルをdrag&drop すると、
コマンドプロンプトが起動して、各ファイルのハッシュ値が求められる
ただし、空白入りの実行ファイルのパスの前後を、"〜" で囲む事で、
Program Files の空白文字も処理できるが、
ドロップしたファイルパスに空白文字があると、
パスの前後を、"〜" で囲んでも、エラーになって処理できない
コマンドプロンプトを起動して、Ruby スクリプト・a.rb を実行する
リンク先
C:\Windows\System32\cmd@.exe /k "ruby C:/Users/Owner/Documents/a.rb"
(ただし、書き込めないので、間に@を入れました)
作業フォルダ
C:\Users\Owner\Desktop
例えば、a.rb 内では、以下のようにRubyスクリプト内で、
7zip を起動して、ドロップしたファイルのSHA256 ハッシュ値を求める
command = "C:/Program Files/7-Zip/7z.exe"
option = " h -scrcsha256 "
ARGV.select { |full_path| File.file?( full_path ) } # ファイルのみ
.each do |full_path|
res = `#{ '"' + command + '"' + option + '"' + full_path + '"' }` # コマンド実行
puts full_path + res + ( "-" * 20 )
end
(ARGV は配列で、そこにコマンドライン引数・ドロップしたファイルパスが渡ってくる)
それで、ショートカットに、複数のファイルをdrag&drop すると、
コマンドプロンプトが起動して、各ファイルのハッシュ値が求められる
ただし、空白入りの実行ファイルのパスの前後を、"〜" で囲む事で、
Program Files の空白文字も処理できるが、
ドロップしたファイルパスに空白文字があると、
パスの前後を、"〜" で囲んでも、エラーになって処理できない
372デフォルトの名無しさん
2021/09/01(水) 23:06:19.43ID:79X4wBHs 突然どうした?
373デフォルトの名無しさん
2021/09/01(水) 23:11:28.11ID:79X4wBHs ハッシュほしいならcertutilつかえば
374371
2021/09/01(水) 23:21:55.11ID:UTT/foLD ハッシュ値を求めるのは、単なる例え。
ffmpeg の代わりに使っただけ
Ruby スクリプト内で、別のプログラムを呼ぶと、
ドロップされたファイルパス内の空白文字で、はまると言うこと
ffmpeg の代わりに使っただけ
Ruby スクリプト内で、別のプログラムを呼ぶと、
ドロップされたファイルパス内の空白文字で、はまると言うこと
375デフォルトの名無しさん
2021/09/01(水) 23:24:46.32ID:RTATUgNE こんなところにまでruby基地がw
376デフォルトの名無しさん
2021/09/02(木) 09:08:23.07ID:7LFIE/54 偉ぶりたい底辺コーダーや引きこもりがここぞとばかりにワラワラとw
377371
2021/09/02(木) 11:56:43.51ID:SBJQlu/e >>371
に書いたように、コマンドプロンプトから、Ruby スクリプトを起動する方法では、
ドロップしたファイルパスに空白文字があると、バグる
PowerShell から、Ruby スクリプトを起動する方法では、
ドロップした複数のファイルパスを渡す方法が分からない
結局、以下のように、Ruby スクリプトを直接起動する方法では、
空白文字でも、複数のファイルパスでも、バグらない
ショートカットのリンク先
C:\Ruby25-x64\bin\ruby.exe C:/Users/Owner/Documents/a.rb
puts ARGV # ドロップした複数のファイルパスの配列
sleep # 出力したコマンドプロンプト画面を閉じないようにする
に書いたように、コマンドプロンプトから、Ruby スクリプトを起動する方法では、
ドロップしたファイルパスに空白文字があると、バグる
PowerShell から、Ruby スクリプトを起動する方法では、
ドロップした複数のファイルパスを渡す方法が分からない
結局、以下のように、Ruby スクリプトを直接起動する方法では、
空白文字でも、複数のファイルパスでも、バグらない
ショートカットのリンク先
C:\Ruby25-x64\bin\ruby.exe C:/Users/Owner/Documents/a.rb
puts ARGV # ドロップした複数のファイルパスの配列
sleep # 出力したコマンドプロンプト画面を閉じないようにする
378デフォルトの名無しさん
2021/09/02(木) 12:14:08.51ID:ctEO1PZh379デフォルトの名無しさん
2021/09/02(木) 12:46:43.02ID:6AISeI88380デフォルトの名無しさん
2021/09/02(木) 13:31:10.74ID:ctEO1PZh >>379
https://www.google.com/search?q=windows+%E3%83%90%E3%83%83%E3%83%81+%E5%85%A5%E9%96%80
1ページ目に表示されてるサイト全部巡って読めば少しは分かるようになると思うよ
https://www.google.com/search?q=windows+%E3%83%90%E3%83%83%E3%83%81+%E5%85%A5%E9%96%80
1ページ目に表示されてるサイト全部巡って読めば少しは分かるようになると思うよ
381371
2021/09/02(木) 13:39:27.82ID:SBJQlu/e Ruby では、>>377
に書いたように、起動引数・ARGV は配列で、
そこに、ドロップした複数のファイルパスが入ってくる
出力
C:\Users\Owner\Documents\x
C:\Users\Owner\Documents\あ.txt
フォルダx と、ファイル・あ.txt
に書いたように、起動引数・ARGV は配列で、
そこに、ドロップした複数のファイルパスが入ってくる
出力
C:\Users\Owner\Documents\x
C:\Users\Owner\Documents\あ.txt
フォルダx と、ファイル・あ.txt
382デフォルトの名無しさん
2021/09/02(木) 13:48:04.44ID:siHMRGTz >>378
知らないけどffmpegが終わるまで待ちたいのでは
知らないけどffmpegが終わるまで待ちたいのでは
383デフォルトの名無しさん
2021/09/02(木) 14:17:42.40ID:D5kjhyGc >>379
前の質問もそうだが、どうして現象を説明しないの?
俺らが君のPCの画面やファイルを眺められるわけないじゃん
エラーなら、入力した内容やファイル内容やどこまで実行されててどういう状態になってるとか書かないとわからんだろ
あと362なら先頭行を削除して実行すればpauseで終了時点の状態がわかるだろ
前の質問もそうだが、どうして現象を説明しないの?
俺らが君のPCの画面やファイルを眺められるわけないじゃん
エラーなら、入力した内容やファイル内容やどこまで実行されててどういう状態になってるとか書かないとわからんだろ
あと362なら先頭行を削除して実行すればpauseで終了時点の状態がわかるだろ
384デフォルトの名無しさん
2021/09/02(木) 14:24:25.53ID:D5kjhyGc あと一個とか言ったけど、以前エラーになったオペレーションだと正常になったけど
新たに別のケースが出てきたってことか?
それとも以前エラーになったものは試してないってことか?
即答でありがとうなんて書けばこっちは正常になったと勘違いするだろ
あと、エラー状態は>>368の場合に該当しなかったということでいいか?
新たに別のケースが出てきたってことか?
それとも以前エラーになったものは試してないってことか?
即答でありがとうなんて書けばこっちは正常になったと勘違いするだろ
あと、エラー状態は>>368の場合に該当しなかったということでいいか?
385デフォルトの名無しさん
2021/09/02(木) 15:55:55.97ID:e/2zM0cp >>379
コピペったバッチはShiftJISで保存した?
ドラッグ&ドロップするファイルの上位ディレクトリの名前かファイル名に半角スペースを含めてもう一度試してみ
ファイルやパスにShiftJIS外の文字や記号を含んでいるなら削除
それでもダメだったらファイル類を「パスのコピー」してここに貼ってみな
コピペったバッチはShiftJISで保存した?
ドラッグ&ドロップするファイルの上位ディレクトリの名前かファイル名に半角スペースを含めてもう一度試してみ
ファイルやパスにShiftJIS外の文字や記号を含んでいるなら削除
それでもダメだったらファイル類を「パスのコピー」してここに貼ってみな
386デフォルトの名無しさん
2021/09/02(木) 19:03:44.33ID:lSTkj0Rg >どうして現象を説明しないの?
馬鹿につきあって解答する馬鹿がいるからです
馬鹿につきあって解答する馬鹿がいるからです
387デフォルトの名無しさん
2021/09/03(金) 08:16:34.23ID:61QsYzlD echoを理解できない初心者に説明しろと言っても無理
388デフォルトの名無しさん
2021/09/03(金) 08:53:30.59ID:VqiIv6Pi え、ちょっw(echo)
389デフォルトの名無しさん
2021/09/03(金) 19:05:48.55ID:nhGnJ2O1 素直にコード貼るだけ全然優良でしょ
オレオレ用語使う、コード端折る、妙にプライドがある奴はマジで神経擦り減る
オレオレ用語使う、コード端折る、妙にプライドがある奴はマジで神経擦り減る
390デフォルトの名無しさん
2021/09/04(土) 00:32:37.15ID:ExeocnPJ ほんとにな
完全同意だわ
完全同意だわ
391デフォルトの名無しさん
2021/09/04(土) 08:48:55.08ID:fYT9QIuD echoなんてデバッグ用に変数の値を見たくなったときにでも覚えたら良いさ
392デフォルトの名無しさん
2021/09/05(日) 20:59:18.22ID:h9G3o9Tj USBデバイス(マイク)の有効/無効を切り替えるバッチファイルを書いているんですが、
forループ内でファイルパスを展開してコマンドを実行する部分で躓いています。
()内での %DEVCON% (devcon.exeの絶対パス)の展開部分ですが
''や、usebackqを使用して``とすると、にすると半角スペースごとに別文字列として展開される
``にすると絶対パスの先頭に`が付いたパスとして認識され、ファイルが見つからないエラーになる
forループの()内で変数を展開してコマンドを実行する方法が分かりません。
以下が作成したファイルの内容です。ご教示お願いします。
@echo off
:: devcon.exeのパス(64bit)
@set DEVCON="C:\Program Files (x86)\Windows Kits\10\Tools\x64\devcon.exe"
:: マイクの無効と有効
:: AT2020USB+
:: %DEVCON% disable "USB\VID_0909&PID_001C&REV_0100&MI_00"
:: %DEVCON% enable "USB\VID_0909&PID_001C&REV_0100&MI_00"
FOR /F "tokens=3 usebackq" %%a IN (`%DEVCON% status "USB\VID_0909&PID_001C&REV_0100&MI_00" ^| find "Driver is"`) do set "STATUS=%%a"
IF "%STATUS%" == "running." (
%DEVCON% "USB\VID_0909&PID_001C&REV_0100&MI_00"
) ELSE (
%DEVCON% enable "USB\VID_0909&PID_001C&REV_0100&MI_00"
)
forループ内でファイルパスを展開してコマンドを実行する部分で躓いています。
()内での %DEVCON% (devcon.exeの絶対パス)の展開部分ですが
''や、usebackqを使用して``とすると、にすると半角スペースごとに別文字列として展開される
``にすると絶対パスの先頭に`が付いたパスとして認識され、ファイルが見つからないエラーになる
forループの()内で変数を展開してコマンドを実行する方法が分かりません。
以下が作成したファイルの内容です。ご教示お願いします。
@echo off
:: devcon.exeのパス(64bit)
@set DEVCON="C:\Program Files (x86)\Windows Kits\10\Tools\x64\devcon.exe"
:: マイクの無効と有効
:: AT2020USB+
:: %DEVCON% disable "USB\VID_0909&PID_001C&REV_0100&MI_00"
:: %DEVCON% enable "USB\VID_0909&PID_001C&REV_0100&MI_00"
FOR /F "tokens=3 usebackq" %%a IN (`%DEVCON% status "USB\VID_0909&PID_001C&REV_0100&MI_00" ^| find "Driver is"`) do set "STATUS=%%a"
IF "%STATUS%" == "running." (
%DEVCON% "USB\VID_0909&PID_001C&REV_0100&MI_00"
) ELSE (
%DEVCON% enable "USB\VID_0909&PID_001C&REV_0100&MI_00"
)
393392
2021/09/05(日) 21:01:57.75ID:h9G3o9Tj 抜けがありました
14 %DEVCON% "USB\VID_0909&PID_001C&REV_0100&MI_00"
14 %DEVCON% disable "USB\VID_0909&PID_001C&REV_0100&MI_00"
14 %DEVCON% "USB\VID_0909&PID_001C&REV_0100&MI_00"
14 %DEVCON% disable "USB\VID_0909&PID_001C&REV_0100&MI_00"
394デフォルトの名無しさん
2021/09/05(日) 21:50:58.36ID:qFDUcsKU カレントフォルダをC:\Program Files (x86)\Windows Kits\10\Tools\x64 に移動してから
set DEVCON="devcon.exe" にしてみるとか
set DEVCON="devcon.exe" にしてみるとか
395デフォルトの名無しさん
2021/09/05(日) 22:12:50.15ID:GdXH1yQe >>392
FOR /F "tokens=3" %%a IN ('^"%DEVCON% status "USB\VID_0909&PID_001C&REV_0100&MI_00" ^| find "Driver is"^"') DO set "STATUS=%%a"
FOR /F "tokens=3" %%a IN ('^"%DEVCON% status "USB\VID_0909&PID_001C&REV_0100&MI_00" ^| find "Driver is"^"') DO set "STATUS=%%a"
396デフォルトの名無しさん
2021/09/05(日) 22:17:55.22ID:GdXH1yQe397デフォルトの名無しさん
2021/09/05(日) 23:48:28.37ID:UFxCuC9Y 漏れは、ショートカットにDrag and Drop してみた結果、
結論として、コマンドプロンプトでは、ファイルパス中の半角空白を処理できない
PowerShell(PS)でも難しいかも
漏れは結局、Ruby を使っている
特に、コマンドプロンプトだけはやめて、PSを使った方が、マシかも
結論として、コマンドプロンプトでは、ファイルパス中の半角空白を処理できない
PowerShell(PS)でも難しいかも
漏れは結局、Ruby を使っている
特に、コマンドプロンプトだけはやめて、PSを使った方が、マシかも
398デフォルトの名無しさん
2021/09/05(日) 23:54:22.00ID:GdXH1yQe 上のはそういう話じゃない
399デフォルトの名無しさん
2021/09/06(月) 00:15:22.61ID:x7bnJBcc >>396
両端に"がこなくするってのはアイデアだな
両端に"がこなくするってのはアイデアだな
401デフォルトの名無しさん
2021/09/06(月) 07:15:12.30ID:yJI9//ND ほえ〜、横からだけど目からウロコだわ >>396
為になった、さんきゅう
為になった、さんきゅう
402デフォルトの名無しさん
2021/09/17(金) 15:37:36.70ID:gyqQtjrG 質問です。
メモ帳に「移動元のファイルの場所 移動先のファイルの場所」が絶対パスで半角スペースで区切られています。
これを読み込み指示通りにファイルを移動させたいのですがどのように書くといいでしょうか?
また、リネームする必要があるファイルもあるのですがどうするといいでしょうか?
「C:\aa\bb.jpg D:\aa\cc.jpg」
メモ帳に「移動元のファイルの場所 移動先のファイルの場所」が絶対パスで半角スペースで区切られています。
これを読み込み指示通りにファイルを移動させたいのですがどのように書くといいでしょうか?
また、リネームする必要があるファイルもあるのですがどうするといいでしょうか?
「C:\aa\bb.jpg D:\aa\cc.jpg」
403デフォルトの名無しさん
2021/09/17(金) 17:20:03.57ID:i/XCCF5h forで読んでmoveで移動
もしechoの分からない人ならやめとけ
もしechoの分からない人ならやめとけ
404デフォルトの名無しさん
2021/09/17(金) 22:37:54.43ID:vaLPoEyz 「for バッチファイル」でググって訳がわからないようなら 、適当なエディタで開いて、" でくくるのを前提に
行頭、スペースとドライブ文字、行末、を置換してbatファイルとして名前を付けて保存
move "C:\aa\bb.jpg" "D:\aa\cc.jpg"
みたいになるように
なを、ファイル名にsjisじゃない何かが無い前提
行頭、スペースとドライブ文字、行末、を置換してbatファイルとして名前を付けて保存
move "C:\aa\bb.jpg" "D:\aa\cc.jpg"
みたいになるように
なを、ファイル名にsjisじゃない何かが無い前提
405デフォルトの名無しさん
2021/09/17(金) 23:29:19.93ID:O1PoA15N バッチは、ややこしい。
Power Shell, Ruby などでやれば?
それに、そのファイルは半角空白で区切っているけど、
Windows では、ファイルパスに半角空白も入るから、バグるので、
普通に、CSV 形式にすると良い。
その代わり、CSVパーサーが必要になるけど
タブ区切りのTSV も良い。
さすがにタブ文字・改行コードは、ファイルパスには入らないだろうから、簡単に取り出せる
Power Shell, Ruby などでやれば?
それに、そのファイルは半角空白で区切っているけど、
Windows では、ファイルパスに半角空白も入るから、バグるので、
普通に、CSV 形式にすると良い。
その代わり、CSVパーサーが必要になるけど
タブ区切りのTSV も良い。
さすがにタブ文字・改行コードは、ファイルパスには入らないだろうから、簡単に取り出せる
406デフォルトの名無しさん
2021/09/18(土) 00:13:27.23ID:q5iJ5tLu for /f "tokens=1* delims= " %%a in (List.txt) do (
set ERR=
if not exist "%%~a" set /a ERR+=2
if exist "%%~b" set /a ERR+=1
if not defined ERR (move "%%~a" "%%~b") else call echo ERROR:%%ERR%% "%%~a" "%%~b">>errlog.txt
)
pause
set ERR=
if not exist "%%~a" set /a ERR+=2
if exist "%%~b" set /a ERR+=1
if not defined ERR (move "%%~a" "%%~b") else call echo ERROR:%%ERR%% "%%~a" "%%~b">>errlog.txt
)
pause
407デフォルトの名無しさん
2021/09/18(土) 06:22:21.02ID:KTV+OCDB 横からすまんが半角スペース入りパスだとダメだよそれ
408デフォルトの名無しさん
2021/09/18(土) 06:34:39.03ID:KTV+OCDB 移動先フォルダがないとmdで作成してやらんとエラーになるし
移動先に同名の既存ファイルがあるかも知れないし
移動先に同名の既存ファイルがあるかも知れないし
409デフォルトの名無しさん
2021/09/18(土) 07:21:16.02ID:ALBIVGfh410デフォルトの名無しさん
2021/09/18(土) 08:54:34.49ID:d7JASW2c411デフォルトの名無しさん
2021/09/18(土) 11:01:52.40ID:7qS0Ehxx 書き捨てにするようなコードを「かも知れない」で必要以上無駄に肥大化させるのはゴミ屋敷住人と同じ愚かな思考
412デフォルトの名無しさん
2021/09/18(土) 12:50:48.70ID:1ehO0L4U 世の中にはプログラムすること自体が好きな人がいるんだよ
誰もが間違いなくその恩恵にあずかっているのに小馬鹿にするやつは
自分への軽蔑の視線に気付かない愚か者だ
誰もが間違いなくその恩恵にあずかっているのに小馬鹿にするやつは
自分への軽蔑の視線に気付かない愚か者だ
413デフォルトの名無しさん
2021/09/18(土) 21:08:19.94ID:OLaJCV9P 恩恵w
言い訳が論点ズレてく感じホンモノのガイジ臭
言い訳が論点ズレてく感じホンモノのガイジ臭
414デフォルトの名無しさん
2021/09/18(土) 21:14:40.28ID:PJ3Z1C6G こんなスレで一体、何を争う?
415デフォルトの名無しさん
2021/09/18(土) 21:22:43.49ID:gRgRQYIa 別にこのスレでも書いてれば気にもとめないけどね
ただ今回はコードも貼らずに注文だけ言ってたからカチンとくる奴もいるだろうさ
ただ今回はコードも貼らずに注文だけ言ってたからカチンとくる奴もいるだろうさ
416デフォルトの名無しさん
2021/09/19(日) 03:42:58.81ID:uWgOxiqk つまり自分は書けないクセに「プログラムすること自体が好きな人」とやらにネタを提供してやってるんだと
そして自分のお陰で皆が恩恵に預かれるのだから自分は良い行いをしているんだと言いたいワケか
おいおい何様だよw
そして自分のお陰で皆が恩恵に預かれるのだから自分は良い行いをしているんだと言いたいワケか
おいおい何様だよw
417デフォルトの名無しさん
2021/09/19(日) 06:31:47.09ID:K9vn79WO C++と違ってideoneみたいのないからな
418デフォルトの名無しさん
2021/09/19(日) 09:03:44.20ID:xPOv8IOw 空白付ならデリミタを:にしてツギハギでいけそう
419デフォルトの名無しさん
2021/09/19(日) 12:51:30.97ID:/yxUr6Cy rm -f /
だよって教えればいい
だよって教えればいい
420392
2021/09/20(月) 00:58:53.63ID:we+8yYct -rfじゃないとほとんど何も消えないでしょ
421デフォルトの名無しさん
2021/09/22(水) 13:43:55.48ID:KUdKcr1X 今時バッチなんて書いてるのは物好きです
おれは物好き
バッドノウハウ大好きだ♥
おれは物好き
バッドノウハウ大好きだ♥
422デフォルトの名無しさん
2021/09/22(水) 15:39:53.65ID:oingLDSY バッチの利点
バッチ自体はウィルスにやられない
みんな違うから狙われにくい
バッチ自体はウィルスにやられない
みんな違うから狙われにくい
423デフォルトの名無しさん
2021/09/22(水) 18:39:59.79ID:1Sr76Ukf ウイルスは知らんがランサムウェアで暗号化されてナイナイはされるんじゃね?
424デフォルトの名無しさん
2021/09/22(水) 19:49:34.87ID:HbYg107O これでバッチつくればいいぉw
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
425デフォルトの名無しさん
2021/10/13(水) 18:17:21.36ID:HAnV1WZK バッチ
426デフォルトの名無しさん
2021/10/13(水) 18:25:53.79ID:HAnV1WZK バッチの作り方聞きたくてコメントを書きこうもうとしたら、
427デフォルトの名無しさん
2021/10/13(水) 18:26:29.06ID:HAnV1WZK >>426
あれ、つづき・・・
あれ、つづき・・・
428デフォルトの名無しさん
2021/10/13(水) 18:29:35.54ID:HAnV1WZK >>427
質問かこうとして、バッチのイメージを書くとなぜか、ERRORで弾かれる
質問かこうとして、バッチのイメージを書くとなぜか、ERRORで弾かれる
429デフォルトの名無しさん
2021/10/13(水) 18:36:10.32ID:Veybj1d9 cmd .exeを書いたとかそんなことか?
430デフォルトの名無しさん
2021/10/13(水) 18:45:56.14ID:bhMjP/u8 作り方w
そこから?
そこから?
431デフォルトの名無しさん
2021/10/13(水) 18:47:46.52ID:HAnV1WZK FOR DO
432デフォルトの名無しさん
2021/10/13(水) 18:48:57.34ID:HAnV1WZK しつれいしました。
fo do型式の構文を書いたらerrorになってしまう・・・
fo do型式の構文を書いたらerrorになってしまう・・・
433デフォルトの名無しさん
2021/10/13(水) 18:49:34.04ID:HAnV1WZK for do型式でした
434デフォルトの名無しさん
2021/10/13(水) 18:51:20.12ID:mAb+BQMQ for /?
これ以上の説明は掲示板では不可能だからな
これ以上の説明は掲示板では不可能だからな
435デフォルトの名無しさん
2021/10/13(水) 20:37:11.25ID:wdMk643f ここはコマンドインジェクション対策が入ってるからコード載せたいならgistとかに上げてそのURL貼ったほうが良い
436デフォルトの名無しさん
2021/10/13(水) 20:51:02.94ID:NsQsq1qz for /L %i in (0.5=1=11) do echo %i
437デフォルトの名無しさん
2021/10/13(水) 21:17:55.30ID:NsQsq1qz cmd.exe /c command
438デフォルトの名無しさん
2021/10/14(木) 02:43:30.00ID:TuHqoxKX439デフォルトの名無しさん
2021/10/15(金) 20:24:48.38ID:NLG7IfQt UUエンコードしたらダメかな
440デフォルトの名無しさん
2021/10/15(金) 21:13:25.70ID:53pJc6NQ Base64の方がいいんじゃね
certutilで変換できる
certutilで変換できる
441デフォルトの名無しさん
2021/10/15(金) 22:55:44.35ID:NLG7IfQt 書込みテスト
C:\>certutil -f -encode in.bat in.b64
C:\>certutil -f -decode in.b64 out.bat
C:\>type in.b64
-----BEGIN CERTIFICATE-----
ZWNobyBoZWxsbyB3b3JsZA0K
-----END CERTIFICATE-----
C:\>
C:\>certutil -f -encode in.bat in.b64
C:\>certutil -f -decode in.b64 out.bat
C:\>type in.b64
-----BEGIN CERTIFICATE-----
ZWNobyBoZWxsbyB3b3JsZA0K
-----END CERTIFICATE-----
C:\>
442デフォルトの名無しさん
2021/10/17(日) 13:44:53.76ID:0LRNIe6v■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【日本大使館】中国在留邦人は安全確保を [ぐれ★]
- 習政権、高市首相への態度硬化 台湾有事発言で連日非難 中国 ★10 [ぐれ★]
- 【外国人問題】小野田紀美担当相「不法就労や不法滞在は許さない」 [シャチ★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 中国で「クレしん」公開延期 対日報復、エンタメに波及 [蚤の市★]
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」 [冬月記者★]
- 【朗報】愛国烈士ほんこん、高市首相のために長文を投稿wwwwwwwwwwwww [834922174]
- ニートしかいない時間ってマジでつまんないよな
- 有識者「高市総理が発言を撤回したり、辞職するしかないと言っている人は、それで日中関係が今まで通りになると思ってる?」 [834922174]
- 千速は誰とのカップリングがエロいのか
- 高市コイン、155円突破wwwwwwwwww [246620176]
- おじゃる丸をまったり待機するスレ🏡
