[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 02/23 16:05 / Filesize : 297 KB / Number-of Response : 1017
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん mailto:sage [2020/08/15(土) 07:00:26 ID:f3kW5kCx.net]
拡張子が .cmd または .bat のバッチファイルのスクリプティング(プログラミング)に関わる
質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです

※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう

過去スレ
%13 mevius.2ch.net/test/read.cgi/tech/1542779527/
%12 mevius.2ch.net/test/read.cgi/tech/1489207631/
%11 echo.2ch.net/test/read.cgi/tech/1424858999/
%10 peace.2ch.net/test/read.cgi/tech/1374205515/
%9 toro.2ch.net/test/read.cgi/tech/1335015478/
%8 toro.2ch.net/test/read.cgi/tech/1315844420/
%7 hibari.2ch.net/test/read.cgi/tech/1298873550/
%6 hibari.2ch.net/test/read.cgi/tech/1277465356/
%5 pc12.2ch.net/test/read.cgi/tech/1242268171/
%4 pc12.2ch.net/test/read.cgi/tech/1229955189/
%3 pc11.2ch.net/test/read.cgi/tech/1217860043/
%2 pc11.2ch.net/test/read.cgi/tech/1197881068/
【.cmd】 バッチファイルスクリプト %1 【.bat】
pc11.2ch.net/test/read.cgi/tech/1178281991/
バッチファイルプログラミング 3.bat
pc11.2ch.net/test/read.cgi/tech/1148485555/
バッチファイルプログラミング 2.bat
pc8.2ch.net/test/read.cgi/tech/1104911889/
バッチファイルプログラミング質問スレ
pc5.2ch.net/test/read.cgi/tech/1040614686/

62 名前:デフォルトの名無しさん mailto:sage [2020/09/13(日) 16:22:35.50 ID:rbJ0gfd+.net]
実行してないけど多分&で繋いだところで、まだ%tmp%ファイルが作られてないんじゃないかな
ついでに結果判定の行も実行前に通過しちゃいそう

63 名前:デフォルトの名無しさん mailto:sage [2020/09/13(日) 17:33:48.42 ID:rbJ0gfd+.net]
実行してみた
原因は%tmp%を変更したからだね(おそらくregコマンドがtmpを使ってる)
%tmp%→%tmpfile%とでもしとけばいい

64 名前:デフォルトの名無しさん mailto:sage [2020/09/13(日) 17:52:08.11 ID:W8TB3CjN.net]
>>62
ID:rbJ0gfd+ さんへ

  長年の疑問が晴れました。ありがとうございました。m(_ _)m

65 名前:デフォルトの名無しさん mailto:sage [2020/09/14(月) 18:50:01.56 ID:QRPjjbWO.net]
なんじゃそれ

66 名前:デフォルトの名無しさん mailto:sage [2020/09/15(火) 08:02:48.52 ID:zq4P2IYm.net]
昔はバカコーダーの代表格だったif else if...でひたすら羅列してるやつ、くっそ遅かったのに
今win10だとforで回すより速いんだがw 試して思わず吹いたw
XP機なんてもう無いから比較出来んけど
専門用語よく分からんがプリプロセッサだかインタープリタだかがセミコンパイル?最適化?してくれるようになったん?
カビ臭いセオリーに囚われてちゃイカンようだ

67 名前:デフォルトの名無しさん mailto:sage [2020/09/15(火) 10:14:02.00 ID:QjU8NMVB.net]
for do 後の文中に call を入れると遅くなるのを何とかして欲しい。
処理時間が倍増する。下手すると何十倍もかかる

68 名前:デフォルトの名無しさん [2020/09/15(火) 10:25:56.06 ID:X+gTbBjK.net]
フロッピーディスクでディスクキャッシュ無効にしてbat走らせると
1行ごとにbatファイルを再読み込みしているのが実感できて楽しいよ

69 名前:デフォルトの名無しさん mailto:sage [2020/09/15(火) 14:56:26.93 ID:zq4P2IYm.net]
>>66
call set とかで多段展開よく使うんだけど
callの代わりにfor文にしてfor変数と遅延展開にして callやめたら確かに速くなったわ
見た目上は call set の方がシンプルで速そうなんだがなー
速い書き方模索してたので助かった. ありがとう

70 名前:デフォルトの名無しさん mailto:sage [2020/09/15(火) 15:12:45.99 ID:zo2IeaGi.net]
callの時点で子タスク生成して構文解釈まで行われるじゃん
速いはず無い



71 名前:デフォルトの名無しさん mailto:sage [2020/09/15(火) 15:29:08.58 ID:QjU8NMVB.net]
おまけにバッチ優先だから気味が悪い

@echo off
echo set a=NG > set.bat
call set a=OK
echo %a%
pause

72 名前:デフォルトの名無しさん mailto:sage [2020/09/15(火) 16:07:46.64 ID:zq4P2IYm.net]
偶にコマンド名と同じファイル名付けてトラブるバカが居るけどそれは流石にイチャモンが過ぎるだろw

73 名前:デフォルトの名無しさん mailto:sage [2020/09/15(火) 16:17:43.50 ID:QjU8NMVB.net]
普通は内部コマンド優先

74 名前:デフォルトの名無しさん [2020/09/15(火) 18:34:43.10 ID:X+gTbBjK.net]
毎回set.batがあるかpath探してるのか?

75 名前:デフォルトの名無しさん mailto:sage [2020/09/15(火) 18:52:07.91 ID:QjU8NMVB.net]
そうだと思う。たぶん exe とかも捜してる。
余計な処理で時間のロス

76 名前:デフォルトの名無しさん mailto:sage [2020/09/15(火) 19:48:46.31 ID:/ea/Q9+g.net]
callって元々バッチファイルを呼ぶためのコマンドだしな
環境変数を遅延展開するために使えるなんて公式ヘルプには載ってない

77 名前:デフォルトの名無しさん mailto:sage [2020/09/15(火) 23:46:39.63 ID:otyKrGil.net]
>>62
これ危ないね
windowsとユーザの環境変数は分けないとウィルスに悪用されそう

78 名前:デフォルトの名無しさん mailto:sage [2020/09/18(金) 22:08:23.94 ID:uEsKVG5e.net]
windows板でいい答えが出なかったんでこっちに来ました。
windows10でログオンしなければ走らないプログラム(TV録画予約ソフト)があるので、Windows の自動ログオンを有効にし、
Autoexec.batに
 rundll32 user32.dll, LockWorkStation
と記述して直ちにロックすることとしています。

しかしながら、これは不意の停電などで再起動したときの為であって、
自分自身がPCの前にいる場合は、ロック解除をしなければならないのが面倒です。

そこで、バッチファイルで
 15秒待つ
 その間に何もキーが押されなかったら、
  rundll32 user32.dll, LockWorkStation
 を実行
 何かキーが押されたら、バッチファイルを終了
としたいのですが、どうしたらいいでしょう

N88BASIC(86)だとこんなイメージ
(10行の "to 1000"は適当に調節)
10 for i=1 to 1000
20 a$=inkey$
30 if a$<>"" then goto 70
40 next i
50 rundll32 user32.dll, LockWorkStation
60 end
70 i=1000:next i
80 end

ちなみに今は、autoexec.bat に
 TIMEOUT /T 15 /NOBREAK
 rundll32 user32.dll, LockWorkStation
として、すぐに作業したい場合は15秒の間にcmdの右上のxをクリックしてコマンドプロンプトを閉じています

79 名前:デフォルトの名無しさん mailto:sage [2020/09/18(金) 22:14:12.38 ID:uEsKVG5e.net]
こちらの質問はもしかしたらスレ違いかもしれませんが。

あるフォルダ内のファイル一覧をテキストファイルに落としたいと思っています。
一太郎Ver4.3付属のMS-DOS2.11以来、DOSに慣れ親しんでいる私は、
CMD (又は見栄を張ってpowershell)で、
D:\hoge\hoge>dir > list.txt
なんてやってしまうのですが、
Windows10ネイティブのナウなヤングはWindows上で、どのようにやるのでしょうか
コマンドプロンプトなんて使ったことのない、普通のWindowsユーザーさんに教える必要があります

80 名前:デフォルトの名無しさん mailto:sage [2020/09/19(土) 03:30:06.61 ID:1TUbP9BW.net]
dir /b > list.txt



81 名前:デフォルトの名無しさん mailto:sage [2020/09/19(土) 05:19:51.44 ID:RfEWMQRr.net]
>>77
choice /?
タイムアウトも既定の状態も設定出来る

82 名前:デフォルトの名無しさん mailto:sage [2020/09/19(土) 06:32:50.16 ID:aPDv4PNE.net]
キーを限定してもいいならchoice

83 名前:デフォルトの名無しさん mailto:sage [2020/09/19(土) 06:41:28.16 ID:aPDv4PNE.net]
>>78
エクスプローラーで選択してホーム、パスのコピー、メモ帳にコピペ保存
Windows板でレスがあったろ

84 名前:デフォルトの名無しさん mailto:sage [2020/09/19(土) 07:30:51.34 ID:RfEWMQRr.net]
choiceはotherが設定出来たら言うことなしだったのになぁ
forもcontinueとbreakさえあれば。。
あと一歩をわざと使いづらくしてるのかと邪推してしまうわ

85 名前:デフォルトの名無しさん mailto:sage [2020/09/20(日) 20:29:41.51 ID:QtwFpjW/.net]
恐れ入ります。初心者です。
約400個の.m4aファイルを.mp3形式に変換しようとしています。
以下のようなバッチファイル作成において、出力ファイル名の記述が大変なのですが、

ffmpeg -i aa001.m4a -ab 48k aa001.mp3
ffmpeg -i bb004.m4a -ab 48k bb004.mp3
ffmpeg -i c030.m4a -ab 48k c030.mp3

入力ファイル名の文字列だけを変数のようにして、出力ファイル名として利用できないでしょうか?
以下のようなイメージです。

ffmpeg -i aa001.m4a -ab 48k 変数.mp3
ffmpeg -i bb004.m4a -ab 48k 変数.mp3
ffmpeg -i c030.m4a -ab 48k 変数.mp3

説明は面倒かと思いますので、参照すべきURL、
もしくは検索ワードだけでも教えて頂けると助かります。

86 名前:デフォルトの名無しさん mailto:sage [2020/09/20(日) 20:38:05.68 ID:bYdUCAyz.net]
m4a ファイルが D:\M4A\ に入っているとして
for %%L in (D:\M4A\*.m4a) do ffmpeg -i %%L -ab 48k %%~nL.mp3

87 名前:デフォルトの名無しさん mailto:sage [2020/09/20(日) 20:57:17.46 ID:QtwFpjW/.net]
>>85
早速のアドバイス、ありがとうございました。
見事に変換できました。
私の発想の方向性が悪く、for文を使えば良かったのかと…
ありがとうございました。

88 名前:デフォルトの名無しさん mailto:sage [2020/10/03(土) 10:47:40.18 ID:wKgZGKzj.net]
入力された文字列を使ってコマンドを走らせようとしてるんだけど変数に値は入るんだけどコマンドの方には空っぽで出力されるんだがなにか処理っているの?
%で囲むだけでいいよね?

89 名前:デフォルトの名無しさん mailto:sage [2020/10/03(土) 10:53:42.03 ID:HRjNW00f.net]
>>87
多分、遅延環境変数の問題
setlocal enabledelayedexpansion書かないとだめ

90 名前:デフォルトの名無しさん mailto:sage [2020/10/03(土) 10:57:51.23 ID:wKgZGKzj.net]
>>88
それはなんですか?



91 名前:デフォルトの名無しさん [2020/10/04(日) 00:03:10.85 ID:1nqCsM3n.net]
>>89
お前の質問が情報不足だから可能性のある回答を当てずっぽうで答えたのだろうよ

なお何かというと setlocal /? を読め

92 名前:デフォルトの名無しさん mailto:sage [2020/10/04(日) 00:16:53.72 ID:VPBkvUyg.net]
上から目線怖い

93 名前:デフォルトの名無しさん mailto:sage [2020/10/07(水) 22:42:28.13 ID:8t5FIA98.net]
set /p moji=入力するのじゃ
echo 出力するでおじゃる %moji%

うん、何の処理もいらないな

94 名前:デフォルトの名無しさん mailto:sage [2020/10/08(木) 13:42:17.79 ID:BulPjeqX.net]
遅延展開に関して setlocal /? にはロクな説明無いよ
詳しい説明が書かれているのは set /? の方
まあ87みたいなアホはスルーしとけ

95 名前:デフォルトの名無しさん mailto:sage [2020/10/09(金) 12:07:08.64 ID:xYDxCkF1.net]
入力処理を2回する時ってなにか特殊な処理とかいるの?
YESNO→文字列入力で
後者の処理で変数に文字列が入らない

96 名前:デフォルトの名無しさん mailto:sage [2020/10/09(金) 12:17:29.66 ID:ZREy0Q0x.net]
>>94
そんなんじゃ分からんよ
具体的に書け
おそらくすぐ上のレスと同じ気はするけど

97 名前:デフォルトの名無しさん [2020/10/09(金) 12:41:22.12 ID:xYDxCkF1.net]
>>95
@echo off
@setlocal
cd /d %~dp0
:START
rem 初期化
set NUM_INPUT=
set ID_INPUT=
set URL_INPUT=
set /P NUM_INPUT="URLはどちらですか?(1:DL/2:ok.ru/9:アップデート):"
IF %NUM_INPUT% equ 1 (
set /P ID_INPUT="IDを入力してください: "
youtube-dl https://lb.loadloadingfreevideo.top/hls/%ID_INPUT%/%ID_INPUT%.m3u8 --user-agent "Mozilla/5.0 (Intel Mac OS X)"
) ELSE IF %NUM_INPUT% equ 2 (
set /P URL_INPUT="URLを入力してください: "
echo 入力した文字列は %URL_INPUT% です。
youtube-dl %URL_INPUT%
) ELSE IF %NUM_INPUT% equ 9 (
youtube-dl -U
) ELSE (
goto :START
)
pause

VisualBatで確認したところ2回目の入力値の変数には値が入ってくるんだが出力されたときには空欄で出力される…

98 名前:デフォルトの名無しさん [2020/10/09(金) 13:22:34.61 ID:MFDBon0y.net]
すみません、自己解決しました

99 名前:デフォルトの名無しさん mailto:sage [2020/10/09(金) 13:34:07.34 ID:xYDxCkF1.net]
してないわw

100 名前:デフォルトの名無しさん mailto:sage [2020/10/09(金) 14:11:49.12 ID:ZREy0Q0x.net]
行の解釈は、行を読み込んだ時点で解釈され、変数は置換される
()で囲まれた部分は全体で一行扱い
つまり括弧内で入力したって、それは括弧を抜けないと有効でなく
カッコ内は既に括弧前(if文の前)の値で置換済み
やっぱり上のレスと同じじゃん



101 名前:デフォルトの名無しさん mailto:sage [2020/10/09(金) 14:35:46.06 ID:ZREy0Q0x.net]
解決策は
構造を変えて、入力と参照のどちらかをif文から出すか
遅延環境変数を使うか
call文で内部の処理をサブルーチンとして呼び出す形にするか

102 名前:デフォルトの名無しさん mailto:sage [2020/10/09(金) 14:36:34.08 ID:0eCLusxq.net]
@echo off &setlocal
pushd "%~0\.."
:MAIN
set N=
set /p N= 選択 [ 1:ID, 2:URL, 9:Update ] :
if "%N%"=="1" call :DL_ID
if "%N%"=="2" call :DL_URL
if "%N%"=="9" call :UPDATE
goto :MAIN

:DL_ID
set ID=
set /p ID= ID? :
:: ここで入力値を確認するかfindstrでIDの形式として正しいかcheck
youtube-dl "https://lb.loadloadingfreevideo.top/hls/%ID%/%ID%.m3u8" --user-agent "Mozilla/5.0 (Intel Mac OS X)"
exit /b

:DL_URL
set URL=
set /p URL= URL? :
:: ここで入力値確認
youtube-dl "%URL%"
exit /b

:UPDATE
youtube-dl -U

103 名前:デフォルトの名無しさん mailto:sage [2020/10/09(金) 14:46:41.82 ID:xYDxCkF1.net]
>>100
検索ワードが悪かったみたいで調べてみたら遅延環境変数で忘備録書いてる人いたから読み解いてくる

>>101
ありがとう
試しに使ってみたら大成功だったよ
ルーチン呼ぶほうが簡単みたいね
感謝しきれないわ。
自分で作りかけもできるようになるまで模索してみる

みんなありがとう

104 名前:デフォルトの名無しさん mailto:sage [2020/10/09(金) 19:13:39.03 ID:bdkjFn4I.net]
ここの人たちはコマンドプロンプトのことを「シェル」って呼ぶ?
あまり一般的じゃないですよね?
シェルって言ったらBashとかあっちのイメージなんですが

105 名前:デフォルトの名無しさん [2020/10/09(金) 19:55:04.43 ID:/2wG1kS2.net]
dosshellよりはシェルっぽい

106 名前:デフォルトの名無しさん mailto:sage [2020/10/09(金) 20:56:01.11 ID:bdkjFn4I.net]
Wiki見るとジャンル的にはコマンドプロンプトもコマンドラインインタプリタ(シェル)みたいなんですが、
あんまりシェルって読んでる人いないですよね

107 名前:デフォルトの名無しさん [2020/10/09(金) 20:57:57.12 ID:verB6kW/.net]
そりゃWinfowのシェルはエクスプローラーだもの

108 名前:デフォルトの名無しさん mailto:sage [2020/10/09(金) 21:33:57.08 ID:pYgpY0Tn.net]
cmdがコンソールくっついてんのは設計の失敗だよなあ
powershellでも同じ轍を踏んでるし
客から黒い画面邪魔って何億回言われてんだろう
あふぉが過ぎる

109 名前:デフォルトの名無しさん mailto:sage [2020/10/09(金) 21:38:55.75 ID:0CTZ1NG3.net]
黒い画面なしで起動することは可能なんだから、
何億回も言われてるのはお前の問題

110 名前:デフォルトの名無しさん mailto:sage [2020/10/09(金) 22:58:55.17 ID:4BFKVw+u.net]
黒いの嫌なら白に設定しろ



111 名前:デフォルトの名無しさん mailto:sage [2020/10/09(金) 23:53:38.68 ID:760t1BpC.net]
>>96
youtube-dl とか、そんな複雑な処理は、Ruby, VBScript, PowerShell などで作るべき

複雑なバッチファイルなんて、保守できない

112 名前:デフォルトの名無しさん mailto:sage [2020/10/10(土) 00:20:53.75 ID:9msS7xxw.net]
いや、Updateと普通のURLはbatに組み込まない方がいいだろ
直接使ってもさほど変わらない
ok.ru専属batにしたほうがいい

113 名前:デフォルトの名無しさん mailto:sage [2020/10/10(土) 03:21:12.75 ID:I6aD6+Ht.net]
>>111
ok.ruだけじゃないんだよ某サイト

114 名前:デフォルトの名無しさん mailto:sage [2020/10/11(日) 08:59:02.91 ID:uWZZ3h6O.net]
batのウィンドウを非表示で実行するためにvbs噛ませてたんだけど「このスクリプトには、悪質なコンテンツが含まれているため、ウイルス対策ソフトウェアによりブロックされています。」って言われるようになっちゃった

115 名前:デフォルトの名無しさん mailto:sage [2020/10/11(日) 09:08:42.65 ID:/L2D78D0.net]
>>113
batのショートカットを最小化で実行するとかは

116 名前:デフォルトの名無しさん mailto:sage [2020/10/11(日) 20:13:47.65 ID:P0HYJFd1.net]
>>114

117 名前:デフォルトの名無しさん mailto:sage [2020/10/11(日) 20:15:27.38 ID:P0HYJFd1.net]
>>114
それだと一瞬黒い画面が表示されない?
115は書き損じ

118 名前:デフォルトの名無しさん mailto:sage [2020/10/11(日) 20:31:14.01 ID:/L2D78D0.net]
>>116
ショートカットのプロパティで最小化する

119 名前:ネら表示されないでしょう
タスクバーには出てくるけど
[]
[ここ壊れてます]

120 名前:デフォルトの名無しさん mailto:sage [2020/10/11(日) 21:12:48.29 ID:P0HYJFd1.net]
>>117
今win8で実行したら表示されなかった。
俺環'(116はwin10)だったみたい
原因調べてみよ、ありがとう



121 名前:116 mailto:sage [2020/10/11(日) 22:14:08.72 ID:P0HYJFd1.net]
勘違いだった
タスクスケジューラにショートカットを指定してもbatファイル本体の指定に切り替わるみたいなので
startコマンドにminオプション付けてbatファイル本体を実行してたのを
ショートカットで最小に指定してもdos窓が一瞬表示されると間違って覚えてた、恥ずかしい

122 名前:デフォルトの名無しさん mailto:sage [2020/10/19(月) 21:03:48.43 ID:i1CJTVJK.net]
「コマンドプロンプトは黒い画面に文字がたくさん出て怖い」→「チャット風」にしてみた LINEみたいで「分かりやすい」と話題に
https://nlab.itmedia.co.jp/nl/articles/2010/19/news073.html

123 名前:デフォルトの名無しさん mailto:sage [2020/10/20(火) 00:04:16.20 ID:jnlumX7z.net]
>>120
考えた人、特許取ってあるのかな
microsoftが真似すると思う

124 名前:デフォルトの名無しさん mailto:sage [2020/10/20(火) 01:21:04.79 ID:0/xBmjm3.net]
>>121
MIT

125 名前:デフォルトの名無しさん [2020/10/20(火) 11:26:40.30 ID:jR74MZK7.net]
使ってないけどこのダサい画面なんとかならんのかね
特に色使い

126 名前:デフォルトの名無しさん mailto:sage [2020/11/10(火) 07:53:43.00 ID:CPbRFFCx.net]
>>113
おれも。
vbs 呼んでたのが原因か。
原因がわかって少し納得した。
けれど中身に関わらず勝手に実行できなくしてしまうのは大問題だよな > マイクロソフト

127 名前:デフォルトの名無しさん [2020/11/27(金) 17:54:04.98 ID:w5Az7J0d.net]
cd ... 点3つ で2階層上のディレクトリに上がれるのって
どのWindowsの機能だっけ?

128 名前:デフォルトの名無しさん mailto:sage [2020/11/27(金) 23:22:30.42 ID:MUwYgmwm.net]
本家Windowsの末裔である95

129 名前:デフォルトの名無しさん mailto:sage [2020/11/27(金) 23:22:47.95 ID:MUwYgmwm.net]
からMe

130 名前:デフォルトの名無しさん mailto:sage [2021/01/08(金) 22:35:28.22 ID:BCe3tfGB.net]
コマンドプロンプトのコピペが化ける。
全角の二重引用符を貼り付けると半角になった。
他にも化ける文字ってあるのかな



131 名前:デフォルトの名無しさん mailto:sage [2021/01/15(金) 23:17:05.02 ID:na+cGcWl.net]
forループでフォルダ内のファイルを取得するときにファイル名だけ抽出するコマンドってなんでしょう?
「%~n.txt」とか色々試したのですが、何を入れてもそんなファイルは存在しないといわれてしまいます(「%~n.txt」なら「%~n.txtは存在しない」)
ググってもわからなかったのでお願いします

for %%f in (フォルダパス) do (
 ここで処理したい
)

132 名前:デフォルトの名無しさん mailto:sage [2021/01/15(金) 23:17:58.97 ID:na+cGcWl.net]
>>129
これbatファイルです

133 名前:デフォルトの名無しさん mailto:sage [2021/01/15(金) 23:36:01.03 ID:OOSIw0eU.net]
for %%f in (*.txt) do (echo %%~nf)
help for読もう

134 名前:デフォルトの名無しさん mailto:sage [2021/01/16(土) 00:20:33.58 ID:MUPXwQYg.net]
for %%f in (*.txt) do (echo %%~f)

for /F "TOKENS=1" %%f in ('dir /B *.txt') do (echo %%~f)

135 名前:デフォルトの名無しさん mailto:sage [2021/01/16(土) 00:25:52.93 ID:xL4nSAcD.net]
それ "delims=" と勘違いしてる?

136 名前:デフォルトの名無しさん mailto:sage [2021/01/16(土) 00:45:01.02 ID:MUPXwQYg.net]
ごめん
tokens=1はいらなかった。余計だった

137 名前:デフォルトの名無しさん mailto:sage [2021/01/16(土) 00:56:21.35 ID:KTlk0YqY.net]
>>131
ありがとう
help forというのはどこでもみれますか?
コマンドをたたいてもググってもやっぱり出てきません

138 名前:デフォルトの名無しさん mailto:sage [2021/01/16(土) 01:10:21.04 ID:No4exMNc.net]
help for でも for /? でも出ると思うけど

https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/for
https://docs.microsoft.com/ja-jp/windows-server/administration/windows-commands/for

139 名前:デフォルトの名無しさん mailto:sage [2021/01/16(土) 01:19:53.49 ID:KTlk0YqY.net]
>>136
ありがとう

140 名前:デフォルトの名無しさん mailto:sage [2021/01/25(月) 19:13:54.7 ]
[ここ壊れてます]



141 名前:4 ID:P1MpJdzu.net mailto: 質問失礼します。
複数あるフォルダのフォルダ名を、内包しているファイル名に一括変更するスクリプトを作る事は可能でしょうか?
https://f.easyuploader.app/eu-prd/upload/20210124175415_346e74754c734e59584e73676b744330.png
分かりづらく申し訳ないのですが、この様にフォルダ名を内包されたファイル名に変更したいです。
色々と調べたのですが素人故どのような書き方をすればいいのか分からず…
宜しければご教授頂きたいです 宜しくお願い致します。
[]
[ここ壊れてます]

142 名前:デフォルトの名無しさん mailto:sage [2021/01/25(月) 22:05:10.09 ID:N4f0FgIr.net]
>>138

setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir /ad /b *') do (
set "dr=%%~nxa"
for /f "delims=" %%c in ('dir /a-d /b !dr! ^| sort /r') do set "file=%%~nc"
if defined file ren "!dr!" "!file!"
set file=
set dr=
)
endlocal

