【.cmd】 バッチファイルスクリプト %15 【.bat】 (819レス)
【.cmd】 バッチファイルスクリプト %15 【.bat】 http://mevius.5ch.net/test/read.cgi/tech/1663153441/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
25: デフォルトの名無しさん [sage] 2022/10/08(土) 17:43:53.04 ID:f2a8Snt9 空の標準出力をリダイレクトで書き込んでるからだろう http://mevius.5ch.net/test/read.cgi/tech/1663153441/25
26: デフォルトの名無しさん [sage] 2022/10/08(土) 17:48:05.02 ID:R/0NVeNc なぞなぞじゃね? http://mevius.5ch.net/test/read.cgi/tech/1663153441/26
27: デフォルトの名無しさん [sage] 2022/10/08(土) 18:00:30.98 ID:zk6uj/6h コマンドプロンプトからバッチファイルにコピペしたら間違えて作業フォルダが付いてしまって 何かのコマンドなのでしょうか http://mevius.5ch.net/test/read.cgi/tech/1663153441/27
28: デフォルトの名無しさん [sage] 2022/10/08(土) 18:59:40.31 ID:f2a8Snt9 オカルトかな? ん?お前のパソコン何かおかしくね? http://mevius.5ch.net/test/read.cgi/tech/1663153441/28
29: デフォルトの名無しさん [sage] 2022/10/08(土) 21:15:53.37 ID:4RiXxOsU >>27 日本語でOK http://mevius.5ch.net/test/read.cgi/tech/1663153441/29
30: デフォルトの名無しさん [sage] 2022/10/08(土) 21:20:11.87 ID:NCKRr8hU エラーになってもリダイレクトは実行されちゃうんだな バグとちゃうか http://mevius.5ch.net/test/read.cgi/tech/1663153441/30
31: デフォルトの名無しさん [sage] 2022/10/08(土) 21:31:19.08 ID:bRwGYufv プロンプトまでバッチにコピペするなよ http://mevius.5ch.net/test/read.cgi/tech/1663153441/31
32: デフォルトの名無しさん [sage] 2022/10/09(日) 11:18:46.47 ID:yk0ofCIK >>30 指定された実行対象ファイルがない、 というのは実行時エラーなので(構文エラーではない) そのエラーメッセージをファイルリダイレクトして記録できる事は有益。 なのでバグ(仕様バグ)ではないと思われる。 http://mevius.5ch.net/test/read.cgi/tech/1663153441/32
33: デフォルトの名無しさん [sage] 2022/10/09(日) 12:38:18.26 ID:r7gKIzvL 一貫性のある動きだよな エラー出力は欲しいけど標準出力はリダイレクト自体をなかったことにしてくれというのは無理がある そもそもリダイレクト先がログファイルなら気にも留めないような話 びっくりする理由があるとしたらexeにリダイレクトしても容赦なく書き換えられるという点で、コマンドラインはそういう点で結構慈悲がない ある程度はパワーユーザー向けという位置付けなので気をつけるしかない http://mevius.5ch.net/test/read.cgi/tech/1663153441/33
34: デフォルトの名無しさん [sage] 2022/10/12(水) 04:44:03.67 ID:Jko2ebMR window-position異なる位置のバッチをそれぞれ作ってるのですが bat2個目を起動すると1個目の起動したバッチにつられてカスケード起動します 何か対処方法ありますでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1663153441/34
35: デフォルトの名無しさん [] 2022/10/13(木) 18:33:52.32 ID:Fb+ro4ZF UIから起動されたCMDからのバッチなのか判別する方法ありますか?LinuxでいうTERMみたいな http://mevius.5ch.net/test/read.cgi/tech/1663153441/35
36: デフォルトの名無しさん [sage] 2022/10/13(木) 20:39:40.77 ID:tHyHHwT5 うん 過去スレで全く同じ質問してる子いるから漁っておいで http://mevius.5ch.net/test/read.cgi/tech/1663153441/36
37: デフォルトの名無しさん [sage] 2022/10/30(日) 06:52:23.05 ID:i1fpLCEI zipファイルに書き込むコマンドはありますか? copy foo.txt bar.zip とやっても「bar.zipに上書きしますか?」になるだけなんですけど 上書きがしたいんじゃなくアーカイブしたいんです。 http://mevius.5ch.net/test/read.cgi/tech/1663153441/37
38: デフォルトの名無しさん [sage] 2022/10/30(日) 08:16:49.21 ID:oF72FRjI 7za.exe http://mevius.5ch.net/test/read.cgi/tech/1663153441/38
39: デフォルトの名無しさん [sage] 2022/10/30(日) 17:16:25.85 ID:RObFZ+1A compressコマンドはcabだけだったかな? pwsh -c "gh compress-archive"参照 http://mevius.5ch.net/test/read.cgi/tech/1663153441/39
40: デフォルトの名無しさん [sage] 2022/10/30(日) 20:28:18.19 ID:WT6dub7d explorerで操作すると書き込めるからコマンドありそうな気がする http://mevius.5ch.net/test/read.cgi/tech/1663153441/40
41: デフォルトの名無しさん [sage] 2022/10/30(日) 20:49:57.93 ID:JhK1ASYS zipコマンドでググれ http://mevius.5ch.net/test/read.cgi/tech/1663153441/41
42: デフォルトの名無しさん [sage] 2022/10/31(月) 15:34:40.68 ID:aCuyX04T pwsh -c "Get-help -name compress-archive" http://mevius.5ch.net/test/read.cgi/tech/1663153441/42
43: デフォルトの名無しさん [sage] 2022/10/31(月) 22:51:09.43 ID:HZxZgtz6 >>40 Explorerと同じ圧縮処理は、ExplorerのCOMオブジェクト(Shell.Application)を操作する事でできる。 確か、正式に提供した機能ではないので動作は保証しない、非推奨、みたいな扱いだった気が。 http://mevius.5ch.net/test/read.cgi/tech/1663153441/43
44: デフォルトの名無しさん [sage] 2022/11/02(水) 15:48:21.33 ID:ZBNaiNsJ 質問失礼します。 ファイル名の一部の文字列(例:4文字目から8文字目まで)を一括削除するバッチを作りたいのですが… [例]a1b2c3d4e5.m4a→a1b2e5.m4a 検索の結果、先頭4文字を削除するバッチ(下記)を見つけたので、アレンジしたいのですが、その方法がわからずにおります。 アレンジ方法がわかる方、もしくは別の方法でも構いませんので、教えて頂けないでしょうか? ------------------------ for %%i in (*) do ( if not "%%i"=="%~nx0" ( set vv=%
%i call ren %%i %%vv:~4%% ) ) ------------------------ 参考になりそうなURLでも助かります。 http://mevius.5ch.net/test/read.cgi/tech/1663153441/44
45: デフォルトの名無しさん [sage] 2022/11/02(水) 16:00:09.07 ID:ZBNaiNsJ 44>> スミマセン間違えました。2行目 [誤]例:4文字目から8文字目まで [正]例:5文字目から8文字目まで http://mevius.5ch.net/test/read.cgi/tech/1663153441/45
46: デフォルトの名無しさん [sage] 2022/11/03(木) 03:42:12.99 ID:lhbjAvOX rem ファイル名を変数に入れて set FILENAME=a1b2c3d4e5.m4a rem 4文字目から8文字目まで削除 set MODIFYNAME=%FILENAME:~0,4%%FILENAME:~8% rem リネーム ren %FILENAME% %MODIFYNAME% http://mevius.5ch.net/test/read.cgi/tech/1663153441/46
47: デフォルトの名無しさん [sage] 2022/11/03(木) 06:22:30.68 ID:7S7IyYLz @echo off :x set "a=%~n1" ren "%~1" "%a:~0,4%%a:~8%%~x1" shift if not "%~1"=="" goto x ファイル名やフォルダ名が英数字だけならこれでいけるんじゃね http://mevius.5ch.net/test/read.cgi/tech/1663153441/47
48: デフォルトの名無しさん [sage] 2022/11/03(木) 13:02:59.28 ID:yr3S2O5F >>45 > 5文字目から8文字目まで削除 set /? 1~4 %vv:~0,4% 9~ %vv:~8% > set vv=%%i > call ren %%i %%vv:~4%% set "vv=%%~ni" call ren "%%~i" "%%vv:~0,4%%%%vv:~8%%%%~xi" %%~ni %%~xi のnとかxは for /? なるべくcall使わない方が速いのでファイル名に !文字が無いなら setlocal enabledelayedexpansion して遅延展開使え 対象ファイル数が多くないとかで引数の文字数制限に掛からないのなら >>4
7 のやり方が入れ子にならず良い http://mevius.5ch.net/test/read.cgi/tech/1663153441/48
49: デフォルトの名無しさん [sage] 2022/11/03(木) 13:10:19.17 ID:P2O5CHdk 東京都、富山県、ネバダ州、東京都、東京都、雲南省、ネバダ州、東京都、みたいな数百行のfindの標準出力があって何種類の出力があるのかだけ欲しいんだけど何かスマートな方法ないですか http://mevius.5ch.net/test/read.cgi/tech/1663153441/49
50: デフォルトの名無しさん [sage] 2022/11/03(木) 14:00:45.43 ID:sS4Fs93N スマートな方法なんてバッチに無いから別のスクリプトあたれ バッチでやるなら以下みたいな感じに一意なものだけ書き出して最後に行数見るか書き出した回数を数えるか copy nul $tmp.txt for /f %%a in (findの結果とやら) do find "%%a" $tmp.txt >nul || >>$tmp.txt echo %%a for /f "delims=:" %%a in ('findstr /n "^" $tmp.txt') do set n=%%a echo %n% 新大阪と大阪みたいに項目名を含む別項目があるならfindstr /r /c:&qu
ot;^%%a$" http://mevius.5ch.net/test/read.cgi/tech/1663153441/50
51: デフォルトの名無しさん [sage] 2022/11/03(木) 15:21:55.26 ID:PVTx0HrP それほどスマートじゃないけどWSHを(batに埋め込んで)使う方法 (WSHには連想配列の要素数をカウントするものがないのでループで回してカウント) (powershellと使う方法がいいかもしれないがpowershellはイニシャルコストが大きいのでよく使う人向き) @if (0)==(0) echo off cscript //nologo /e:jscript "%~f0" < data.txt rem findstr "." data.txt|cscript //nologo /e:jscript "%~f0" goto :eof @end var table={}, data, coun
t=0; while(!WScript.StdIn.AtEndOfStream) { data = WScript.StdIn.ReadLine(); if (data.length) { table[data] += 1; WScript.Echo(data); } } for (i in table) { count++; } WScript.Echo(count); http://mevius.5ch.net/test/read.cgi/tech/1663153441/51
52: デフォルトの名無しさん [sage] 2022/11/03(木) 15:28:23.28 ID:/STCGL2q 46様、47様、48様 >>44です。 早速のご回答&アドバイス、ありがとうございました。 どの方法でもうまくrenameでき、とても参考になりました。 ただ、for文に組込むと、1つ目のファイルだけ、 2回処理が実行されてしまいます。 例えば、以下のバッチ ------------------------------------------- for %%i in (*.m4a) do ( set "vv=%%~ni" call ren "%%~i" "%%vv:~0,4%%%%vv:~8%%%%~xi" ) -----------------------------------------
-- を実行すると、 a1234567890a.m4a→a123.m4a ←2回 b1234567890b.m4a→b123890b.m4a c1234567890c.m4a→c123890c.m4a となってしまいます。 これは、私のfor文の使用法に誤りがあると考えられ ますので、自力解決すべく調べているのですが… 参考になりそうなサイトなどご存知でしたら、教えて頂けませんでしょうか? 何度も申し訳ありません。 http://mevius.5ch.net/test/read.cgi/tech/1663153441/52
53: デフォルトの名無しさん [sage] 2022/11/03(木) 15:30:10.92 ID:IcpXc6LC powershell -Command "('東京都','富山県','ネバダ州','東京都','東京都','雲南省','ネバダ州','東京都' | Sort-Object | Get-Unique ).Count" http://mevius.5ch.net/test/read.cgi/tech/1663153441/53
54: デフォルトの名無しさん [sage] 2022/11/03(木) 15:31:53.88 ID:IcpXc6LC findの標準出力ってことはこうだな powershell -Command "(find 引数 | Sort-Object | Get-Unique ).Count" http://mevius.5ch.net/test/read.cgi/tech/1663153441/54
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 765 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.010s