[過去ログ] 【.cmd】 バッチファイルスクリプト %12 【.bat】©2ch.net (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
233
(1): 2017/10/18(水)22:17 ID:on6I0HDV(1)調 AAS
>>231
うちの現場のバッチは例え内部で使わなかろうが最低1つは必ず引数を渡す仕様になってる。
そしてそれが渡されなかった場合は処理せずに終了する作りになっている。
理由は誤ってダブクリしちゃった場合の対策なんだってさ。
234: 2017/10/18(水)22:23 ID:hY2xT5yc(1)調 AAS
batって大体はD&Dして使うようなの書いてるな
235: 2017/10/19(木)01:03 ID:cgLUQcTs(1)調 AAS
>>230
なんか癇に障ったみたいだけど、言い訳すると
俺は、質問者によって回答内容を変えてる
今回の質問者は初心者だと感じたし、さらには細かい拘りを持っているように見受けられた
(13月32日なんて作らないだろうし、もしあったって1332に変換されて悪いことはないと思う)
色々と手を加えて試行錯誤することが好きなんだろうなって思ったから
役に立ちそうな追加部分を記述した
それに1レスで書く分には、数行増えようが関係ないだろうと思ったしね
236: 2017/10/19(木)08:32 ID:ny4cf+Vz(1)調 AAS
>>233
なるほど
237: 2017/10/19(木)22:12 ID:JROgBEvY(1)調 AAS
ザ・ワールド、時よ止まれ。
238
(1): 2017/10/20(金)03:00 ID:1Na2h1P4(1/2)調 AAS
キッティングの自動化をしたいんだが、参考になるサイトない?
239: 2017/10/20(金)03:00 ID:1Na2h1P4(2/2)調 AAS
対象のレジストリ見つけるとかめんどい
240: 2017/10/20(金)23:41 ID:aZN6SiIl(1)調 AAS
どの程度の自動化?
241: 2017/10/21(土)08:56 ID:Nsvn2WYb(1)調 AAS
>>238
何を自動化するん?
242: 2017/10/21(土)16:42 ID:DofUW9OG(1)調 AAS
そんなんツールが出てるんだからその説明でも読めよ
243: 2017/10/21(土)18:43 ID:TBS9tbdH(1)調 AAS
一発で、ファイアウォールの受信規則とかインターネットオプションとか
244
(1): 名無しさん@そうだ選挙に行こう! Go to vote! 2017/10/22(日)07:51 ID:eb/3UN8i(1)調 AAS
>>215
$before = ls -Directory | Where-Object { $_ -match "^\d+月\d+日" }
$after = $before | foreach { $_.Name -replace '^(\d+)月(\d+)日', '$1$2' }

$idx = 0;
$before | foreach {
Rename-Item -WhatIf $_.FullName $after[$idx];
$idx++;
}

PowerShell で書いたので、cd で、そのフォルダへ移動して実行して。
-WhatIf が付いているので、本当には実行せずに、結果だけを見れる。
本当に実行する際は、-WhatIf を削除して実行して

配列 $before には「02月03日」などで始まるフォルダだけを、入れる。
配列 $after には「02月03日」の部分だけを「0203」に変換した、フォルダ名を入れる

Rename-Item で、該当する全フォルダ名を変換する
245: 名無しさん@そうだ選挙に行こう! Go to vote! 2017/10/22(日)14:53 ID:1YRZU7Jo(1)調 AAS
問題は、月を01〜12まで、日を01〜31までのチェックを入れることだけどね
246: 名無しさん@そうだ選挙に行こう! Go to vote! 2017/10/22(日)16:29 ID:rLFHcAK9(1)調 AAS
>>244

ls <directory-name> -directory | ren -newname {$_.name -replace '^(¥d+)月(¥d+)日', '$1$2' }

lsの-filterやwhere-object使ってもいいけど
この例の場合は不要だと思うよ
247
(1): 2017/10/23(月)07:20 ID:A3jhOkfm(1)調 AAS
ls -directory | ren -WhatIf -newname {$_.name -replace '^(\d+)月(\d+)日', '$1$2' }

上記で、where-object が無いと、
変更されないフォルダまで、表示されるのが気持ち悪い
248: 2017/10/23(月)22:30 ID:TV21zs/8(1)調 AAS
Windows7SP1では、Get-ChildItemに-directoryオプションは無いんでエラーが表示された
調べたら、3.0以降でこのオプションが付いた模様
この際なので、5.0,5.1をインストールした
Windows7の人の参考まで
249: 2017/10/24(火)18:41 ID:QQrV41zo(1)調 AAS
PowerShellのスクリプトファイルの拡張子は普通.ps1を使うが
デフォルトではファイルの実行を許可してないし、
また許可後もダイレクトにファイル名を指定しても実行できない
って保険かけすぎで入門者には敷居が高いだろと思わないでもないなあ

>>247
where-objectを入れてみた
(まだ2時間ぐらいしかやってないんでもっといい書き方があるかも)
$re='^(\d+)月(\d+)日';ls -directory|? name -match $re|ren -whatif -newname {$_.name -replace $re,'$1$2'}

このスレ的にはアリアス使うなら、lsよりもdirが合ってる気もするけど
250
(3): 2017/11/03(金)20:22 ID:+gpl8JNW(1)調 AAS
ここで聞くべきか迷ったのですが…

自分のマシンからリモートデスクトップで接続できるサーバー(確かWin2008R2)があって
そのサーバーと同じネットワーク内にクライアント端末(Win7)があります。

そのクライアント端末のプロセスをリモートデスクトップで接続したサーバーから確認することは可能でしょうか?
(サーバーには管理者権限で接続しています)

要はクライアント端末でtasklistコマンドを打った結果が見たいのですが。
ちなみにクライアント端末はDHCP設定なので起動のたびにIPアドレスが変わります…

今は1日に何度も遠くにあるクライアント端末まで行ってプロセスを確認しています。
1回だけ行ってIPアドレスをメモるぐらいなら全然構わないので何か方法があれば教えて下さい。
251
(1): 2017/11/03(金)21:42 ID:91m0YuAi(1)調 AAS
クライアントに自分のタスクリストをファイルを記録する周期ジョブを作成しておく
必要であれば暗号化しておく
そのファイルをメールで自動送付するようにしておくか、
クライアントにwebエリアがあればそこに置きこちらから見にいく
252
(2): 2017/11/03(金)21:52 ID:z1gogpom(1)調 AAS
>>250
サーバから tasklist /s クライアント端末名 (/u user /p pass) を実行では見れないんですか?
ファイアウォールの設定が必要かもしれませんけど。
253
(1): 2017/11/03(金)22:47 ID:+QQUmgGP(1)調 AAS
>>250
1) 他のPCのプロセス状態を知りたい
2) DHCPで設定されているPCのIPアドレスを知りたい
ってことでいいかな

