[過去ログ]
【.cmd】 バッチファイルスクリプト %12 【.bat】©2ch.net (1002レス)
【.cmd】 バッチファイルスクリプト %12 【.bat】©2ch.net http://mevius.5ch.net/test/read.cgi/tech/1489207631/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
297: デフォルトの名無しさん [sage] 2017/12/26(火) 01:23:11.58 ID:9+DFjrUc >>296 そりゃ分かるんだけど…。 UNIX の bash だっておかしいところが結構あってさ。 でも「構文解析が未熟な時代、全てを(記号ですら)コマンドだと置いた結果」という説明の仕方ができるそうな。 C言語の仕様だっていい加減後付けが多い。でも説明を試みた結果がANSI。無理が多いけど。 Windows界隈ってそういうのが貧しいと思う。 スレ違いだけど、PowerShell も Core とか言い出してからなんかおかしくないか? http://mevius.5ch.net/test/read.cgi/tech/1489207631/297
298: デフォルトの名無しさん [sage] 2017/12/27(水) 01:13:01.79 ID:1X8kZn43 bashはかなーり最近のプロダクトだと思うのだが http://mevius.5ch.net/test/read.cgi/tech/1489207631/298
299: デフォルトの名無しさん [sage] 2017/12/27(水) 19:45:46.24 ID:8XzWQMmb >>297 特別区切り文字という言葉はアレだけど cmd /? で表示されるヘルプの最終行に =;, は特別な文字として列挙されてますよ。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/299
300: デフォルトの名無しさん [sage] 2017/12/28(木) 06:04:09.70 ID:HvFHYdEd >>297 要はさんざん検証して挙動を確認しないと恐くて使えないってこったなw http://mevius.5ch.net/test/read.cgi/tech/1489207631/300
301: デフォルトの名無しさん [sage] 2017/12/28(木) 07:32:44.10 ID:psxJdr/O 関係ない話ですまんが いまだに cmd /? の表示が変だな、一部重複してる マイクロソフトは直す気が無いのか たぶんNTの頃から変なんだが http://mevius.5ch.net/test/read.cgi/tech/1489207631/301
302: デフォルトの名無しさん [sage] 2017/12/28(木) 08:43:15.72 ID:V28V958v バグレポートに誰も上げていないか、 あるいは上げられていても優先順位がものすごく低いのでしょう。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/302
303: デフォルトの名無しさん [sage] 2017/12/28(木) 18:35:17.03 ID:QlD4+lUL >>302 非成長分野、非収益持ち出し分野とみなされて、最低限の人数しかいないのでは おまけに優秀なのは来ない http://mevius.5ch.net/test/read.cgi/tech/1489207631/303
304: デフォルトの名無しさん [sage] 2017/12/28(木) 19:17:17.28 ID:uuf5XAZw 優秀な奴はさらっと変更して賞賛されるけど、 そうじゃない奴がさらっと変更すると、 勝手なことすんなって怒られるんだよな。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/304
305: デフォルトの名無しさん [sage] 2017/12/28(木) 22:46:38.96 ID:8hIgR6GI bash が最近のプロダクトだとか…ヨボヨボの痴呆が入ったおじいちゃんか? UNIX で bash が出たのって 20世紀なんだが。 >>299 これのことか?明らかに違う。 > 引用符が必要な特別な文字は次のとおりです: > <スペース> > &()[]{}^=;!'+,`~ >>300 自分が新規で書けるなら VBScript でいい。 「これは例外、あれも例外、それも例外」なブツなんか触りたくない。 そんな時間があるなら生産的な言語に費やしたい。 触らざるを得ないからイラつく。阿呆か。 PowerShell は Windows の自動化から管理系を抜き出した方向に行こうとしているので何だかねぇ… http://mevius.5ch.net/test/read.cgi/tech/1489207631/305
306: デフォルトの名無しさん [sage] 2017/12/29(金) 00:43:01.22 ID:oAr+Y8wr >>305 GNU後の新造品じゃねーか。モダンもいいところだろ。 歴史を知らないバカとは話が出来ないってのは本当だな。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/306
307: デフォルトの名無しさん [sage] 2017/12/29(金) 07:36:55.45 ID:kfbFSvw+ 今時VBScriptとか言ってる老害の相手するなよ... http://mevius.5ch.net/test/read.cgi/tech/1489207631/307
308: デフォルトの名無しさん [sage] 2017/12/29(金) 08:54:48.93 ID:oAr+Y8wr 年寄りのくせにGNU前を知らないんだとしたら、死んだ方がいいね。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/308
309: デフォルトの名無しさん [sage] 2017/12/29(金) 10:58:34.56 ID:dNvcaBYU VBScriptは依然として結構イケると思うけどな http://mevius.5ch.net/test/read.cgi/tech/1489207631/309
310: デフォルトの名無しさん [sage] 2017/12/29(金) 14:50:59.06 ID:Xr0syokO 真面目にそう思ってるならちょっとヤバイぞ http://mevius.5ch.net/test/read.cgi/tech/1489207631/310
311: デフォルトの名無しさん [sage] 2017/12/29(金) 17:11:52.20 ID:oAr+Y8wr VBAと混同してる人がいるようだ http://mevius.5ch.net/test/read.cgi/tech/1489207631/311
312: デフォルトの名無しさん [] 2017/12/29(金) 23:12:55.18 ID:1POkgVP3 >>298 はあ? http://mevius.5ch.net/test/read.cgi/tech/1489207631/312
313: デフォルトの名無しさん [sage] 2017/12/30(土) 17:45:48.22 ID:RVllgMXp バッチファイルなのになんでVBの話になるのん http://mevius.5ch.net/test/read.cgi/tech/1489207631/313
314: デフォルトの名無しさん [sage] 2018/01/01(月) 14:25:38.32 ID:TmlLnuaw >>301-302 コマンドのバグ ⇒ 全世界のユーザーに影響出るから下手に直せない コマンドのヘルプの文言誤り ⇒ 優先度低いのでなかなか直さない ってことかなるほど。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/314
315: デフォルトの名無しさん [sage] 2018/01/03(水) 18:47:59.00 ID:G1jkbehM >>313 cscriptで自身を実行する外見バッチ中身WSHみたいなんもあるにはあるし… http://mevius.5ch.net/test/read.cgi/tech/1489207631/315
316: デフォルトの名無しさん [sage] 2018/01/03(水) 20:04:05.34 ID:NAv6VFfd >>313 元を辿ってみると、>>297が話を逸らしたせいだ そこからどんどん逸れてvbに行き着いた >>315 batに埋め込めるのはjscript(条件コンパイルの構文がbatとうまい具合にかみ合った)だけでvbscriptは無理 http://mevius.5ch.net/test/read.cgi/tech/1489207631/316
317: デフォルトの名無しさん [sage] 2018/01/03(水) 20:12:05.39 ID:lLEkaf6s >>316 > vbscriptは無理 ちょっとはググれよ https://blogs.yahoo.co.jp/tt77tt77tt77mm/12847863.html http://mevius.5ch.net/test/read.cgi/tech/1489207631/317
318: デフォルトの名無しさん [sage] 2018/01/03(水) 21:17:45.06 ID:NAv6VFfd >>317 wsfの手があったか、あとjsでもスクリプトエンコードで書けばなんとかなるね http://mevius.5ch.net/test/read.cgi/tech/1489207631/318
319: デフォルトの名無しさん [sage] 2018/01/13(土) 16:23:41.90 ID:t3TbTPGI powershellで似たような事はできませんか? 1ファイルにしたくて http://mevius.5ch.net/test/read.cgi/tech/1489207631/319
320: デフォルトの名無しさん [sage] 2018/01/13(土) 16:32:17.66 ID:9pJBMU57 >>319 【最強CUI】PowerShell -Part 2 [無断転載禁止]©2ch.net https://mevius.5ch.net/test/read.cgi/tech/1480109402/ http://mevius.5ch.net/test/read.cgi/tech/1489207631/320
321: デフォルトの名無しさん [] 2018/01/18(木) 18:41:19.43 ID:lAsosfYH どうしても分からないので質問致します。 @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% http://mevius.5ch.net/test/read.cgi/tech/1489207631/321
322: デフォルトの名無しさん [] 2018/01/18(木) 18:41:39.14 ID:lAsosfYH 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 と無効な引数と言われてしまい動画の吸い出しが出来ません 完全に手詰まりなため、丸投げにはなってしまいますがご教授いただければと思います よろしくお願いします http://mevius.5ch.net/test/read.cgi/tech/1489207631/322
323: デフォルトの名無しさん [sage] 2018/01/18(木) 19:11:35.69 ID:r+5+UL4/ >>322 とりあえず最初の行を rem @echo off にしてどこでエラーになってのか確認しろよ http://mevius.5ch.net/test/read.cgi/tech/1489207631/323
324: デフォルトの名無しさん [sage] 2018/01/18(木) 19:15:53.38 ID:pm/tv2ru >>322 これ途中の処理抜けてない? TARGETにURLが入らないんだけど http://mevius.5ch.net/test/read.cgi/tech/1489207631/324
325: デフォルトの名無しさん [sage] 2018/01/18(木) 19:34:30.33 ID:pm/tv2ru 170のやつを適当に書き直したら動いたよ for /F tokens^=2^ delims^=^" %%I in ('type %HTML%^|find /I "data-sourcefile"') do set "TARGET=%%~I" http://mevius.5ch.net/test/read.cgi/tech/1489207631/325
326: デフォルトの名無しさん [] 2018/01/18(木) 19:58:03.19 ID:lAsosfYH >>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 http://mevius.5ch.net/test/read.cgi/tech/1489207631/326
327: デフォルトの名無しさん [] 2018/01/18(木) 20:06:19.33 ID:lAsosfYH >>325 ありがとうございます・・・ エラーを見たのですが、なぜかsourcefile=が付いてしまっていました 何度もありがとうございます http://mevius.5ch.net/test/read.cgi/tech/1489207631/327
328: デフォルトの名無しさん [sage] 2018/01/29(月) 01:16:37.30 ID:s5lQXlw3 echo abc 1>x1 1>x11 2>x2 3>x3 とするとDOS窓が応答しなくなった x11 x2 x3 ファイルができるが x1ファイルはできない http://mevius.5ch.net/test/read.cgi/tech/1489207631/328
329: デフォルトの名無しさん [sage] 2018/01/29(月) 14:21:26.57 ID:e8Iu9+Yp 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/ http://mevius.5ch.net/test/read.cgi/tech/1489207631/329
330: デフォルトの名無しさん [sage] 2018/01/29(月) 15:15:09.99 ID:LZ9wDs2K >>329 >>12-19の方法で相対パスを取得すれば出来ると思うよ http://mevius.5ch.net/test/read.cgi/tech/1489207631/330
331: デフォルトの名無しさん [sage] 2018/01/29(月) 16:22:04.20 ID:LZ9wDs2K 自分用に書いたbatを流用してみた 多分こんな感じで動くはず https://pastebin.com/zEpvpdCa http://mevius.5ch.net/test/read.cgi/tech/1489207631/331
332: デフォルトの名無しさん [sage] 2018/01/30(火) 00:28:24.66 ID:fZrZLUfh >>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!" http://mevius.5ch.net/test/read.cgi/tech/1489207631/332
333: 330 [sage] 2018/01/30(火) 04:04:55.14 ID:I+jPXl6+ >>332 なるほど 自分のは冗長に書きすぎてたね http://mevius.5ch.net/test/read.cgi/tech/1489207631/333
334: デフォルトの名無しさん [sage] 2018/01/30(火) 16:28:50.07 ID:/nodnUUg >>329 使い回しあんまり考えなければ -------- ここから set path=C:\Program Files\7-Zip;%path% cd /d D:\comp for /f "usebackq delims=" %%i in (`dir /ad /s /b`) do ( echo,"%%~i" set "tmppath0=%%~i" call set "tmppath1=D:\compopen%%tmppath0:~7%%" pushd "%%~i" call 7z.exe x *.* -spe -bso0 -o"%%tmppath1%%\*" 2>>D:\compopen\errlog.txt popd ) -------- ここまで マズいフォルダ(パス)名が無いことを前提に、もろもろ 7-Zip に良きにはからってもらう http://mevius.5ch.net/test/read.cgi/tech/1489207631/334
335: デフォルトの名無しさん [] 2018/01/30(火) 17:10:39.08 ID:25OUwAYA >>332 >>334 ありがとうございます! 150GBくらいあるから、まだ展開し終えてないけど、 動き出しました。 実際のcompの中のa,b,c,・・・フォルダの中のzipやrarの名前は、 今のところ、下記みたいにフォルダの文字列含んでて、階層を上にしてもよかったかなと思いつつ、 例外も出てくるかもしれないので、このまま走らせてみます。 しっかり解凍しだしてフォルダ生成してくれてます。 D:/ ├comp/ │ └ a/ │ └ a111.zip │ └ a222.zip │ └ b/ │ └ xx1b.rar │ └ xx2b.rar │ └ c/ │ └ cttt.zip │ └ crrr.rar http://mevius.5ch.net/test/read.cgi/tech/1489207631/335
336: デフォルトの名無しさん [sage] 2018/01/31(水) 00:35:03.40 ID:ah9e2u9N そもそも、そんな複雑な手続きには、PowerShell, Ruby などを使えw http://mevius.5ch.net/test/read.cgi/tech/1489207631/336
337: デフォルトの名無しさん [sage] 2018/02/03(土) 09:54:54.05 ID:y+J4EMEq コマンドプロンプトの仕様についてだけど、遅延展開ってデフォでONじゃダメだったのかな? あれ打ち込むのマンドクサ('A`) http://mevius.5ch.net/test/read.cgi/tech/1489207631/337
338: デフォルトの名無しさん [sage] 2018/02/05(月) 04:53:11.12 ID:j3KUW6ez 1.test.exeという実行ファイルがある。 2.test.exeのフルパスは必要に応じて「test.exeをShift+右クリック」→「パスをコピー」して変数testExeに格納してもらう。 このフルパスには"D:\a bc\test.exe"のように空白が含まれることがあるとする。 3.FOR文でこのtest.exeを--helpオプションつきで実行し、結果からfindstr&setしたい。 ---作成バッチ--- @echo off cd /d %~dp0 set testExe="D:\a bc\test.exe" FOR /F "tokens=3" %%a IN ('%testExe% --help ^| findstr "TargetStr"') DO ( set kekka=%%a ) @echo %kekka% pause ---実行結果--- 'D:\a' は、内部コマンドまたは外部コマン ド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。 ---解1--- testExeを設定する際、全体をダブルクォートで囲むのではなく、 空白を含むフォルダだけをダブルクォートで囲むようにする。 set testExe=D:\"a bc"\test.exe 解1はtestExeの設定が地味に面倒になってしまうので回避したいのですが、何か良い方法はないでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1489207631/338
339: デフォルトの名無しさん [sage] 2018/02/05(月) 05:04:15.80 ID:j3KUW6ez >>338 追記 パスに空白を含む場合も問題ですが、 set testExe="D:\abc\test.exe" のように空白を含まない場合には ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。 と言われてエラーになるので、それも含めてなんとかしたいという点を書き忘れていました。 「FOR文でフルパスでコマンドを実行したい場合、どうすればよいのでしょう」というのが根本的な質問です。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/339
340: デフォルトの名無しさん [sage] 2018/02/05(月) 05:55:25.28 ID:j3KUW6ez すみません。>>338-339ですが、直接フルパスで実行するのではなくフォルダに移動して実行することで一応解決しました。 --- @echo off cd /d %~dp0 set testExe="D:\a bc\test.exe" FOR /F "tokens=1 delims=" %%I IN (%testExe%) DO ( IF "%%~nxI"=="test.exe" ( pushd "%%~dpI" FOR /F "tokens=3" %%M IN ('.\%%~nxI --help ^| findstr "TargetStr"') DO ( set kekka=%%M ) popd ) ) @echo %kekka% pause --- 問題点や、もっとスマートな方法があれば、教えていただけると助かります。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/340
341: デフォルトの名無しさん [sage] 2018/02/05(月) 08:19:13.38 ID:ETXmgzVd >>338 @echo off cd /d %~dp0 set testExe="D:\a bc\test.exe" for /f "tokens=3" %%a in ('start /wait /b "" %testExe% --help ^| findstr "TargetStr"') DO ( set kekka=%%a ) @echo %kekka% pause http://mevius.5ch.net/test/read.cgi/tech/1489207631/341
342: デフォルトの名無しさん [sage] 2018/02/05(月) 08:24:05.58 ID:chwOG0ZE >>338 自分もこの問題に直面して同じ解決策とったんだけどこれって何が原因でこうなるの? http://mevius.5ch.net/test/read.cgi/tech/1489207631/342
343: デフォルトの名無しさん [sage] 2018/02/05(月) 10:47:37.64 ID:ETXmgzVd こっちのがいいかも 前に似たようなネタがあったような set testExe="D:\a bc\test.exe" for /f "tokens=3" %%a in ('cmd /s /c "%testExe% --help | findstr "TargetStr""') do ( http://mevius.5ch.net/test/read.cgi/tech/1489207631/343
344: デフォルトの名無しさん [sage] 2018/02/05(月) 11:16:40.07 ID:j3KUW6ez >>341 できました!なるほど、startを使えばよかったのですね・・・。ありがとうございます。 >>342 なんなんでしょうね。仕組みがよくわからないです・・・。どなたか解説を・・・。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/344
345: デフォルトの名無しさん [sage] 2018/02/05(月) 11:23:08.71 ID:ETXmgzVd やっぱり >>343 の cmd はダメだな testExe や TargetStr の中のスペースがデリミタ扱いされる スペースが2個以上続くと誤動作する >>341 の start がいい http://mevius.5ch.net/test/read.cgi/tech/1489207631/345
346: デフォルトの名無しさん [sage] 2018/02/05(月) 11:37:48.40 ID:j3KUW6ez >>343 >>345 重ねてありがとうございます。 cmdの場合は以下でうまくいくようです。 set testExe="D:\a bc\test.exe" FOR /F "tokens=3" %%a IN ('cmd /c %testExe% --help ^| findstr "TargetStr"') DO ( http://mevius.5ch.net/test/read.cgi/tech/1489207631/346
347: デフォルトの名無しさん [sage] 2018/02/05(月) 13:08:35.91 ID:Emu9UBTE 括弧の中の最初と最後の引用符が削除される? http://mevius.5ch.net/test/read.cgi/tech/1489207631/347
348: デフォルトの名無しさん [sage] 2018/02/05(月) 14:11:13.29 ID:ETXmgzVd やっと思い出したぞ裏技w 前後の端にダミーの二重引用符 ^" を付けるんだった >>347 のおかげで思い出したぜ set testExe="D:\a bc\test.exe" for /f "tokens=3" %%a in ('^"%testexe% --help ^| findstr "targetstr"^"') do ( http://mevius.5ch.net/test/read.cgi/tech/1489207631/348
349: デフォルトの名無しさん [sage] 2018/02/06(火) 13:18:25.70 ID:m2OYikdE >>347-348 できました。なるほど、そういう解釈がされるんですね・・・。 バッチってほんと思わぬところでひっかかりますよね。とても勉強になりました。ありがとうございます。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/349
350: デフォルトの名無しさん [] 2018/02/07(水) 10:59:47.18 ID:fDqCQtuz VBでプログラムを作っているのですが、行き詰ってしまったので質問させていただきます。 バッチでiniファイルを読み込み、iniから取得したデータを格納した変数をVBのソース内で使いたいのですが可能ですか? exe形式での納品となるのでiniファイルの読み込みはどうしてもバッチ内で行いたいのです。 ちなみに処理の流れとしては、iniファイル読み込み→exeファイル実行となっています。 どなたかご教授ください。よろしくお願いいたします。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/350
351: デフォルトの名無しさん [sage] 2018/02/07(水) 11:12:08.68 ID:fDqCQtuz 申し訳ございません。 バッチでiniファイルを読み込み、iniから取得したデータを 格納した変数をVBのソース内で使いたいのですが可能ですか? × VBのソース内の変数に格納したいのですが可能ですか? ○ でした。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/351
352: デフォルトの名無しさん [sage] 2018/02/07(水) 11:43:25.21 ID:LQaGrglb バッチで、ini ファイルを読み込み、必要な値を取り出して、 それらを引数にして、exe を起動する そして、exe 内では、引数から読み込んだ値を使う http://mevius.5ch.net/test/read.cgi/tech/1489207631/352
353: デフォルトの名無しさん [] 2018/02/07(水) 12:00:38.62 ID:fDqCQtuz >>352 どう調べたらいいか分からず困っていたのですが、引数の取得で検索すればなんとかなりそうですね。 後は自分で調べてやってみます。ありがとうございました。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/353
354: デフォルトの名無しさん [sage] 2018/02/07(水) 16:46:31.34 ID:EyPJd6fI バッチだと for文を使います 複雑なことをするのであればVBで直接読み込む方法もあります http://mevius.5ch.net/test/read.cgi/tech/1489207631/354
355: デフォルトの名無しさん [sage] 2018/02/10(土) 12:18:28.89 ID:/lSv2IRR バッチでiniファイルなんて読み込めるの? VBとかからGetPrivateProfileStringとかのAPIを使うんじゃないの? まあ力技で出来ないことはないんだろうけど自分が知らないだけで一般的なやり方というのがあるのかな? http://mevius.5ch.net/test/read.cgi/tech/1489207631/355
356: デフォルトの名無しさん [sage] 2018/02/10(土) 15:32:33.27 ID:K6TfvilX ググればふつうに出てくるようだが。(内容まではちゃんと見てない) http://mevius.5ch.net/test/read.cgi/tech/1489207631/356
357: デフォルトの名無しさん [sage] 2018/02/10(土) 16:29:19.90 ID:Sj+J5yD3 >>355 >>354の言うようにfor文を使う わかりやすいとは言えないし特殊文字が含まれると色々面倒なのでおすすめはしない http://mevius.5ch.net/test/read.cgi/tech/1489207631/357
358: デフォルトの名無しさん [sage] 2018/02/11(日) 19:16:43.96 ID:l1W9SMIH バッチファイルでファイル操作って一見ちゃんと動いてるように見えて穴だらけって場合が多いからやりたくないな wshで実装したりps辺りで既存のAPI呼び出す方がいい http://mevius.5ch.net/test/read.cgi/tech/1489207631/358
359: デフォルトの名無しさん [sage] 2018/02/11(日) 19:44:19.46 ID:+WWL4Di4 batで設定呼び出したい時はiniじゃなくてsetting.batに変数を直接記述してcallしてるわ このやり方も良いやり方なのかどうか分からんけど http://mevius.5ch.net/test/read.cgi/tech/1489207631/359
360: デフォルトの名無しさん [sage] 2018/02/12(月) 12:02:40.25 ID:OYWjTvif http://ascii.jp/elem/000/001/630/1630041/ Windows 10 RS4に追加された「curl」と「tar」コマンド って curl と tar が追加されるんだ PowerShell にも curl コマンド(エイリアス)があってややこしさが増すな でも、標準で使えるようになるのはバッチファイル使ってる身とすれば 嬉しくはある http://mevius.5ch.net/test/read.cgi/tech/1489207631/360
361: デフォルトの名無しさん [sage] 2018/02/12(月) 15:53:42.90 ID:BbO5lIMB もうRS4か RS3の不具合なんとかしてくれよ http://mevius.5ch.net/test/read.cgi/tech/1489207631/361
362: デフォルトの名無しさん [] 2018/02/18(日) 16:07:03.48 ID:OqSvNe2j ファイル圧縮バッチを hta の画面にドロップするだけで実行するやつ作った https://medaka.5ch.net/test/read.cgi/csaloon/1518353191/843-846 ファイルをバッチファイルにドロップして引数受け取りは普通にあるけど ファイル名の一部を文字列としてドロップしても起動されないのでこういう方法を取った。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/362
363: デフォルトの名無しさん [sage] 2018/02/18(日) 16:25:37.39 ID:ZqWPhgUg >>360 Windows10 なら、WSL で、MS Store から、Ubuntu 16.04 LTS をダウンロードすれば、 curl, tar も入っている 他のLinux のコマンドも、一杯ある http://mevius.5ch.net/test/read.cgi/tech/1489207631/363
364: デフォルトの名無しさん [sage] 2018/02/18(日) 19:16:35.61 ID:yvQzNzLN >>363 それはバッチから使えるの? http://mevius.5ch.net/test/read.cgi/tech/1489207631/364
365: デフォルトの名無しさん [sage] 2018/02/18(日) 19:20:27.56 ID:F2O3xW/S 普通に使える ubuntu run curl --help http://mevius.5ch.net/test/read.cgi/tech/1489207631/365
366: デフォルトの名無しさん [sage] 2018/02/19(月) 04:53:30.17 ID:xIEc0S27 Linux(Ubuntu)側のbash、Windows側のPowerShell・コマンドプロンプトから、 相互のアプリ・コマンドを実行できる 相互のパイプも、つなげられる つまり、Linux側のbashは、Windows10 の1つのアプリになっている http://mevius.5ch.net/test/read.cgi/tech/1489207631/366
367: デフォルトの名無しさん [sage] 2018/02/19(月) 08:14:36.88 ID:2cNNs3G6 > Ubuntu 16.04 LTS をダウンロードすれば、 この手の前提条件が無いことがバッチのメリットなのに... http://mevius.5ch.net/test/read.cgi/tech/1489207631/367
368: デフォルトの名無しさん [sage] 2018/02/19(月) 22:58:00.92 ID:oh22XJYs >>363 Web開発テスト用の範囲を超えてない。 当のMSが「運用には使ってくれるな」つってるのによ。 お前馬鹿か?馬鹿だろ。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/368
369: デフォルトの名無しさん [sage] 2018/02/19(月) 23:41:31.81 ID:9tX9GnHd なんでこの人「運用」とか言い出してんの? http://mevius.5ch.net/test/read.cgi/tech/1489207631/369
370: デフォルトの名無しさん [sage] 2018/02/19(月) 23:44:41.90 ID:uhfYTKrf >>368 WSLはウェブサービス開発で使って、 実際にそのウェブサービスを動かす(=運用)するのは ネイティブなLinuxの上だぞ。例えばAzure上のLinuxとか 運用に使ってくれるなっていうのは、WSL上でウェブサービスを動かして 実際に不特定の人にサービスを提供するなっていう意味だ http://mevius.5ch.net/test/read.cgi/tech/1489207631/370
371: デフォルトの名無しさん [] 2018/02/20(火) 00:06:58.45 ID:amqSspGZ WSL 上で、Webサーバーとかを常時接続させて運用できない まあ最初から、自分のデスクトップPC を外部につなげて、 そんなサービスをする奴は、居ないだろ http://mevius.5ch.net/test/read.cgi/tech/1489207631/371
372: デフォルトの名無しさん [sage] 2018/02/20(火) 00:08:38.09 ID:ZtM0s1po バッチで使うのは運用ではないと? http://mevius.5ch.net/test/read.cgi/tech/1489207631/372
373: デフォルトの名無しさん [sage] 2018/02/20(火) 00:13:22.58 ID:XC4KsyV/ >>370 端末のスタートアップスクリプトに使うのも用途外。 だから「使える」とか言うのは明らかに言い過ぎ。 お前馬鹿か?馬鹿だろ。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/373
374: デフォルトの名無しさん [sage] 2018/02/20(火) 00:40:00.47 ID:wdwe47Ke >>373 > 端末のスタートアップスクリプトに使うのも用途外。 端末のスタートアップスクリプトの話なんかしてないんだが、 何を言い出してるんだ? そもそも端末のスタートアップスクリプトの 意味わからねぇw >>372 運用っていうから悪いんだよ。 「一般ユーザーに対してのウェブサービスの提供」 MSが使うなって言ってるのはこれだけだよ http://mevius.5ch.net/test/read.cgi/tech/1489207631/374
375: デフォルトの名無しさん [sage] 2018/02/20(火) 00:43:54.06 ID:wdwe47Ke うん、ちゃんとFAQに書いてあったね https://docs.microsoft.com/en-us/windows/wsl/faq > Also, even though you will be able to run many popular server applications (e.g. Redis), > we do not recommend WSL for server scenarios ? Microsoft offers a > variety of solutions for running production Ubuntu workloads in Azure, Hyper-V, and Docker. サーバーアプリケーションを実行できるが、サーバーとしてのシナリオは推奨してないと http://mevius.5ch.net/test/read.cgi/tech/1489207631/375
376: デフォルトの名無しさん [sage] 2018/02/20(火) 00:46:37.66 ID:wdwe47Ke もう一つ、誰のためのものですか?という質問には > Who is this for? > This is primarily a tool for developers -- > especially web developers and those who work on or with open source projects. 第一に開発者、特にウェブ開発者やオープンソースプロジェクトを行ってる人 > This allows those who want/need to use Bash, common Linux tools (sed, awk, etc.) and > many Linux-first tools (Ruby, Python, etc.) to use their toolchain on Windows. bashや多くのLinuxツールや言語を使いたい人のためのものと http://mevius.5ch.net/test/read.cgi/tech/1489207631/376
377: デフォルトの名無しさん [sage] 2018/02/20(火) 00:57:48.56 ID:amqSspGZ Windows のコマンドプロンプトから、 wsl bash -c "echo 'hello'" 出力結果 : hello これぐらいのLinux の起動・実行・終了は、1秒! 定時処理ぐらい楽勝 サーバーみたいに常時実行しなければ大丈夫 http://mevius.5ch.net/test/read.cgi/tech/1489207631/377
378: デフォルトの名無しさん [sage] 2018/02/20(火) 01:27:38.14 ID:wdwe47Ke >>377 wsl.exeを使うなら bash -c はいらないぞ wsl echo hello でよい wsl echo --help と wsl /bin/echo --help の実行結果が違うから wslの中ではbash上で動いているっぽい wsl ps axfu やってもbashいないんだけどな まあ詳しい人に聞けば、そこら辺の動きは知ってるだろう。 あと、別にLinuxは起動してるわけじゃないのでLinuxの起動と書かれると違和感がある。 WSLはLinuxカーネルを模したサブシステム http://mevius.5ch.net/test/read.cgi/tech/1489207631/378
379: 377 [sage] 2018/02/20(火) 01:41:53.13 ID:amqSspGZ Windows のコマンドプロンプトで、 >where wsl C:\Windows\System32\wsl.exe >where ubuntu C:\Users\ユーザー名\AppData\Local\Microsoft\WindowsApps\ubuntu.exe wsl, ubuntu(Linux), bash の関係がよくわからない 漏れのノートPC は、i3、メモリ8GB、SSD だけど、 Windows10 の単なるアプリだから、起動・実行・終了で、1秒ほど WSLは、もう正規版だし、単なるアプリとして使う分には、問題ないだろ http://mevius.5ch.net/test/read.cgi/tech/1489207631/379
380: 377 [sage] 2018/02/20(火) 01:44:26.24 ID:amqSspGZ 書き忘れた Windows のコマンドプロンプトで、 >where bash C:\Windows\System32\bash.exe http://mevius.5ch.net/test/read.cgi/tech/1489207631/380
381: 377 [sage] 2018/02/20(火) 01:53:46.64 ID:amqSspGZ Windows のコマンドプロンプトで、 >wsl echo hello >ubuntu -c "echo hello" >bash -c "echo hello" これらは皆、hello が出力されるけど、書き方が異なる wsl では、echo がサブコマンドになっているのかも http://mevius.5ch.net/test/read.cgi/tech/1489207631/381
382: デフォルトの名無しさん [sage] 2018/02/20(火) 01:58:14.32 ID:wdwe47Ke >>379 俺もちゃんと調べたわけじゃないけど、 開発の歴史からすると、 最初はbash on ubuntu on windowsという扱いで bash.exeでUbuntu上のbashが起動できる(おまけでLinuxコマンドも使えるよ!)という扱いだった。 このbashが起動できるという仕組みを提供しているものの名前がWindows Subsystem for Linuxだったわけだが 開発が継続しLinuxカーネルとの互換性があがってもうbashだけが起動するもんじゃないよねってことで Windows Subsystem for Linuxの略であるwslと呼ばれるようになり。 wsl.exeができた(おそらくbash -c "コマンド" と面倒な書き方をしなくて良いラッパー) それと前後して、ubuntuだけじゃなくopenSUSEやFedoraも動くよ!(いやFedoraまだリリースされてないんだが) ということになり、bash.exeやwsl.exeで起動するのはどっちのディストリよ? ってことでそれを切り替えることができるwslconfig.exeができた。 また直接wslconfig.exeの設定によらず、ubuntuやopensuseを直接起動するための ubuntu.exe やopensuse-42.exe が出来た。 こんな所だと思う http://mevius.5ch.net/test/read.cgi/tech/1489207631/382
383: デフォルトの名無しさん [sage] 2018/02/20(火) 02:00:13.61 ID:ZtM0s1po なんでバッチスレでパソコン博士がWSLでイキってるの? http://mevius.5ch.net/test/read.cgi/tech/1489207631/383
384: デフォルトの名無しさん [sage] 2018/02/20(火) 02:01:02.04 ID:wdwe47Ke >>381 ubuntu /?をするとわかるが、 ubuntu run echo helloが正しい ubuntu.exeもwsl.exeもbash.exeもパラメータの扱いが違うだけで ディストリ上のbashを実行していることは確かなようだ http://mevius.5ch.net/test/read.cgi/tech/1489207631/384
385: デフォルトの名無しさん [sage] 2018/02/20(火) 02:01:43.71 ID:wdwe47Ke >>383 Windows 10において、バッチファイルでWSLと連携するのは 当たり前の話になってきているから http://mevius.5ch.net/test/read.cgi/tech/1489207631/385
386: デフォルトの名無しさん [sage] 2018/02/20(火) 02:04:18.90 ID:wdwe47Ke ubuntuは Usage: <no args> - Launches the distro's default behavior. By default, this launches your default shell. と書いてあるから、bashじゃなくてデフォルトシェルが呼び出されるのかも。 うーん、どれを使うのが良い(汎用的)なのだろう? http://mevius.5ch.net/test/read.cgi/tech/1489207631/386
387: 377 [sage] 2018/02/20(火) 02:51:43.01 ID:amqSspGZ wsl(Linux のbash)・PowerShell・コマンドプロンプトの3つが、 パイプでもつなげられるし、シームレスになってきて、CUI が統合されてきているから、 個別の話よりも、3つのCUI をパイプでどうつなげるかの方に、 話の焦点が移ってきている http://mevius.5ch.net/test/read.cgi/tech/1489207631/387
388: 377 [sage] 2018/02/20(火) 03:10:41.01 ID:amqSspGZ bash は、C:\Windows\System32\bash.exe を起動する ubuntu は、bash, zsh など、自分がデフォルトに設定した、シェルを起動する。 環境変数、$SHELL >wsl echo $SHELL /bin/bash wsl コマンドが、ubuntu, open suse など、 自分がデフォルトに設定した、Linux を起動 >wslconfig /list Windows Subsystem for Linux ディストリビューション: Ubuntu (既定) 推測で書いたけど、普段は、wsl を使うと良いかも http://mevius.5ch.net/test/read.cgi/tech/1489207631/388
389: デフォルトの名無しさん [sage] 2018/02/20(火) 06:46:25.63 ID:+0IlbXev >>383 オモチャ買ってもらった子供が「見て見てこれすごいんだよー」って言ってるような感じ 暖かく見守ってやれ http://mevius.5ch.net/test/read.cgi/tech/1489207631/389
390: デフォルトの名無しさん [sage] 2018/02/20(火) 12:42:35.46 ID:ZtM0s1po >>389 WSL出た頃なら仕方が無いが... やっぱパソコン博士レベルだと今頃になってやっとおもちゃを見つける感じなのか。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/390
391: デフォルトの名無しさん [sage] 2018/02/20(火) 19:54:28.42 ID:+0IlbXev へへーん、ぼくなんてまえからもってるもんねー それはすごいねー w http://mevius.5ch.net/test/read.cgi/tech/1489207631/391
392: デフォルトの名無しさん [sage] 2018/02/20(火) 21:48:42.53 ID:BI5N21qv さすがにスレチだからもうやめとけと思うけど、WSLについて少し調べてみようと思うきっかけにはなったわ。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/392
393: デフォルトの名無しさん [sage] 2018/02/20(火) 22:56:06.68 ID:wdwe47Ke パソコン先生に恨みでもあるのかな? そんな話をしてもバッチファイルを書く上で 何の意味もないと思うんだが、話をしたいのだろうね http://mevius.5ch.net/test/read.cgi/tech/1489207631/393
394: デフォルトの名無しさん [sage] 2018/02/20(火) 23:00:35.05 ID:wdwe47Ke >>390 Bash on Ubuntu on Windowsは、早く使いたかったんで Inside Previewに変えてまで使ったよ。 GUIアプリには対応していないって書いてあったが仕組み上 GUIアプリ動くんじゃね?ってそこの頃はまだ情報が少なかったけど 実際に自分で試してxeyes は動いたーって2ちゃんねるに書いた記憶がある http://mevius.5ch.net/test/read.cgi/tech/1489207631/394
395: デフォルトの名無しさん [sage] 2018/02/20(火) 23:11:12.21 ID:BI5N21qv 自分語りとか余計なことをダラダラ書き連ねるから嫌われるんだよ。 http://mevius.5ch.net/test/read.cgi/tech/1489207631/395
396: デフォルトの名無しさん [sage] 2018/02/20(火) 23:20:45.61 ID:wdwe47Ke 嫌うのは相手の問題だからどうしようもない 俺に対する勘違いは、俺の問題だから解決する必要がある http://mevius.5ch.net/test/read.cgi/tech/1489207631/396
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 606 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.031s