143 名前:デフォルトの名無しさん mailto:sage [2021/01/25(月) 23:01:36.92 ID:esdkgJAR.net]
>>139
a.zip,b.zip,c.zip,d.zip…というのはあくまでも例で
実際にはいつもそんな名前ではないと思われるが?

144 名前:デフォルトの名無しさん mailto:sage [2021/01/26(火) 00:03:58.29 ID:ECUGH5kE.net]
>>139
/o-nを使わずにsortするのは何か理由でもあるの?

145 名前:デフォルトの名無しさん mailto:sage [2021/01/26(火) 00:23:50.23 ID:ECUGH5kE.net]
あとドライブ直下が対象だとdir /adだと、
$RECYCLE.BINやSystem Volume Informationなどシステムフォルダまで見えちゃうね
中のファイルが見えなかったりリネームできなかったりで実害は無いのかもしれないけど
/ad-sの方がいいね

146 名前:デフォルトの名無しさん mailto:sage [2021/01/26(火) 00:44:20.98 ID:CijQ7yAc.net]
>>140
単純にdirで列挙されるファイルリストの最初のファイル名を使おうとしてるけど、何を言いたいのか分からない

>>141
確かにdir /o-nで問題ないです
sortでないとだめな理由はない
あとドライブ直下でテストはしてなかったからシステムディレクトリは盲点だった
ありがとう