1) はtasklist の /s オプションで知りたいPCのIPアドレスを指定すれば行けるはず
ただし事前にPC側に設定が必要
かつPCにログインできる情報が必要

2) は
2-1) 直接見に行ってipconfigで確認する
2-2) MACアドレスわかってるならサーバーからそのネットワークアドレス全体にpingを打ちつつarpコマンドで相手のMACアドレス確認していけばいい
2-3) DHCPサーバーを管理してるならPCのIPアドレスを確認する方法があるかも、まあそれならPCのIPアドレスを固定した方がいいかも
2-4) >>251みたいな方法で定期的にIPアドレスを通知してもらう
254
(1): 250 2017/11/04(土)18:18 ID:HSP2f8JH(1)調 AAS
みなさん情報ありがとうございます。

来週になったらとりあえず>>252さんの方法を試してみます。(一番手軽なので…汗)
それでダメな場合は一日一回直接IPアドレスを確認しにいく方式にします。
というのもpingのブロードキャストは現場のルールで禁止されてるっぽいので。
クライアント端末も特別な用途のためのものなのでタスク作ったり何かを仕掛けるのは厳しそうです。
仕掛けられれば業務はすごく楽になるんですけど「セキュリティ上問題が…」とか言われて突っぱねられる可能性大です。><
尚、pingブロードキャスト以外の方法でIPを知る方法については自分でも調べてみます。

どうもありがとうございます。助かりました!
255: 2017/11/04(土)18:30 ID:sTeHaJ1X(1)調 AAS
>>254
>>252-253に書いてあるけど事前にクライアント側の設定しないとtasklist /sでプロセス情報見れないけど、そこは大丈夫なの?
256
(2): 2017/11/05(日)10:20 ID:rFS24mxQ(1/3)調 AAS
set infilenm=001.txt
set outfilenm=002.txt
set beforestr=""""
set afterstr=""
type nul >%outfilenm%
setlocal enabledelayedexpansion
for /f "delims=" %%A in (%infilenm%) do (
set line=%%A
echo !line:%beforestr%=%afterstr%!>>%outfilenm%
)
endlocal

001.txtからダブルクォーテーションを削除して002.txtに保存したいだけなんですが、
3行目と4行目の表記がわからず、考えられる限り書き直して、うまくいきません。
あるいは別のBATでもいいのですが教えてください。
257
(1): 2017/11/05(日)11:42 ID:vm51NJQ8(1/3)調 AAS
>>256
set beforestr=^^"
set afterstr=^^
でどうかな?
258
(1): 2017/11/05(日)11:56 ID:vm51NJQ8(2/3)調 AAS
ただ001.txtのデータ次第でうまくいかない場合があるんで
別のスクリプト言語(PowerShellやWSH等)で書いたほうがいい
259
(1): 256 2017/11/05(日)12:18 ID:rFS24mxQ(2/3)調 AAS
>>257
>>258
素早いお答えありがとうございます。

>>257
>set beforestr=^^"
>set afterstr=^^
ダブルクォーテーション消えました!
ありがとうございました。
260
(2): 2017/11/05(日)13:20 ID:vm51NJQ8(3/3)調 AAS
>>259
どういうことに使うのか知らないけど、大切なデータなら止めとくべき
改行だけの行が消えるのは知ってると思うけど以下のような行があると(回避は可能だが)
ab!cd!ef
a! "b ^
261: 2017/11/05(日)13:40 ID:rFS24mxQ(3/3)調 AAS
>>260
ご心配ありがとうございます。
大丈夫です。ものは、<a href とかのhtmlタグで作成したリンクリストで、
正規表現とかエスケープっぽい記号等はなく、
そもそもプライベートファイルなので、これで素早くリストができて万々歳です。
262
(1): 2017/11/06(月)15:18 ID:K1roLwuw(1/2)調 AAS
>>260 これじゃダメか?
ていうかダメな例を教えてほしい

for /f "delims=" %%i in (1.txt) do (
set a=%%i
setlocal enabledelayedexpansion
echo !a:^"=!>>2.txt
endlocal
)
263: 2017/11/06(月)15:59 ID:K1roLwuw(2/2)調 AAS
半角スペースだけの行は化けるな
264
(1): 2017/11/06(月)19:12 ID:Mdq5cGE3(1)調 AAS
echo,とか、echo;とかで
265
(1): 2017/11/06(月)23:15 ID:RrRem/45(1)調 AAS
バッチファイルに渡された引数が1つなのか2つなのかを判定したいのですが
どのように記述すれば良いのでしょうか?
以下ではダメでした。

if defined %2 echo 引数は2つです else echo 引数は1つです
266
(1): 2017/11/07(火)01:14 ID:xsgE2wk0(1)調 AAS
if not '%2=='
267
(1): 2017/11/07(火)07:09 ID:4pg/kk0r(1/2)調 AAS
>>264 ありがとう

for /f "delims=" %%i in (001.txt) do (
set "a=%%i"
setlocal enabledelayedexpansion
set "a=!a:"=!"
echo.!a!>>002.txt
endlocal
)

これで空行以外は完璧かな?
268
(1): 2017/11/07(火)10:05 ID:1287flJj(1)調 AAS
>>262の奴で
"echo "を"echo."にするとダメなのに"echo,"にするとOKなのは何故なんだぜ?
今まで、ピリオドとカンマ、セミコロンに違いがあるとは思ってなかったから
ずっとピリオド使ってたのに
269
(1): 2017/11/07(火)22:51 ID:4pg/kk0r(2/2)調 AAS
>>267
"eol=" を指定しないと行頭文字が ; だと読み飛ばす
"delims=" を指定しないと行頭の空白が無くなる
両方同時に指定する方法はあるのか?
270
(2): 2017/11/08(水)00:22 ID:X1Aytah6(1)調 AAS
for /f delims^=^ eol^=
271
(1): 265 2017/11/08(水)00:40 ID:pQrS+Zxc(1)調 AAS
>>266
バッチリでした!THANKS!
272
(1): 2017/11/08(水)19:40 ID:VTzaN0jn(1)調 AAS
>>268
「,」「;」「=」は特別区切り文字だから。

例えば、C:\直下に「a」ってフォルダ作って

「b.cmd」
for /f %%a in ('echo,b') do echo,%%a

「b b.cmd」
echo;c %1
pause

のバッチ作成して、コマンドプロンプトで「C:\a」に移動してから

「b.cmd」を実行すると、()の中の「,」が消えた状態で表示される
「b b.cmd」を実行すると、「b.cmd」が実行される
「"b b.cmd"」を実行すると、「b b.cmd」が実行される

今度はファイル名を指定して実行で

cmd /c "C:\a\b b.cmd"
cmd /c "C:\a\b b.cmd" dを実行すると、pauseで止まるけど
cmd /c "C:\a\b b.cmd" "d"を実行すると、一瞬で終わる
cmd /c,"C:\a\b b.cmd" "d"なら動く

結構知られていないんだよね。
273
(1): 2017/11/08(水)22:40 ID:ZHWfUJ7q(1)調 AAS
>>270 ありがとう。完全に動作しました

そもそも eol の既定値が ; だとかヘルプに書いてないぞ
ちなみに "eol=" とすると eol が空になるのかと思ったら
今度は行頭に " があると読み飛ばすようです
何なんだ、これは。for 文のバグですかね
274: 2017/11/09(木)12:26 ID:NEfZ8eBs(1)調 AAS
@echo off
prompt $g
set a=/?
set b=exe
set c= off
echo on
echo,%a%
echo;%a%
echo.%a%
echo.%b%
echo.%c%
echo
pause
275
(1): 2017/11/10(金)12:50 ID:5BeFn7Xg(1/2)調 AAS
一時的なwindows資格情報の付与
付与→(再起動)→ポップアップを閉じるまで作業→(再起動)
の流れをバッチ実行一発で済ませたいと思ってる。
(○.bat)
cmdkey 書き込み
copy **.batを配置
schtasks 再起動後のタスク登録(**.bat実行)
shutdown 再起動
↓ (ログイン)
(**.bat)
echoでmsgbox表示(閉じるまで待つ)
cmdkey /delete ←ここで資格情報が消えない
schtasks /Delete タスク消去
del /f "%~dp0 自己消去

タスクは一応highest
タスク実行だとcmdkey通らないとかある?

bat素人で何が原因で消えないのかわからない・・・
ポップアップ表示中にcmd開いてcmdkey打つとちゃんと消える
276: 275 2017/11/10(金)18:22 ID:5BeFn7Xg(2/2)調 AAS
回りくどい方法ですが自己解決できました。
.vbsにcmdkey /deleteを入れ
cmdの管理者権限起動用ショートカットを作成
schtasks からhighestをぬいて、管理者権限でcmdを再起動
vbsを実行で資格情報を消すことができました。
277
(1): 2017/11/11(土)23:58 ID:Smy5DbHD(1)調 AAS
copy /b 1.mp4+2.mp4 3.mp4
上記で結合した3.mp4の動画に2.mp4の内容が追加されないのですがなぜかわかりますか?
3.mp4のファイルサイズだけは1.mp4+2.mp4の容量になっています
すぐ出来ると思ったのにつまづいた泣
278
(1): 2017/11/12(日)01:15 ID:1rXZudmc(1)調 AAS
>>277
ちゃんと結合されている
バイナリで結合してフォーマットが1.mp4の分しかないだけ
コマンドプロンプトでなく動画フォーマットの勉強しろ
279: 2017/11/12(日)01:38 ID:/fk063EO(1)調 AAS
>>278
ありがとうございます
出直します
280
(1): 2017/11/12(日)14:54 ID:GpB3XqQ3(1)調 AAS
動画形式の勉強など、自分でやるものじゃない

動画編集アプリを使うべき
281
(1): 2017/11/12(日)14:57 ID:43gC7oaU(1)調 AAS
今の編集アプリだとmp4再エンコしなくてもそのまま繋げられるのかな?
282: 2017/11/12(日)15:08 ID:MOg5phwx(1)調 AAS
>>280
バッチから結合を指示できる動画編集アプリよろしくね
283: 2017/11/12(日)15:14 ID:Xj6DjuPw(1)調 AAS
ffmpegでええやん
284: 2017/11/20(月)14:42 ID:rhJshzCP(1/2)調 AAS
64bitOS環境
バッチ1つでWOW64内のcmdで実行する方法ってありますか?
285: 2017/11/20(月)15:06 ID:rhJshzCP(2/2)調 AAS
すみません普通にSTARTで呼んでできました…
286: 2017/11/22(水)13:08 ID:i4qRIFe0(1)調 AAS
呼び出し元バッチに戻る終了方法を追加してほしい
exit /B だとcmdを終わるだけ戻らない
call で呼び出さなくても戻る機能をつけてほしい

exit /r や return文で
287: 2017/11/23(木)17:36 ID:cAVsYuht(1)調 AAS
startに待つオプションあるだろ
288: 2017/12/06(水)10:57 ID:RImq1PQL(1)調 AAS
>>281
昔から無劣化で繋げられるけど??
289: ファイルアクセス監視 2017/12/23(土)19:00 ID:Jw1Bivzx(1)調 AAS
ダウンロードしたローカルアプリ(Jane Styleなど)が
重要な場所のローカルファイルから情報を盗もうとしてないかどうか念のため監視したいのですが、

https://technet.microsoft.com/ja-jp/sysinternals/handle.aspx
このdosで使える handle は出力ファイル名の日本語が文字化けするんですが、何かいい方法ないですか?

文字化け以外に関しては非常に便利です
出力をdosで加工してエクスプローラーのログを除外して、ユーザー+プロセス+ファイル名が初登場の時だけ出力してます
これでもし見慣れないファイルアクセスがあったら目立ちます(GUI系はリアルタイムで消えるので)
290: 2017/12/23(土)22:54 ID:FPRjmoIB(1)調 AAS
ファイル名のようなシステム要件には、半角英数字だけを使う。
半角空白も使うな。Mac でバグる

すべてのアプリの開発者が、多国語のファイル名では、テストしていないから、
多くのアプリでバグる

特に、書庫を使う、圧縮解凍アプリでバグる
291
(1): 2017/12/24(日)08:43 ID:WeE5WMFr(1)調 AAS
echo.
で空行を表示できると知りましたが
この「.」には何の意味があるのでしょうか?
292: 2017/12/24(日)15:38 ID:9EARh1KB(1)調 AAS
>>291
意味を考えてはいけません。調べてませんが、英語のピリオドなので文字列なしで終わりという意味合いからそうしたのでしょう。
293: 2017/12/24(日)15:51 ID:nsKMF0PM(1)調 AAS
echoの直後の文字列は出力されないんだっけ?
「.」の以外の文字列でも空行になるけど1番問題が起きにくいとかそんなのかな
294: 2017/12/24(日)18:22 ID:T/PAdelQ(1)調 AAS
ちょっと前にその辺の話が出てた
>>264-274
295: 2017/12/26(火)01:03 ID:9+DFjrUc(1/2)調 AAS
特別区切り文字というものがあるなんてここで初めて知ったんだけど…(本当かどうかはまだ確かめていない)。
もはや紙媒体で信用できる会社からの体形的な出版物が無いのよね。

…ある??
296
(1): 2017/12/26(火)01:08 ID:NGPwifm5(1)調 AAS
こんなのは仕様じゃなくて実装上の結果にすぎない
undocumennt specと言ってもいいが、正式な本に仕様として載るようなもんじゃないと思う
297
(3): 2017/12/26(火)01:23 ID:9+DFjrUc(2/2)調 AAS
>>296
そりゃ分かるんだけど…。
UNIX の bash だっておかしいところが結構あってさ。
でも「構文解析が未熟な時代、全てを(記号ですら)コマンドだと置いた結果」という説明の仕方ができるそうな。
C言語の仕様だっていい加減後付けが多い。でも説明を試みた結果がANSI。無理が多いけど。

Windows界隈ってそういうのが貧しいと思う。
スレ違いだけど、PowerShell も Core とか言い出してからなんかおかしくないか?
298
(1): 2017/12/27(水)01:13 ID:1X8kZn43(1)調 AAS
bashはかなーり最近のプロダクトだと思うのだが
299
(1): 2017/12/27(水)19:45 ID:8XzWQMmb(1)調 AAS
>>297
特別区切り文字という言葉はアレだけど
cmd /? で表示されるヘルプの最終行に
=;, は特別な文字として列挙されてますよ。
300
(1): 2017/12/28(木)06:04 ID:HvFHYdEd(1)調 AAS
>>297
要はさんざん検証して挙動を確認しないと恐くて使えないってこったなw
301
(1): 2017/12/28(木)07:32 ID:psxJdr/O(1)調 AAS
関係ない話ですまんが
いまだに cmd /? の表示が変だな、一部重複してる
マイクロソフトは直す気が無いのか
たぶんNTの頃から変なんだが
302
(2): 2017/12/28(木)08:43 ID:V28V958v(1)調 AAS
バグレポートに誰も上げていないか、
あるいは上げられていても優先順位がものすごく低いのでしょう。
303: 2017/12/28(木)18:35 ID:QlD4+lUL(1)調 AAS
>>302
非成長分野、非収益持ち出し分野とみなされて、最低限の人数しかいないのでは
おまけに優秀なのは来ない
304: 2017/12/28(木)19:17 ID:uuf5XAZw(1)調 AAS
優秀な奴はさらっと変更して賞賛されるけど、
そうじゃない奴がさらっと変更すると、
勝手なことすんなって怒られるんだよな。
305
(1): 2017/12/28(木)22:46 ID:8hIgR6GI(1)調 AAS
bash が最近のプロダクトだとか…ヨボヨボの痴呆が入ったおじいちゃんか?
UNIX で bash が出たのって 20世紀なんだが。

>>299
これのことか?明らかに違う。
> 引用符が必要な特別な文字は次のとおりです:
> <スペース>
> &()[]{}^=;!'+,`~

>>300
自分が新規で書けるなら VBScript でいい。
「これは例外、あれも例外、それも例外」なブツなんか触りたくない。
そんな時間があるなら生産的な言語に費やしたい。
触らざるを得ないからイラつく。阿呆か。

PowerShell は Windows の自動化から管理系を抜き出した方向に行こうとしているので何だかねぇ…
306: 2017/12/29(金)00:43 ID:oAr+Y8wr(1/3)調 AAS
>>305
GNU後の新造品じゃねーか。モダンもいいところだろ。
歴史を知らないバカとは話が出来ないってのは本当だな。
307: 2017/12/29(金)07:36 ID:kfbFSvw+(1)調 AAS
今時VBScriptとか言ってる老害の相手するなよ...
308: 2017/12/29(金)08:54 ID:oAr+Y8wr(2/3)調 AAS
年寄りのくせにGNU前を知らないんだとしたら、死んだ方がいいね。
309: 2017/12/29(金)10:58 ID:dNvcaBYU(1)調 AAS
VBScriptは依然として結構イケると思うけどな
310: 2017/12/29(金)14:50 ID:Xr0syokO(1)調 AAS
真面目にそう思ってるならちょっとヤバイぞ
311: 2017/12/29(金)17:11 ID:oAr+Y8wr(3/3)調 AAS
VBAと混同してる人がいるようだ
312: 2017/12/29(金)23:12 ID:1POkgVP3(1)調 AAS
>>298
はあ?
313
(2): 2017/12/30(土)17:45 ID:RVllgMXp(1)調 AAS
バッチファイルなのになんでVBの話になるのん
314: 2018/01/01(月)14:25 ID:TmlLnuaw(1)調 AAS
>>301-302
コマンドのバグ          ⇒ 全世界のユーザーに影響出るから下手に直せない
コマンドのヘルプの文言誤り ⇒ 優先度低いのでなかなか直さない

ってことかなるほど。
315
(1): 2018/01/03(水)18:47 ID:G1jkbehM(1)調 AAS
>>313
cscriptで自身を実行する外見バッチ中身WSHみたいなんもあるにはあるし…
316
(1): 2018/01/03(水)20:04 ID:NAv6VFfd(1/2)調 AAS
>>313
元を辿ってみると、>>297が話を逸らしたせいだ
そこからどんどん逸れてvbに行き着いた

>>315
batに埋め込めるのはjscript(条件コンパイルの構文がbatとうまい具合にかみ合った)だけでvbscriptは無理
317
(1): 2018/01/03(水)20:12 ID:lLEkaf6s(1)調 AAS
>>316
> vbscriptは無理
ちょっとはググれよ
https://blogs.yahoo.co.jp/tt77tt77tt77mm/12847863.html
318: 2018/01/03(水)21:17 ID:NAv6VFfd(2/2)調 AAS
>>317
wsfの手があったか、あとjsでもスクリプトエンコードで書けばなんとかなるね
319
(1): 2018/01/13(土)16:23 ID:t3TbTPGI(1)調 AAS
powershellで似たような事はできませんか?
1ファイルにしたくて
320: 2018/01/13(土)16:32 ID:9pJBMU57(1)調 AAS
>>319
【最強CUI】PowerShell -Part 2 [無断転載禁止]©2ch.net
2chスレ:tech
321: 2018/01/18(木)18:41 ID:lAsosfYH(1/4)調 AAS
どうしても分からないので質問致します。

@echo off

@rem バッチファイルのディレクトリに移動
cd /d %~d0%~p0

set USR_INPUT_STR1=https://www.openrec.tv/live/fKGMub0cd6j

@rem 引数有無と引数名チェック
if "%USR_INPUT_STR1%"=="" goto ERROR
echo;%USR_INPUT_STR1%|findstr /R /C:"^http" /C:"openrec" >NUL||(echo "%1" を処理できません) && goto ERROR

@rem URLのアドレスとHTMLを環境変数へ設定
set ADDR=%USR_INPUT_STR1%
for %%I in (%USR_INPUT_STR1%) do set HTML=%%~nxI

@rem HTMLダウンロード
curl -L --max-redirs 10 -R -O %ADDR%
if not %ERRORLEVEL%==0 goto ERROR

@rem Shift-JISに文字コード変換
nkf -s --overwrite %HTML%
322
(3): 2018/01/18(木)18:41 ID:lAsosfYH(2/4)調 AAS
set TARGET=%TARGET:playlist=chunklist%

@rem ffmpegで動画吸い出し
ffmpeg -c copy "%TITLE%.ts" -i "%TARGET%"

@rem 最後にcurlで出力したソースファイルを削除
@rem for /R %%f in (*.) do del /Q "%%f"
pause
exit

:ERROR
echo 引数が無効のため処理できませんでした
pause
exit

このようなbatファイルを作ったのですが、どうしても最後に
sourcefile=https://station303.openrec.tv/live1/667d4bef5cb4af8db6b9198cab7b3148e957e477/chunklist.m3u8: Invalid argument
と無効な引数と言われてしまい動画の吸い出しが出来ません
完全に手詰まりなため、丸投げにはなってしまいますがご教授いただければと思います
よろしくお願いします
323: 2018/01/18(木)19:11 ID:r+5+UL4/(1)調 AAS
>>322
とりあえず最初の行を
rem @echo off
にしてどこでエラーになってのか確認しろよ
324: 2018/01/18(木)19:15 ID:pm/tv2ru(1/2)調 AAS
>>322
これ途中の処理抜けてない?
TARGETにURLが入らないんだけど
325
(1): 2018/01/18(木)19:34 ID:pm/tv2ru(2/2)調 AAS
170のやつを適当に書き直したら動いたよ

for /F tokens^=2^ delims^=^" %%I in ('type %HTML%^|find /I "data-sourcefile"') do set "TARGET=%%~I"
326: 2018/01/18(木)19:58 ID:lAsosfYH(3/4)調 AAS
>>322の最初が抜けてました・・・
@rem HTMLから文字列抽出
for /F "tokens=2 delims=<>| " %%I in ('type %HTML%^|findstr /R /C:"<title>"') do set TITLE=%%~I
for /F "tokens=* delims=data-file= " %%I in ('type %HTML%^|find /I "playlist.m3u8"') do set TARGET=%%~I
327: 2018/01/18(木)20:06 ID:lAsosfYH(4/4)調 AAS
>>325
ありがとうございます・・・
エラーを見たのですが、なぜかsourcefile=が付いてしまっていました

何度もありがとうございます
328: 2018/01/29(月)01:16 ID:s5lQXlw3(1)調 AAS
echo abc 1>x1 1>x11 2>x2 3>x3

とするとDOS窓が応答しなくなった
x11 x2 x3 ファイルができるが x1ファイルはできない
329
(3): 2018/01/29(月)14:21 ID:e8Iu9+Yp(1)調 AAS
compフォルダ配下にはa,b,c,…ってフォルダがあって、
そのフォルダの中にはzipとrarの圧縮ファイルがある

compopenってフォルダを作って、compの中のフォルダ階層は変えないで、compopenフォルダ内のaやb,cのフォルダにそれぞれすべて展開させたいときってどうするの?
zipやrar毎にフォルダ作って展開させたい

D:/
├comp/
│ └ a/
│   └ 111.zip
│   └ 222.zip
│ └ b/
│   └ xx1.rar
│   └ xx2.rar
│ └ c/
│   └ ttt.zip
│   └ rrr.rar

D:/
├compopen/
│ └ a/
│   └ 111/
│   └ 222/
│ └ b/
│   └ xx1/
│   └ xx2/
│ └ c/
│   └ ttt/
│   └ rrr/
330
(1): 2018/01/29(月)15:15 ID:LZ9wDs2K(1/2)調 AAS
>>329
>>12-19の方法で相対パスを取得すれば出来ると思うよ
331: 2018/01/29(月)16:22 ID:LZ9wDs2K(2/2)調 AAS
自分用に書いたbatを流用してみた
多分こんな感じで動くはず

https://pastebin.com/zEpvpdCa
332
(2): 2018/01/30(火)00:28 ID:fZrZLUfh(1)調 AAS
>>329
set "a=D:\comp" & set "b=D:\compopen"
setlocal enabledelayedexpansion
for /L %%i in (4,1,1000) do if "!a:~%%i,1!"=="" set "c=%%i" & goto x
:x
endlocal & set "c=%c%"
for /r "%a%" %%i in (*.zip *.rar) do set "d=%%~dpni" & set "e=%%~i" & call :y
goto :eof
:y
setlocal enabledelayedexpansion
7z x -o"!b!!d:~%c%!" "!e!"
1-
あと 670 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.033s