147 名前:デフォルトの名無しさん mailto:sage [2021/01/26(火) 01:23:39.15 ID:ECUGH5kE.net]
a010.txt, a2.txt
だとかエクスプローラとdirの昇順の並び順が異なってくるのはどう対処したらいいんだろう

148 名前:デフォルトの名無しさん mailto:sage [2021/01/26(火) 02:02:45.97 ID:YrHBLfuO.net]
疑問に感じたらググれ
すぐ見付かる

149 名前:デフォルトの名無しさん mailto:sage [2021/01/26(火) 02:28:00.25 ID:mwA/u23E.net]
>>139
ありがとうございます!!出来ました感激です
教えていただいて更に恐縮なのですが、ファイル名昇順の一番上の名前ではなく、一番最後の名前にするにはどの部分を変えれば良いのでしょうか…?
教えて頂ければ幸いです。宜しくお願い致します。

150 名前:デフォルトの名無しさん mailto:sage [2021/01/26(火) 02:57:22.05 ID:YrHBLfuO.net]
in ('dir /a-d /b !dr! ^| sort /r') do

in ('dir /a-d /b !dr!') do



151 名前:デフォルトの名無しさん mailto:sage [2021/01/26(火) 03:28:21.19 ID:mwA/u23E.net]
>>147
ありがとうございます
>>147こちらを先程の「>>139先頭ファイルへのリネーム.cmd」をしたフォルダで試した所「ファイルが見つかりません」とエラーメッセージが出てファイル名の変更が出来ないのですが何故でしょうか…。
まだ何もしていないフォルダへのリネームは>>147の「末尾ファイルリネーム.cmd」でも出来ました。一度しか使えないバッチファイルなのでしょうか…。

152 名前:デフォルトの名無しさん mailto:sage [2021/01/26(火) 03:55:31.46 ID:YrHBLfuO.net]
in ('dir /a-d /b "!dr!"') do

153 名前:デフォルトの名無しさん mailto:sage [2021/01/26(火) 17:47:59.55 ID:mwA/u23E.net]
>>149
ありがとうございます
こちらに変更した所何度でも上書きでリネームすることが出来ました。
本当にありがとうございます

154 名前:デフォルトの名無しさん mailto:sage [2021/01/26(火) 18:30:12.90 ID:3Vc5Ni7z.net]
あんた昇順の意味わかってる?

155 名前:デフォルトの名無しさん mailto:sage [2021/01/27(水) 14:18:42.02 ID:zQyl/e7v.net]
for %%c in ("!dr!\*") do

156 名前:デフォルトの名無しさん [2021/01/29(金) 20:04:30.58 ID:nZkldKO7.net]
ドラッグアンドドロップしたファイル(複数)を下の
ffmpeg -i "AAA.flv" -vcodec copy -acodec copy "AAA.mp4"
に入れたいです。ドロップするファイルはffmpegが置いてあるフォルダにありますが、できれば異なるフォルダからのファイルでも可能にする方法もあれば知りたいです。
よろしくおねがいします。

157 名前:デフォルトの名無しさん mailto:sage [2021/01/29(金) 20:16:16.41 ID:MVM9RsSY.net]
例えば、ドロップしたファイルが、a, b, c とすると、

どういうコマンドにしたいの?

158 名前:デフォルトの名無しさん [2021/01/29(金) 20:27:09.50 ID:nZkldKO7.net]
a,b,cの動画ファイルをffmpegで変換して、それをドロップ元のフォルダに保存したいです。変換の内容は"a.flv"→ "a.mp4"です。

159 名前:デフォルトの名無しさん mailto:sage [2021/01/29(金) 20:32:39.25 ID:mJjQcNNM.net]
ffmpeg.exeをpathの通ったディレクトリに配置
またはffmpegのPathを環境変数Pathに追加

:: D&Dで使うならショートカットの作業ディレクトリを空欄にする
:LOOP
if not exist "%~1" pause &exit /b
start "" ffmpeg -i "%~1" -vcodec copy -acodec copy "%~n1.mp4"
shift
goto :LOOP

160 名前:デフォルトの名無しさん mailto:sage [2021/01/29(金) 22:13:01.62 ID:MVM9RsSY.net]
PowerShellスクリプトにドラッグ&ドロップしたファイルを処理させる方法
https://4thsight.xyz/15324

ショートカット・バッチファイルに、D&D して処理する



161 名前:157 mailto:sage [2021/01/29(金) 22:55:34.81 ID:MVM9RsSY.net]
Ruby なら、デスクトップのa.rb に、下のように書いて、そのショートカットを作る。
ショートカットのリンク先を、C:\Ruby25-x64\bin\ruby.exe a.rb
とする。
これで、ショートカットにD&D した、すべてのファイルのフルパスが表示される

sleep は、コマンドプロンプト画面を終了させないため

puts ARGV

sleep 60 * 60 * 24

162 名前:デフォルトの名無しさん [2021/01/30(土) 00:09:57.42 ID:cwRmtLqZ.net]
>>156
ありがとうございます!できました。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<297KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef