1 名前:デフォルトの名無しさん mailto:sageteoff [2015/02/25(水) 19:09:59.39 ID:5hx8q1nT.net] 拡張子が .cmd または .bat のバッチファイルのスクリプティング(プログラミング)に関わる 質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです。 ※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう。 前スレ 【.cmd】 バッチファイルスクリプト %10 【.bat】 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 pc12.2ch.net/test/read.cgi/tech/1197881068/ %1 pc11.2ch.net/test/read.cgi/tech/1178281991/
516 名前:くはないかな [] [ここ壊れてます]
517 名前:デフォルトの名無しさん mailto:sage [2016/04/12(火) 08:40:26.31 ID:xYAotuK9.net] ちょっと凝ったことしようとしたらいきなり面倒になったり トラップもそれなりにあるし わざわざ覚える言語ではないと思う bash 並みになればまだいいんだが
518 名前:デフォルトの名無しさん mailto:sage [2016/04/12(火) 10:03:04.09 ID:W9B2ZLoA.net] 今から覚えるにはちょっと…というのは解かるんだが 一番簡単なものだし、ちょこっとやる分には良いとっかかりになると思うよ ヘルプ読むだけで十分概要はわかるしね それから何にいくのかは、自分が何に興味あるかで決めればいい
519 名前:デフォルトの名無しさん mailto:sage [2016/04/12(火) 22:44:22.00 ID:N5k4ywKZ.net] 皆さんありがとうございます cmdは少し学んで、その後win10に向けてshellを学ぼうかなと思います
520 名前:デフォルトの名無しさん mailto:sage [2016/04/29(金) 16:15:40.02 ID:Du8RELkw.net] ワイルドカード指定で否定は出来る? 例えば「指定フォルダ以下に存在する拡張子がtxt"以外"のファイルを全て削除(サブフォルダ含む)」 みたいな事をやりたいんだけど。
521 名前:デフォルトの名無しさん mailto:sage [2016/04/29(金) 21:30:07.02 ID:nOk/Iq10.net] >>500 そういう場合は for /f %%i in ('dir "%1" /a-d /b /s | findstr /r /i /c:".txt\>"') do del %%i というバッチを書いて第一引数に指定フォルダを渡せばいいんじゃないの??
522 名前:デフォルトの名無しさん mailto:sage [2016/04/29(金) 21:35:10.00 ID:nOk/Iq10.net] 間違えた。 for /f %%i in ('dir "%1" /a-d /b /s | findstr /r /i /v /c:".txt\>"') do del %%i だった。
523 名前:デフォルトの名無しさん mailto:sage [2016/04/29(金) 23:27:50.12 ID:Du8RELkw.net] ワイルドカードで否定な指定は無理なのか。 ありがとう。ちょっと検討しなおしてみる。
524 名前:デフォルトの名無しさん mailto:sage [2016/04/30(土) 22:24:06.87 ID:HLsp90ue.net] >>503 ワイルドカードで否定、というより… hoge.txt hoge.doc hoge.xls … とあったとしてだよ。 .txt 以外の拡張子を持つファイル、という指定は Linux の bash でも 1コマンドでは出来ないよ?? とりあえず、俺の知る限りのコマンドラインシェルでは出来ない。
525 名前:デフォルトの名無しさん mailto:sage [2016/05/01(日) 02:14:20.07 ID:f7rDjALb.net] 除外指定と言いたいのだろうけど三国人か? 496弄れば除外設定の拡張子もサブフォルダ以下を含めるかも引数で指定出来るようになるだろうに何か問題あるの?
526 名前:デフォルトの名無しさん mailto:sage [2016/05/01(日) 08:38:28.34 ID:4tDBI2/Z.net] 正規表現だと否定って言うのは普通に使うから別に違和感ないけどね それ以前にいきなり三国人とか言い出す癖直した方がいいと思うよ
527 名前:デフォルトの名無しさん [2016/05/01(日) 11:19:50.80 ID:tKi6j9CT.net] 匿名通信(Tor、i2p等)ができるファイル共有ソフトBitComet(ビットコメット)みたいな、 BitTorrentがオープンソースで開発されています 言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか? Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします https://twitter.com/Lyrise_al ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw The Covenant Project 概要 Covenantは、純粋P2Pのファイル共有ソフトです 目的 インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します 特徴 Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW) 接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です DHTにはKademlia + コネクションプールを使用します UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります) 検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません 。
528 名前:デフォルトの名無しさん mailto:sage [2016/05/01(日) 15:01:02.76 ID:gt2lBnxw.net] 一般的ではないが、bash他にはそれっぽい拡張があるといえばある>否定 shopt -s extglob; ls !(*.txt)
529 名前:デフォルトの名無しさん mailto:sage [2016/05/01(日) 20:56:52.01 ID:w3ycpbWL.net] >>506 それで思い出したけど、ワイルドカードにはそもそも否定、っていう概念が無いのよね。 >>508 それは知らなかったぜ…。が、やっぱ拡張であって1コマンドじゃないのね。
530 名前:デフォルトの名無しさん mailto:sage [2016/05/02(月) 11:40:31.88 ID:ZqwyA4jL.net] xcopyだと /EXCLUDE で除外したいパスを指定できるけど そういえば他のコマンドでは無いよね。
531 名前:デフォルトの名無しさん mailto:sage [2016/05/09(月) 14:25:03.70 ID:LpHkpPcH.net] >>506 > 正規表現だと否定って言うのは普通に使うから別に違和感ないけどね 普通に使う?? 否定の正規表現がどのくらい面倒臭い代物か知ってて言ってんのかよ
532 名前:デフォルトの名無しさん mailto:sage [2016/05/09(月) 20:31:48.60 ID:4hkTezx/.net] >>511 若いなお前
533 名前:デフォルトの名無しさん mailto:sage [2016/05/11(水) 20:07:41.82 ID:+ByNjd23.net] >>511 お前は正規表現の前に日本語を勉強すべき
534 名前:デフォルトの名無しさん mailto:sage [2016/05/15(日) 23:09:30.40 ID:0PD+6ouG.net] Windows10 でコマンドプロンプトの透明度(不透明度)が設定できますが color で色を変えるように、透明度の変更をコマンドでやるには どうすれば良いでしょうか?
535 名前:デフォルトの名無しさん [2016/06/06(月) 05:31:09.64 ID:/VUqLFGt.net] フォルダ内に含まれるファイル名(若いファイル名)を取得して、そのファイル名 をフォルダ名としてリネームすることはできないのでしょうか? ■フォルダ1 ┣ファイル1 ┣ファイル2 ■フォルダ2 ┣ファイル3 ┣ファイル4 といったフォルダ構造があったばあい、 ■ファイル1 ┣ファイル1 ┣ファイル2 ■ファイル3 ┣ファイル3 ┣ファイル4 といった感じにリネームしたいんです ヒントがあれば教えてください
536 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 05:36:07.56 ID:mrKNlhKB.net] >>515 再帰呼び出し
537 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 05:59:54.20 ID:JVcEODJX.net] ソフ板の libre office スレで聞いていた人かな、あっちではスレを移動するとの 断りも何もせず放置したように移動してきてるみたいだけど 別人ならごめん 結果的に同名のフォルダとなる場合のリネームのルールさえ決めておけば for でやってもそんなに難しくはない
538 名前:デフォルトの名無しさん [2016/06/06(月) 06:39:56.64 ID:/VUqLFGt.net] >>516 ファイル名をフォルダ名にリネームしている、参考ページがあれば教えてもらえないですか? >>517 別人ではないですよ。 forを使う場合は、どうやるんでしょうか? サンプルが載ってるページがあれば教えてください
539 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 07:38:12.87 ID:mIdKUrWt.net] >>518 こんな感じ @echo off for /f "delims=" %%i in ('dir /b /on /ad') do ( for /f "delims=" %%j in ('dir /b /o-n /a-d "%%~i"') do set name=%%~j call ren "%%~i" "%%name%%" ) フォルダ名の重複によるリネームエラーを変名してリトライするなら 上の call ren "%%~i" "%%name%%" を set src=%%~i call set dst=%%name%% call :ren の3行に代えて下を追加(引数渡しでなく環境変数渡しなのは、特殊な文字の変換をなるべく防ぐため) goto :eof :ren ren "%src%" "%dst%" 2>nul set suffix=1 if %errorlevel% equ 0 goto :eof :loop ren "%src%" "%dst% (%suffix%)" 2>nul set /a suffix+=1 if %suffix% gtr 10 echo ***打ち切り***&goto :eof if %errorlevel% neq 0 goto :loop goto :eof
540 名前:デフォルトの名無しさん [2016/06/06(月) 08:36:49.68 ID:/VUqLFGt.net] ↑回答ありがとうございます。自分には理解できないので 調べて読み解いて、理解できあなかったらまた質問
541 名前:ウせてもらいます。 [] [ここ壊れてます]
542 名前:デフォルトの名無しさん [2016/06/06(月) 12:24:37.84 ID:/VUqLFGt.net] ↑無事動作しました。 ありがとうございました。 今まで、相当に無駄な作業してました。
543 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 15:17:54.02 ID:mIdKUrWt.net] >>521 余計なことかも知れないが、空のフォルダがあった場合に変になるのでそのフォルダはリネームしないことにすると以下のようになる @echo off pushd %1 for /f "delims=" %%i in ('dir /b /on /ad 2^>nul') do ( call set folder=%%~i call :search_file call :ren ) popd goto :eof :search_file set fname= for /f "delims=" %%j in ('dir /b /on /a-d "%folder%" 2^>nul') do set fname=%%~j&goto :eof goto :eof :ren if not defined fname goto :eof set suffix=1 ren "%folder%" "%fname%" 2>nul :retry if %errorlevel% equ 0 goto :eof ren "%folder%" "%fname% (%suffix%)" 2>nul set /a suffix+=1 if %suffix% gtr 10 echo ***打ち切り(%folder%)***&goto :eof goto :retry
544 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 17:00:29.53 ID:mIdKUrWt.net] 訂正 call set folder=%%~i for /f "delims=" %%j in ('dir /b /on /a-d "%folder%" 2^>nul') do set fname=%%~j&goto :eof ↓ set folder=%%~i for /f "delims=" %%j in ('dir /b /on /a-d "%%folder%%" 2^>nul') do set fname=%%~j&goto :eof
545 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 19:49:58.32 ID:wj+hntm6.net] >>521 相当に無駄なスレ違いの質問はクローズしよう potato.2ch.net/test/read.cgi/software/1446733472/665
546 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 20:27:13.87 ID:kp8pJweP.net] libre office スレのもんだけど マルチ宣言してる奴に快く回答するとか まじクズっすねー
547 名前:デフォルトの名無しさん mailto:sage [2016/06/08(水) 21:05:04.00 ID:rpxHmTxH.net] >>522 そこはかとなくダサい気がするのだがうまく言えなくてもどかしい。
548 名前:デフォルトの名無しさん mailto:sage [2016/06/08(水) 21:09:54.69 ID:rpxHmTxH.net] >>525 面白い課題や面白い発見自身に罪は無い。 それを提示した人間がたとえ殺人者でも、その課題や発見自身は俺は歓迎する。 もし、Libre Office の開発者の一人が殺人を犯したからといってお前は Libre Office を使うのを止めるか? 止めるのであれば非難していただいて結構。
549 名前:デフォルトの名無しさん mailto:sage [2016/06/08(水) 22:04:51.84 ID:sUmK8XFr.net] >>527 その例えはおかしいね マルチ質問に返答するのはマナー違反って話なんだから つーか例える必要ないでしょ マルチ質問に答えることがマナー違反ではない理由を言えばいいだけだ
550 名前:デフォルトの名無しさん mailto:sage [2016/06/08(水) 22:23:27.09 ID:rpxHmTxH.net] >>528 > マルチ質問に返答するのはマナー違反って話なんだから 間違い。 1. マルチ投稿は迷惑かもしれないが、課題としては良問と思った。情状酌量の余地あり。 2. マルチ投稿に答えるのがマナー違反だという話は聞いたことがない。 3. 別板からわざわざ出張って「○○のもんだけど」とか言われてもシラネ。掲示板のルール無視。それこそ893まがいの行為。
551 名前:デフォルトの名無しさん mailto:sage [2016/06/08(水) 22:29:07.11 ID:rpxHmTxH.net] >>528 お前がインターネットのルールブックなわきゃねぇんだ。マナーだのなんだのごたくヌカすな。 >>522 全体的にエラー処理まわりが気になるけど、そこは置いとく。 ren じゃなくて move じゃない?ren にすごく違和感…。
552 名前:デフォルトの名無しさん mailto:sage [2016/06/08(水) 22:34:56.16 ID:sUmK8XFr.net] >>529 1. あなたがそう思うのは勝手だけどそれに対してクズと呼ばれるのは仕方ないこと 2. マナー違反を受け入れるのもマナー違反なのは当然 3. 俺に言われても知らん あとさ、例えが例えになってないことについてどう思ってんの?
553 名前:デフォルトの名無しさん mailto:sage [2016/06/08(水) 22:49:05.28 ID:JbG4hFO7.net] わざわざ出張ってこなくていいから大人しく返ってくれ このスレは過去を見てもわかるように、親切な人間達が回答してくれる珍しいスレなんだからさー
554 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 00:29:49.83 ID:mVcmv6vY.net] 向こうのスレ見てきて状況がわかった マルチって言ってるけど、向こうで最後に書いてから半日経ってからこっちに書いてるじゃん それになんだか追いだされたように見える まあ、さよなら、を言わずに出てったのは礼儀知らずかもしれないが そんなのは世の中にいっぱいいるんで今更事たてて言うほ
555 名前:どじゃないな [] [ここ壊れてます]
556 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 00:38:52.14 ID:M1aHpfX0.net] setlocal cd フォルダ endlocal でせっかくcdしても元に戻ってしまう
557 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 00:56:26.88 ID:mVcmv6vY.net] >>534 setlocalはそういうもんだから 逆に環境が引き継がれちゃったらsetlocal使う意味が無くなる そういうことやりたかったら、 setlocal set result=999 〜 endlocal&set result=%result%&cd フォルダ ってやると、環境変数を返すことも出来る
558 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 01:29:34.62 ID:M1aHpfX0.net] >>535 ありがとうございます そんな高度な技ができるとは知らなかったです
559 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 02:52:40.71 ID:3N2Gwx2N.net] >>526 suffixとかかな for /f "delims=" %%j in ('dir /a-d /b "%folder%" 2^>nul ^|^|goto :eof') do ren "%folder%" "%%~nj" &&goto :eof でren出来なかった場合のみerrorlog吐くとかの方がスマートかも まあバッチだし。。細かいとこ凝るならpsとかの方が
560 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 14:01:20.29 ID:mVcmv6vY.net] >>537 for /f "delims=" %%j in ('dir /a-d /b "%%folder%%" 2^>nul ^|^|goto :eof') do ren "%folder%" "%%~nj" &&goto :eof
561 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 14:12:43.69 ID:mVk0iXAO.net] > マルチ質問に返答するのはマナー違反って話なんだから 質問がマナー違反なんて話は知られてるが 返答がマナー違反なんて初めて聞いたけど、誰かソース知ってる人いる? この人の妄想かな
562 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 16:04:09.94 ID:Et4Ks3FV.net] こんなところで他人に何かを求めたりルールやマナーを押し付けるのは愚行 自分がレスしたきゃするし興味無いならスルー 自治厨ってのは自分の耐性の低さを尤もらしい大義名分で誤魔化しているだけに過ぎない 自治厨や創価みたいな制裁厨は荒らしと同じゴミ
563 名前:デフォルトの名無しさん mailto:sage [2016/06/10(金) 08:47:12.85 ID:7xQ2IbxD.net] >>539 返答しちゃうとマルチでいいんだ って勘違いする奴がいるってことだろ 普通それぐらいわかると思うが...
564 名前:デフォルトの名無しさん mailto:sage [2016/06/12(日) 22:53:45.89 ID:T3khqEs4.net] >>541 普通と言われても、それを実際に文章で目にした記憶ないんだよな ソース張れるか?妄想URLじゃなくてさ。 クロスポストマルチポストという言葉が生まれたニュースネットならまだしも。 個々のスレで関連性の無い2chだと正直どうでもいい。 ていうか今ニュースネットってどうなってるんだろ。まだあるんかな?
565 名前:デフォルトの名無しさん mailto:sage [2016/06/12(日) 23:23:12.75 ID:Dejri5g9.net] >>542 理解力ないってこと?
566 名前:デフォルトの名無しさん mailto:sage [2016/06/12(日) 23:29:33.63 ID:nN2o7Cuz.net] 誰と闘ってるの
567 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 02:21:55.70 ID:bKXy9+E3.net] マルチがマナー違反なら答えないほうが良いと思うが普通の考えだと思う 所詮はマナーだからもう終了しろ
568 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 16:19:50.79 ID:Y8ybIIT3.net] マナー違反として問題になるならあっちこっちで これがダメあれがダメとダメ出しのソースが出るんだよ。 マルチポストする方に関しては検索するとボロボロ出てくるだろ。 しかしこれがマルチポストに回答する事に関しては出てこんのだよな。 これの意味するところはつまりそこまで問題ではない、問題にする人はいないってこった。 回答する気が無いならしなければいいだけ。 回答した人に対してマナー違反だ回答するな等と文句付けるのは何様?筋違いだと思うね。 ぶっちゃけ俺も気にしないし。気にする人見たら今のように珍しいなあと思うな。
569 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 16:49:06.61 ID:pl2Ydjf9.net] おまえらしつけーよ 下らないスレチネタで議論する暇があったら面白バッチネタの一つでも書きやがれ で、PowerShellってどうよ?
570 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 17:50:03.03 ID:dWCIrllM.net] Power Shellにはなんか食指が動かない(XP
571 名前:使ってるんで) まあ簡単な奴以外はwsh(jscript)を使うな でも今Rubyが面白いかもって思ってる(Perlも入れたけどそっちは殆ど手付かず) .JScriptの中からScriptControlでRubyScriptの関数をCALLするとか変態的なことを試してるところ (.rbで作って、.js(.wsf)に埋め込むっていう非効率的な作業をやってる) [] [ここ壊れてます]
572 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:14:35.32 ID:oJOkyOjy.net] パワーシェルは出来る事も多いし 痒いとこ(チンポじゃないよ)にも手が届くけど なんとなくバッチ組めちゃうdosコマンドに比べたら難しく感じちゃうな ただ複数のアプリの同時起動が簡単に出来るからそういう用途ではよく使ってる
573 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 07:01:08.70 ID:TQ7oR46s.net] >>546 >>543
574 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 07:14:29.17 ID:TQ7oR46s.net] >>547 書き方とかにちょっと違和感があるけど慣れればかなり使えるって感じ 特にバッチは文字列の扱いが色々面倒だからファイル名を切った張ったするようなケースだと PowerShell の方が楽 WPF 使って GUI もいけるし
575 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 14:10:51.86 ID:ZjDSffK/.net] >>550 お前がな…
576 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 14:14:36.97 ID:ZjDSffK/.net] 個々人がマナー違反だと思うのはその人の勝手。 だが、「皆が」そうだというならお前以外の意見つまりソースを出せと。 そんなことも理解できんのね
577 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 14:45:53.78 ID:kt8UtU4J.net] >>546 本来、内容はどうであれ、マルチポストの相手をすべきではないんだよ。 マルチポストとか思うから、マナーだとか言い出すんだろうけど、 コピペの荒らしだと思えばいいんだよ。相手にするヤツがバカだろう?
578 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 15:22:57.71 ID:PGPlVx2O.net] いやー、そのレスでちょっとは盛り上がったじゃん 十分このスレでの意義はあったと思うよ 元のスレのofficeじゃスレ違いだとかいってハブって追い出したくせに こっちに来たら追いかけてきてイチャモンつけるって性格悪いな
579 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 18:35:44.26 ID:oyCWF+hy.net] >>555 そいつに関しては性格悪いなんてもんじゃないでしょ わざわざ他スレへ出張って文句言う粘着性はガイキチ 池沼は相手にしないが吉 >>548-549 >>551 いや、おまえがスレチだろってツッコミ待ちだったんだがおまえら良い奴だな ありがとう 既に.NET知ってる人は楽なんだろうけど一から覚えるの面倒臭くて。。 ましてやPSの為だけにとなるとなかなか重い腰が動かず >ファイル名を切った張ったするようなケースだと まさにこの用途なんだよね バッチから文字列の扱いを少し便利にしてくれるくらいで良かったんだけど覚える量的に一気にハードル上がって面倒臭い 覚えてしまえば楽になりそうなのは分かってるので、ぼちぼちやってくわ
580 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 18:55:09.01 ID:TQ7oR46s.net] >>554 まあ、そう言うこと ググって部屋のなかにうんこするなとかの書き込みが少ないからうんこするぜ って言うのと同じ 考える力のない奴に何を言ってもしょうがない
581 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 18:58:07.69 ID:TQ7oR46s.net] >>556 対話で使えなくてもいい 将来を心配したことがない なら vbs/jscript + wsh でもいいかも
582 名前:デフォルトの名無しさん mailto:sage [2016/06/19(日) 09:59:28.72 ID:rDn80OX3.net] >>557 うんこと考えてるのは実はお前だけってな お前さん理想と現実の区別付いてないだろ?
583 名前:デフォルトの名無しさん mailto:sage [2016/06/19(日) 11:27:46.12 ID:Pvc+naRU.net] >>559 >>543
584 名前:デフォルトの名無しさん mailto:sage [2016/06/19(日) 17:51:44.69 ID:Ujr
] [ここ壊れてます]
585 名前:NrWKl.net mailto: 2ちゃん初めてか? 先週のネタいつまで引っ張ってんだよ、切り替えていけよ ネタがないなら保守だけしてろ [] [ここ壊れてます]
586 名前:デフォルトの名無しさん mailto:sage [2016/06/19(日) 20:28:17.53 ID:N0SKT7vZ.net] > 2ちゃん初めてか? まだこんなこと言ってる奴がいるんだなw
587 名前:デフォルトの名無しさん mailto:sage [2016/06/20(月) 05:15:32.88 ID:bz6tTT9I.net] そもそも「2ちゃん」という言い方自体、自称古参爺しか使わん
588 名前:デフォルトの名無しさん mailto:sage [2016/06/20(月) 12:37:29.60 ID:1rHeBxTu.net] ちゃんちゃん
589 名前:デフォルトの名無しさん mailto:sage [2016/06/20(月) 12:56:47.33 ID:XUIKeVkP.net] 2chって言うよな
590 名前:デフォルトの名無しさん mailto:sage [2016/06/21(火) 23:17:02.70 ID:wIBHL76T.net] 言うの? 発音はツーチャンネル?
591 名前:デフォルトの名無しさん mailto:sage [2016/06/22(水) 03:22:26.83 ID:UKX8/FIx.net] 声には出さないけど「にちゃん」って読んでるな 書く時は2chって書くかな
592 名前:デフォルトの名無しさん mailto:sage [2016/06/22(水) 08:59:59.99 ID:ffHjJb8n.net] >>567 漏れも
593 名前:デフォルトの名無しさん mailto:sage [2016/06/24(金) 01:13:29.70 ID:buggiI8H.net] 俺は教育テレビって言ってる Eテレは馴染めん
594 名前:デフォルトの名無しさん mailto:sage [2016/06/24(金) 02:23:17.48 ID:iovZLto/.net] 教育テレビは3チャンネルだと思ってたけど、 地デジは3ちゃんTVK♪というCM思い出して 違うことに気づいた。
595 名前:デフォルトの名無しさん mailto:sage [2016/06/27(月) 10:51:32.41 ID:IRTRDse4.net] dir /Q はオーナー名が長いとファイル名とくっついてしまう欠陥コマンドだった
596 名前:デフォルトの名無しさん mailto:sage [2016/06/27(月) 13:44:52.16 ID:cmd3G8BZ.net] 会社のサーバに散在している.batファイルを片っ端から削除したい。いや、マジで。 el.jibun.atmarkit.co.jp/101sini/2016/06/bat.html
597 名前:デフォルトの名無しさん mailto:sage [2016/06/27(月) 13:56:09.99 ID:YSZG9z+3.net] del /f /s /q *.bat でよくね?
598 名前:デフォルトの名無しさん mailto:sage [2016/06/27(月) 14:13:24.61 ID:RStewB0e.net] 個人用ローカルPCだけど俺も何に使ったか分からないbatファイルがそれなりに残ってるわw 1度整理したから大量ってほどではないけど ニッチな用途だとファイル名だけでは用途を思い出せないのが難点
599 名前:デフォルトの名無しさん mailto:sage [2016/06/27(月) 14:35:10.14 ID:N5RLWdSz.net] batなんて使わなくなったら即削除してるから残ってるのはせいぜい20個程度だ
600 名前:デフォルトの名無しさん mailto:sage [2016/07/03(日) 21:43:03.57 ID:vq6Z+j1h.net] 「削除した」なら許せるが、削除したい(削除できなかった)ならただの糞文
601 名前:デフォルトの名無しさん mailto:sage [2016/07/03(日) 22:02:09.39 ID:T1/0jYLy.net] 読んでねーけど、したいけど出来ないって愚痴なんじゃねーの? 何に使うか分からんようなゴミを鯖に残してて勝手に消したら老害が何で消した?いつか使うかもしれんのに!って怒るとか いつかって何だよって言う。たかがbatでアホかって老害SEあるあるネタ
602 名前:デフォルトの名無しさん mailto:sage [2016/07/03(日) 22:37:12.83 ID:CJuDkW1k.net] んー、そもそもバッチを使う(作る)人に対する人格否定、という感じのブログ アナウンス出して全て消しゃいいじゃん、というのが率直な感想 でもやりたいのは、バッチを使う(作る)人の排除みたいだから、 社長になって独裁人事するのが一番の解決なんだろうね
603 名前:デフォルトの名無しさん mailto:sage [2016/07/06(水) 01:43:37.05 ID:j2aYQoha.net] 整理整頓が出来ていればいい話 バッチに限った事じゃない 不要の見極めも難しいから 消せずに残ってゴミ屋敷が現実
604 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 00:24:13.51 ID:WGF782sG.net] 会社のサーバだとうちもバッチに限らずなんだかよく分からんのがいっぱいあったな いらなさそうなのまとめて圧縮して1年後の日付書いてこの日まで使わなければ消すってしといた
605 名前:デフォルトの名無しさん mailto:sage [2016/07/07(木) 14:56:47.42 ID:TsrNo+6t.net] そうやってなんか対処してるなら話はわかるんだけど うぜぇうぜぇ
606 名前:チて言うだけで自分では対処しないで放置ってのはもう… [] [ここ壊れてます]
607 名前:デフォルトの名無しさん mailto:sage [2016/08/09(火) 17:07:41.16 ID:j5HqbEBX.net] Windows 10のLinuxサブシステムを狙った攻撃が今後登場する可能性 srad.jp/submission/67150/ 免疫力がつくまでしばらく待った方がいいのか知らん
608 名前:デフォルトの名無しさん mailto:sage [2016/08/14(日) 22:50:59.47 ID:r/0nUjHR.net] そもそもβなんだし、素人さんが手を出していい物じゃないんだけどな。
609 名前:デフォルトの名無しさん mailto:sage [2016/08/15(月) 00:25:59.77 ID:8W38K+Qq.net] まだcygwinのほうが安全ということなのかね
610 名前:デフォルトの名無しさん mailto:sage [2016/08/21(日) 07:59:09.76 ID:zhyP4GkP.net] 今んとこサーバ用途は全く想定してないからさして問題にはならないだろう 最終的にはMacのポジションを目指すのだろうからそれまでに直しておけば良い テクノロジーカンファレンスがSurfaceで埋まる日は来るか www.buildinsider.net/column/arton/003
611 名前:デフォルトの名無しさん mailto:sage [2016/09/06(火) 18:28:00.80 ID:G35PExva.net] Windows標準のコマンドプロンプトウィンドウをタブ化できる「ConEmu」 https://osdn.jp/magazine/14/05/23/200000 多数のDOS画面でお仕事する人向け
612 名前:デフォルトの名無しさん mailto:sage [2016/09/06(火) 18:51:20.42 ID:rT4OuLmz.net] ConEmuも所詮バックグランドでcmd動かしてて、 cmd単独よりは少し便利になるものの、 元々の日本語の表示の不具合(端が切れる)を引き継いでるからなぁ。 cmd完全互換のまともなシェルはないものかねぇ。
613 名前:デフォルトの名無しさん mailto:sage [2016/09/07(水) 18:29:47.35 ID:b6UGEvRF.net] タブでまともに機能するのはすごいたぶちさんだけ
614 名前:デフォルトの名無しさん mailto:sage [2016/09/07(水) 19:12:06.44 ID:eCxhE93W.net] .BATと.CMDでは何が違うのでしょうか? 使える命令などに違いがあるのでしょうか? 教えてください。
615 名前:デフォルトの名無しさん mailto:sage [2016/09/08(木) 00:57:15.94 ID:54d0WlHM.net] >>589 違いは無いよ DOSの時代からWin16の時代は拡張子はBATであり、 Win32の時代からMSはCMDに変えたがったみたいだが以前としてBATが主流となってるだけ
616 名前:デフォルトの名無しさん mailto:sage [2016/09/08(木) 01:30:50.71 ID:MGX2ZdyU.net] cmd は WindowsNT, OS/2 由来じゃなかったっけ? 例えば OS/2 だと bat にすると DOS互換ボックスでのバッチファイル動作で cmd にすると OS/2 ネイティブ動作
617 名前:デフォルトの名無しさん mailto:sage [2016/09/08(木) 02:06:01.27 ID:54d0WlHM.net] >>591 そうだったっけ? OS/2は殆ど使ったことない(さわりだけ)んで、拡張子batが動作したかどうか忘れちゃったんだけど (暗黙の了解でcmdでしか使ってなかった)
618 名前:デフォルトの名無しさん mailto:sage [2016/09/08(木) 02:15:48.19 ID:54d0WlHM.net] ちなみに俺が使ってたOS/2はver.1.2のごく初期の奴だったんで そもそもDOS互換とか存在してなかった気もする
619 名前:デフォルトの名無しさん mailto:sage [2016/09/08(木) 03:45:32.33 ID:Jzexm0YP.net] >>589 基本的には同じと思っていいけど厳密には少しだけ動作に違いがある stackoverflow.com/questions/148968/windows-batch-files-bat-vs-cmd
620 名前:デフォルトの名無しさん mailto:sage [2016/09/08(木) 04:05:36.46 ID:PAzqK7FZ.net] .bat 普通のバッチファイル用途。 .cmd ruby -x でrubyのコード埋め込む為に使用する。シンタックスハイライトをruby向けに設定。 という超ローカルな使い分けをしている
621 名前:デフォルトの名無しさん [2016/09/08(木) 21:40:41.34 ID:5x3R57hb.net] setlocal enabledelayedexpansion set STR="aaa" if STR=="aaa"( STR = "bbb" echo !STR! ) echo !STR! echo %STR% 遅延環境変数が分からない
622 名前:のですが、自分の環境だと全て"aaa"になります。 どこが間違っているんでしょうか? [] [ここ壊れてます]
623 名前:590 [2016/09/08(木) 21:53:39.72 ID:5x3R57hb.net] すいません。適当に書いてしまったのを訂正します ・"bar"が出て上手く行かないケース @echo off setlocal enabledelayedexpansion set foo2="bar" if %foo2% == "bar" ( set foo2 = "hoge" echo !foo2! ) pause ・"hoge"が出て上手く行くケース @echo off setlocal enabledelayedexpansion set foo="bar" if %foo% == "bar" ( set foo="hoge" echo !foo! ) pause この2つの違いが分かりません。
624 名前:デフォルトの名無しさん [2016/09/08(木) 21:58:24.35 ID:5x3R57hb.net] 自己解決しました foo2と=の間に空白があるのが原因でした。 バッチは文字列を代入する際には空白があってはいけないのですね。 set foo2= "hoge" としたら上手く行きました。 set /a foo2 = 10 では空白があっても行けたのですが、文字列の場合はダメなんですね。
625 名前:デフォルトの名無しさん mailto:sage [2016/09/09(金) 03:51:09.43 ID:LpeB3e0i.net] Linuxのシェルスクリプトでも、変数代入時、= の前後に、半角空白を入れられない a=b a = b これはダメ こういう点が、プログラミング言語としてはクソなんだよ。 PowerShell_ise を使いな
626 名前:デフォルトの名無しさん mailto:sage [2016/09/09(金) 06:34:14.46 ID:Sx9RRTJO.net] >この2つの違いが分かりません。 そんな違いわかりたくもない バッチファイルでif文をトラブルなく使う - Qiita qiita.com/ejiw/items/8a6ac11c117b6695b6ca バッチファイルでif文を使っていてハマったので、ハマらないための書き方と注意点をまとめてみた 解決方法 何も考えず必ず以下の形で書く。 if 条件 ( ←(1) call :サブルーチン名 引数 ←(2) ) else if 条件 ( ←(3) call :サブルーチン名 引数 ) else ( ←(4) call :サブルーチン名 引数 ) ←(5)
627 名前:デフォルトの名無しさん mailto:sage [2016/09/10(土) 14:10:07.42 ID:WyiyFmBQ.net] >>597 ダブルクォート記号を意図して含めたいならそういう記述もありだろうね だけど、純粋に文字列だけ比較したいだけなら変数名も含めてくくって、あとは判定部分で整形する方が自由度がある set
628 名前:デフォルトの名無しさん mailto:sage [2016/09/10(土) 14:14:02.54 ID:WyiyFmBQ.net] 途中で切れた?全角でリトライ SET "foo= b a r " IF "%foo%"==" b a r " ( IF "%foo%" == " b a r " ( のようにすれば前後の空白も含めて評価されるし、この場合どちらも同じ結果が得られる なので、>>598 の「バッチは文字列を代入する際には空白があってはいけないのですね。」は誤り 変数の文字列前後、if文のイコール記号の前後の空白の有無で意図しない比較結果になり得る記述は避けたほうがいいのは自明 環境変数の遅延展開に関しては、カッコで囲んだ複文の挙動を把握した上で適切に使う 環境変数はあとから再利用する性質上、意図しない文字や空文字になってしまうのが一番怖い 別解としては、call set "foo=hoge" があり、echo;%%foo%% などのようにパーセント記号を重ねても同じ結果が得られる こちらは setlocal enabledelayedexpansion は不要、この方法は公式とは言えないのでユーザーのお好み次第といったところ
629 名前:デフォルトの名無しさん mailto:sage [2016/09/11(日) 01:07:52.20 ID:4x/hjQLW.net] sqlite3のコマンドラインツールでDB読込み時間を測って遊んでたら sqlite3 hoge.db "SELECT * FROM TEST" > nul よりも sqlite3 hoge.db "SELECT * FROM TEST" > "c:\Temp\hoge.txt" のほうが 出力完了までの時間が短かったんですが、出力をnulに捨てるのって 普通にファイルに吐くより遅くなるもんなんでしょうか。
630 名前:デフォルトの名無しさん mailto:sage [2016/09/11(日) 01:24:31.36 ID:zfXOe+JX.net] >>603 常にそうなるの? たまたまじゃなくて? db読み込みの時間とかが関係してきそうな気がするし それに
631 名前:write時間は以外に掛からないんでファイルがでかくなければnulとの差はつかない (read時間は掛かるし実行時間にかなりばらつきが出る、また2回目以降はキャッシュからになる) [] [ここ壊れてます]
632 名前:デフォルトの名無しさん mailto:sage [2016/09/11(日) 02:05:36.54 ID:zfXOe+JX.net] >>603 ちょっと試してみた 確かにnulの方が時間が掛かる そこで、sqlite3の代わりに、type xxx.txt >yyy.txtで試してみた やっぱりファイルに書き出すよりnulの方がはっきり時間がかかる 何故なのかは分からん、スマン
633 名前:デフォルトの名無しさん mailto:sage [2016/09/13(火) 21:52:06.22 ID:NwZGDC4j.net] コマンドプロンプトから実行して 処理しますか?(Y/N)⇒処理⇒処理完了後F3キー押すとして終了 するツールを毎日ポチらないといけないのですが txtにYとF3を書いてリダイレクトで自動入力すれば楽にポチれる気がするんですが F3をtxtファイルにどう書けばいいのかわかりません、助けてください
634 名前:デフォルトの名無しさん mailto:sage [2016/09/14(水) 06:17:54.15 ID:xpMA1gBQ.net] F3は無理だと思うけど・・・
635 名前:デフォルトの名無しさん mailto:sage [2016/09/14(水) 08:44:57.03 ID:f2EPB9Ji.net] >>606 uwscでやれば?
636 名前:デフォルトの名無しさん mailto:sage [2016/09/14(水) 17:27:36.03 ID:Jy6DKzEX.net] >>608 ありがとうございます EXECでバッチファイル起動してYとF3入力してexit⇒ENTERで終了するようマクロ組みました タイマー起動ソフトでUWSを指定時間に実行するようにしたので何もしなくてよくなりました ありがとうございます
637 名前:デフォルトの名無しさん mailto:sage [2016/09/19(月) 03:08:13.70 ID:3gpWvjZ8.net] cmdですが schtasksでstartコマンドがうまく使えません /tr "start フルパス実行ファイル名" ※パスにはスペース無しです
638 名前:デフォルトの名無しさん mailto:sage [2016/09/19(月) 03:34:12.50 ID:rks5/FmO.net] >>610 cmd内部コマンドを起動するように登録するなら "cmd /c start xxx" だけど、単に /tr xxx じゃああかんの?(xxxはフルパスの実行ファイルなんでしょ?)
639 名前:デフォルトの名無しさん mailto:sage [2016/09/19(月) 04:07:56.77 ID:3gpWvjZ8.net] >>611 速いレスポンスありがとうございます おっしゃる通りどちらもいけました! もともとスペースありのパスで悩んで /tr "フルパススペース混じり" …1 /tr "\"フルパススペース混じり\"" …2 上記1.2から始まり詰まってましたが お陰様でstartの使い方がわかりました
640 名前:デフォルトの名無しさん mailto:sage [2016/09/19(月) 12:05:07.29 ID:mqRkSqP8.net] startは引数にスペースが混じるとおかしくなる その場合は第一引数に空文字列入れると良い start "" "c:\program files〜"
641 名前:デフォルトの名無しさん mailto:sage [2016/09/22(木) 20:07:59.66 ID:yIBGfr99.net] taskkill /im explorer.exe start explorer をバッチにしてエクスプローラ再起動に使ってたんだけど 最近explorer.exeが見つかりませんってなってkillできないんだけど何でだろう タスクマネージャからなら止められるしPID指定でも止められるんだけど
642 名前:デフォルトの名無しさん mailto:sage [2016/09/27(火) 11:38:03.47 ID:clgfgzqk.net] 10か
643 名前:デフォルトの名無しさん mailto:sage [2016/09/28(水) 19:18:04.93 ID:zhCs69qF.net] 下記バッチファイルで call を実行する @echo off set a1=%%a2%% set a2=%%a3%% set a3=%%a4%% set a4=%%a5%% call echo %a1% call echo %a1% | more pause 結果は %a3% %a4% なぜか表示が違う パイプを使うと変数の展開が一回増えるようだ
644 名前:デフォルトの名無しさん mailto:sage [2016/09/29(木) 00:33:45.25 ID:RC/Dq8j5.net] パイプは、子タスクでインスタンスは別だと思うよ set a=1 echo %a%|(more|set a=2) echo %a%
645 名前:デフォルトの名無しさん mailto:sage [2016/09/29(木) 00:34:51.35 ID:RC/Dq8j5.net] echo %a%|(more&set a=2)
646 名前:デフォルトの名無しさん mailto:sage [2016/09/29(木) 02:15:55.37 ID:HmIZKCJu.net] echo %a1% echo %a1% | more %a2% %a3%
647 名前:デフォルトの名無しさん mailto:sage [2016/09/29(木) 02:29:13.86 ID:HmIZKCJu.net] call call echo %a1% call call echo %a1% | more %a4% %a5%
648 名前:デフォルトの名無しさん mailto:sage [2016/10/07(金) 02:33:21.18 ID:E4yfr
] [ここ壊れてます]
649 名前:V8y.net mailto: /aaa/bbb/ccc 上記から/cccもしくはcccを抜き出す方法は有るでしょうか? "最後のスラッシュから末尾までを出力" の方法がわかりません… サクラエディタでもかまいません… [] [ここ壊れてます]
650 名前:デフォルトの名無しさん mailto:sage [2016/10/07(金) 02:39:36.76 ID:E4yfrV8y.net] >>621 追記ですが "/"の数は変動します
651 名前:デフォルトの名無しさん mailto:sage [2016/10/07(金) 03:13:06.25 ID:PWoZvLSt.net] bat素人が適当に書いたらこうなった set token_number=1 :start for /f "tokens=%token_number%,* delims=/" %%a in ("/aaa/bbb/ccc") do if "%%b"=="" ( set hoge=/%%a ) else ( set /a token_number=token_number+1 goto start ) echo %hoge% pause
652 名前:デフォルトの名無しさん mailto:sage [2016/10/07(金) 03:33:35.13 ID:RDmrItg+.net] ちょっと邪道だけど powershell -Command
653 名前:デフォルトの名無しさん mailto:sage [2016/10/07(金) 03:34:29.48 ID:RDmrItg+.net] 切れたので再送 powershell -Command Split-Path -Path /aaa/bbb/ccc -Leaf
654 名前:デフォルトの名無しさん mailto:sage [2016/10/07(金) 03:44:17.59 ID:273HGXTN.net] >>621 tmp に & や % 等々が入っていない、ダメな文字が無いという楽観的な状態なら set tmp=/aaa/bbb/ccc/ddd eee call %tmp:/=&set tailpart=% echo %tailpart%
655 名前:デフォルトの名無しさん [2016/10/07(金) 10:20:31.14 ID:uWLqn+Rg.net] echo [ERROR][%~n0][%date% %time%] エラー出た(ERRORLEVEL=%ERRORLEVEL%) これ標準エラー出力で出力するのってどうやるんですか?
656 名前:デフォルトの名無しさん mailto:sage [2016/10/07(金) 10:47:05.46 ID:yoIkF7ck.net] >>627 標準出力先を標準エラー出力先と同じになるようにリダイレクトしてやるとかかな (意図がわからんからこれで解決するのかどうかは知らんけど) echo xxx 1>&2 例 2>errout.txt 1>&2 echo エラー(err no=111)
657 名前:デフォルトの名無しさん mailto:sage [2016/10/07(金) 11:05:50.41 ID:yoIkF7ck.net] 出力先が同じだから、2>errout.txt は >errout.txt に書き替えても同じ結果になることからも分かるように やってることはあくまで出力先を同じにしてるだけなので、標準エラー出力のみを取り扱ってるわけではないことに留意 (なお 1> の 1 は省略可能なので、 1>&2 は >&2 と書くことも可能)
658 名前:デフォルトの名無しさん mailto:sage [2016/10/07(金) 11:23:31.75 ID:uWLqn+Rg.net] echo aaa echo bbb 1>&2 echo ccc で試したところ望みどおりの動作になりました ありがとうございます
659 名前:デフォルトの名無しさん mailto:sage [2016/10/07(金) 11:44:29.04 ID:5wS7M9ck.net] >>621 案1: FOR /F "delims=" %%I IN ("/aaa/bbb/ccc") DO ECHO %%~nxI 案2: CALL :SUB "/aaa/bbb/ccc" GOTO :EOF :SUB ECHO %~nx1
660 名前:デフォルトの名無しさん mailto:sage [2016/10/07(金) 12:09:19.90 ID:PWoZvLSt.net] 色んなやり方があるんだなあ勉強になる
661 名前:デフォルトの名無しさん mailto:sage [2016/10/08(土) 07:09:00.83 ID:sXvXMvPu.net] @echo off set "a=/aaa/bbb/ccc\ddd" set "b=" call :x a b echo "%a%" echo "%b%" pause goto :eof :x setlocal enabledelayedexpansion set "a=/!%1!" set b=-1 :y set "c=!a:~%b%,1!" if "!c!" == "/" goto z set /a b-=1 goto y :z set "c=!a:~%b%!" endlocal & set "%2=%c%" goto :eof
662 名前:デフォルトの名無しさん mailto:sage [2016/10/09(日) 20:38:11.04 ID:mq9cB08l.net] 7z.exe x AAA.zip -oBBB >hoge.txt 7z.exeで展開してるんだけど、終了するまえに、 次の処理に行ってしまい、その後がエラーになる。 7z.exeの終了を待つには、どうしたらいいのですか? >hoge.txtは必要。 start /wait 7z.exe x AAA.zip -oBBB >hoge.txt では、hoge.txtが空だし、コマンドプロンプトの窓がもう一個開くし。 👀 Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
663 名前:デフォルトの名無しさん mailto:sage [2016/10/09(日) 21:25:06.80 ID:DFuD
] [ここ壊れてます]
664 名前:/t4t.net mailto: >>634 start /B /wait "" 7z.exe x AAA.zip -oBBB -y >hoge.txt てやれば窓は開かないけど、多分実行結果はstart無しの場合と同じだろう 解凍するまで待って制御が返ってるように思えるけど その後エラーが出るとするなら、多分OSのファイル遅延書き込みの所為だろうから ウェイトを入れるなり何なり待たさないといけないと思うよ [] [ここ壊れてます]
665 名前:デフォルトの名無しさん mailto:sage [2016/10/10(月) 09:40:47.22 ID:UJJq0Lfa.net] >>635 ありがとうございます。 10回くらいテストして、それ「start /B /wait "" 」でいけました。
666 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 15:15:40.33 ID:CXMCNpce.net] for %%a in (“*.mkv”) do ffmpeg.exe -i %%a -b:v 3000k -acodec ac3 -ar 48000 -vcodec libx264 D:\encoded\%%~na.mp4 mkvとflvを入力に使いたいです 二重ループ以外に方法ありませんかね?
667 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 15:33:04.97 ID:V1BPQ8PQ.net] `dir /b *.mkv;*.flv`をキャプチャすればいいんじゃないの 自分なら2行にコピペするがw
668 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 15:35:36.60 ID:CyghQ6/+.net] "*.*v" 他にvが付くもの無ければ
669 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 15:38:43.19 ID:CXMCNpce.net] >>638 すみません 2行にコピペするとはどういうことですか? >>639 私も考えたのですがwmvがありました
670 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 16:07:30.74 ID:aOSR32QX.net] for %%a in (*.mkv *.flv) do ...
671 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 16:12:00.02 ID:YqqdfgOM.net] >>640 *.mkvで処理と*.flvで処理と2行for文を書くという意味じゃないかな? for /f "tokens=*" %%a in ('dir /b *.mkv *.flv') do 〜 とか dir /b *mkv>files.tmp dir /b *.flv>>files.tmp for /f "tokens~*" %%a in (files.tmp) do 〜 del files.tmp とか色々とか色々と出来るよ
672 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 16:51:21.25 ID:k+jI1aQa.net] 質問です。サブディレクトリのファイルで、0バイトのファイルだけを削除したいです。 以下のページにあるサンプルをベースに、dirに /s をつけてサブディレクトリも 対象とするようにしました。 バッチで自動的に作成したファイルを容量チェックして削除する方法ってありますか? (DOSプロンプト活用相談室LOG) fpcu.on.coocan.jp/dosvcmd/bbs/log/delerase/4-0062.html 実行してみると、0バイト以外のファイルも条件が成立してしまい、 動作してくれません。OSがwindows10のせいでしょうか。 FOR /F %%F IN ('dir /s /B') DO ( CALL :CheckFile %%F ) EXIT /B :CheckFile SET FileAttrib=%~a1 IF NOT %FileAttrib:~0,1%==d ( IF not "%~z1" == "0" ( ECHO "%1" はファイルサイズが %~z1 で、0 なので削除します。 REM DEL %1 ) ) EXIT /B ==をEQUに変えてみたり、ダブルクォートをつけたりしましたが変化なしでした。 どのように直せば、0バイトのみが引っかかるようにできるか、宜しくお願いします。 なお、上記コードは、安全のためdelはREMをつけたままです。
673 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 17:01:12.97 ID:k+jI1aQa.net] すいません補足です。 >IF not "%~z1" == "0" ( これは、notがないのが正常な状態です。 なにをやっても条件が成立してしまうので、 ためしにnotをつけて、論理が反転するか試したところ、 これも全部条件が成立してしまいました。 その実験をしたときの残骸のnotが残ってしまいました。
674 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 17:10:16.64 ID:CyghQ6/+.net] if %~z1==0 のように書く。==の両側にスペース入れたらダメ
675 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 17:14:15.79 ID:CyghQ6/+.net] それでもダメだったら CALL :CheckFile %%~fF を試してみて
676 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 17:19:24.35 ID:CyghQ6/+.net] IF NOT %FileAttrib:~0,1%==d これ必要? dir /a-d /b /s としておけば要らない
677 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 17:32:19.00 ID:k+jI1aQa.net] ありがとうございます。指摘の件を全て直しましたが、ダメでした。 FOR /F %%F IN ('dir /a-d /s /B') DO ( CALL :CheckFile %%~fF ) EXIT /B :CheckFile SET FileAttrib=%~a1 IF %~z1==0 ( ECHO "%1" はファイルサイズが %~z1 で、0 なので削除します。 REM DEL %1 ) EXIT /B 実行結果 IF 1695606 == 0 ( "F:\TEST\file.txt" はファイルサイズが 1695606 で、0 なので 削除します。
678 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 17:37:43.49 ID:h3rHiOkq.net] set hoge="hage te naiyo" とやると、%hoge%でダブルクォーテーションも読み込んでしまいます 対処法教えて下さい
679 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 17:44:13.80 ID:X88zouZU.net] パスにスペースが入ってんじゃ? for /f "delims=" %%i in ('dir /a-d /b /s *.*') do if %%~zi EQU 0 del "%%~fi"
680 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 17:46:49.24 ID:tJlO+qdh.net] set "hoge=hage te naiyo" か set hoge=hage te naiyo そもそも "" でくくらない
681 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 17:54:18.24 ID:YqqdfgOM.net] >>648 本当にそんな表示なのか? 上の IF 1695606 == 0 ( を書いてるということはbatの展開された実行ステートメントを表示してるだけじゃないのか? 正確には IF 1695606 == 0 ( ECHO "F:\TEST\file.txt" はファイルサイズが 1695606 で、0 なので 削除します。 REM DEL F:\TEST\file.txt ) と4行表示されただけなんじゃないの? それと、半角空白の存在するファイル名があったらエラーになるよ "tokens=*"とか"delims="をつけて、引数は""で囲んで渡すようにした方がいい (さらに^とかの文字もファイル名に含まれてる可能性があるなら引数渡しは諦めて環境変数で渡すようにする)
682 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 17:56:29.96 ID:CyghQ6/+.net] for /f "usebackq delims=" %%F in (`dir /a-d /b /s`) do if %%~zF==0 echo %%~F これで0バイトだけechoされるはずだと思うけど >>649 set "hoge=hage te naiyo"
683 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 18:07:46.52 ID:YqqdfgOM.net] >>649 もし何らかの理由で""を付いたままで代入しなくてはいけないのなら、その後で取ることは出来る set hoge=%hoge:"=% とか set hoge=%hoge:~1,-1% とか まあ後者は"が付いているかどうかチェックした方がいいけど if ^%hoge:~0,1% equ ^" set hoge=%hoge:~1,-1%
684 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 18:12:36.27 ID:CyghQ6/+.net] 後から外す場合はcallやforで%~1や%%~Iでも可
685 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 18:13:42.95 ID:k+jI1aQa.net] >>652 すみません、こちらの勘違いでした。教えていただいたコードで動きました。 echo off していないため、条件が成立しないコードが表示されてるのを見て、 あたかも実行されているかのように勘違いしてるだけでした。 この手のトラブルが嫌いなので対象のファイル名に空白は入っていませんでした。 完成形ですが、空白が含まれているファイル名も処理する場合は、以下で大丈夫でしょうか。 echo off FOR /F %%F IN ('dir /a-d /s /B') DO ( CALL :CheckFile %%~fF ) echo 処理終わり。 pause EXIT /B :CheckFile SET FileAttrib=%~a1 IF "%~z1"=="0" ( ECHO "%1" はファイルサイズが %~z1 で、0 なので削除します。 DEL "%1" ) else ( ECHO "%1" はファイルサイズが %~z1 で、削除しません。 ) EXIT /B
686 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 18:31:53.33 ID:k+jI1aQa.net] うーん・・・このバッチだと、0バイトかどうか調べる対象ディレクトリが1000個、総ファイルが10万個とか有ると、 最初のforから全然進んでくれないようです。 core-i5で10分待っても開始されず。ディスクの能力じゃ無く、BATのCPU消費率が上がります。 >>653 さんの書き方で、大量ファイルの処理時の挙動は変化するか、これから試してみます。 大量処理に適した書き方などがあったらご教示ください。
687 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 18:44:53.26 ID:YqqdfgOM.net] >>657 そんな大量のファイルは無いので定かではないけど、多分バッファが溢れてるんじゃないかと思う 一旦ファイルに書き出したらどうだろ? dir /a-d /s /b>list.tmp for /f %%F in (list.tmp) do
688 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 18:59:59.00 ID:CyghQ6/+.net] 10万とか処理させたこと無いけどバッチよりもPowerShell使った方が良いんじゃね?
689 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 19:01:10.45 ID:RjRHLuRO.net] >>642 ありがとうございます 出来ました それともう一つ エンコードの進捗状況を表示する事ってできませんかね? 12/87(ファイル)みたいな感じで
690 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 20:02:06.24 ID:nxsWiPWy.net] forfiles使う方法も forfiles /s /c "cmd /c if @isdir==FALSE if @fsize==0 del @file"
691 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 20:08:20.15 ID:IaZq30Xa.net] Windows 10 だと rd hoge /S /Q でなかなかhogeディレクトリを削除できないけど、 なにかいい方法ありますか?
692 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 20:19:09.72 ID:WWSUEmVo.net] >>661 for が速いとは言わないが forfiles は輪をかけて遅いから辛いんじゃないかな
693 名前:デフォルトの名無しさん mailto:sage [2016/10/12(水) 20:31:06.50 ID:YqqdfgOM.net] >>660 大昔DOSにあったansi.sysのようにエスケープシーケンスが使えたら可能なんだけどね 噂じゃwinsows10でエスケープシーケンスが使えるようになったとかの話もあるけど真偽のほどはどうなんだろ
694 名前:デフォルトの名無しさん mailto:sage [2016/10/13(木) 00:46:44.28 ID:cRZfvb+W.net] >>656 以下に修正したほうがいいけど、ざっと見ただけだから他にもあるかもw FOR /F %%F IN ('dir /a-d /s /B') DO ( CALL :CheckFile %%~fF ) ↓ FOR /F
695 名前:デフォルトの名無しさん mailto:sage [2016/10/13(木) 00:49:54.35 ID:cRZfvb+W.net] FOR /F %%F IN ('dir /a-d /s /B') DO ( CALL :CheckFile %%~fF ) ↓ FOR /F "delims=" %%F IN ('dir /a-d /s /B') DO ( CALL :CheckFile "%%~fF" ) IF "%~z1"=="0" ( ↓ IF %~z1==0 ( ECHO "%1" はファイルサイズが ↓ ECHO "%~1" はファイルサイズが DEL "%1" ↓ DEL "%~1" サブルーチンへ引数を渡す際はダブルクォート記号が過不足なく評価されているか実行前に要テストね それと、ifの数値比較についてはヘルプ読むべし。数字以外を含むと文字列比較になるから
696 名前:デフォルトの名無しさん mailto:sage [2016/10/13(木) 01:11:54.49 ID:nRww2f6N.net] >>652 が指摘してるけど、 もしファイル名が "a^b.txt" だったり、 "ab%cd%ed.txt" だったりしたらエラーになると思う
697 名前:デフォルトの名無しさん mailto:sage [2016/10/13(木) 02:20:45.86 ID:9ieIMwqB.net] >>657 FOR /R %%F IN (*.*) DO ( CALL :CheckFile %%~fF ) にしたらマシになる?
698 名前:デフォルトの名無しさん mailto:sage [2016/10/13(木) 02:28:09.62 ID:9ieIMwqB.net] あ、折角指摘が出てたのに修正漏れ %%~fF → "%%~fF"
699 名前:デフォルトの名無しさん mailto:sage [2016/10/13(木) 02:30:01.50 ID:nRww2f6N.net] >>668 本来の目的だった半角空白のことを忘れたんか
700 名前:デフォルトの名無しさん mailto:sage [2016/10/13(木) 08:14:45.67 ID:CLiojDhV.net] >>667 そんなのまで対応しないといけないなら vbs とか PowerShell にした方がいいと思う
701 名前:デフォルトの名無しさん mailto:sage [2016/10/13(木) 19:02:37.99 ID:tpWzBOlc.net] call するなら環境変数で渡せば問題ない つうか直接に del すりゃいいだけだろ for /r %%i in (*) do if %%~zi == 0 del "%%~fi" ファイル名に ^ とか % とか ユニコード特有文字とか有っても問題ない あと、==の両側にスペースがダメとか意味不明
702 名前:デフォルトの名無しさん mailto:sage [2016/10/13(木) 23:49:13.04 ID:BSlfrai+.net] for %%a in (*hoge.txt) do 〜 この場合、ファイル名がaiueohoge.txtだった場合、aiueoだけを抜き出す方法有りませんか? %%~naみたいな演算子?でお願いします
703 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 01:11:11.25 ID:Ep7xlThW.net] >%%~naみたいな演算子?でお願いします 無理 一旦環境変数に入れて置換でhoge.txtを消し残りを取り出す事%fname:hoge.txt=%や %fname:~0,-8%なら可能 set fname=%%~na echo %fname:~0,-4%
704 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 03:21:39.34 ID:onADalnL.net] @echo off set
705 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 03:24:46.91 ID:onADalnL.net] set "fname=*hoge.txt" & set b=-1 setlocal enabledelayedexpansion :x if not "!fname:~%b%,1!" == "*" set /a b-=1 & goto x endlocal & set /a b=%b%+1 for %%a in ("%fname%") do set "c=%%~nxa" & call echo "%%c:~0,%b%%%"
706 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 20:38:01.10 ID:YifyNonQ.net] ありがとうございます set
707 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 20:40:05.91 ID:YifyNonQ.net] "ありがとうございます set "fname=*hoge.txt" & set b=-1 setlocal enabledelayedexpansion :x if not "!fname:~%b%,1!" == "*" set /a b-=1 & goto x endlocal & set /a b=%b%+1 for %%a in ("%fname%") do set "c=%%~nxa" & HOGE "%%c:~0,%b%%%" ここでHOGEに処理を入れ、"%%c:~0,%b%%%"をファイル名として使えばいいんですかね? それとfor文で入力に使った*hoge.txtのだけ*hogeだけ抜き出したい場合は
708 名前:どうすればいいんでしょうか [] [ここ壊れてます]
709 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 22:54:24.45 ID:+Ryxbx0f.net] >>678 call echo %%c:~0,%b%%% は環境変数の遅延展開を使わず展開させる方法だから、別の処理で置き換えるなら、 HOGE !c:~0,%b%! のように!記号でくくる方向で(call foo はどのコマンドでも使えるわけではないため) ファイル名の抜き出しは、パラメーターで調整できると思う バッチパラメーターについては「call /?」あたりから
710 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 23:02:08.75 ID:+Ryxbx0f.net] ID違うからわかると思うけど、>>676 とは別人なのであしからず(言い忘れすまそ)
711 名前:デフォルトの名無しさん mailto:sage [2016/10/14(金) 23:39:49.51 ID:Ep7xlThW.net] >aiueohoge.txtだった場合、aiueoだけを抜き出す方法有りませんか? に>>676 が示してくれただけで >HOGEに処理を入れ、"%%c:~0,%b%%%"をファイル名として使えばいいんですかね? そんな質問されてもファイル名として使うのかどう処理するのかとか分かる訳ねーだろ aiueoをリネームに使うのか?何がしたいのか分からん事には答えようがない
712 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 00:10:29.36 ID:GrBj6Sia.net] >>678 質問の意図がよく分からん set "fname=*hoge.txt" & set b=-1 setlocal enabledelayedexpansion :x if not "!fname:~%b%,1!" == "*" set /a b-=1 & goto x endlocal & set /a b=%b%+1 for %%a in ("%fname%") do set "c=%%~nxa" & call :y "%%c:~0,%b%%%" "%%c%%" goto :eof :y echo hoge "%~1" "%~n2"
713 名前:デフォルトの名無しさん mailto:sage [2016/10/15(土) 23:20:33.46 ID:DDtj3KwG.net] バッチ初心者です。 Windowsのタスクで指定時間した時間になったら、バッチファイルで指定した常駐ソフトを再起動(終了→起動)させたいのですが、 taskkill /f /im app.exe start /MIN "" "C:\app.exe" のようにして最小化(/MIN)で起動するようにすると、そのソフトは何故かウインドウのスクロールバーが何故か消えてしまいます。 なので一旦アクティブで起動させてスクロールバーを表示させてから最小化したいのですが、方法がわかりません。 taskkill /f /im app.exe start "" "C:\app.exe" で起動させたあと、アクティブなapp.exeをコマンドで最小化する方法があったら教えてください。 よろしくお願いします。
714 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 06:33:42.07 ID:e+WiyjQC.net] バッチにそんな機能はない ahkなら IfWinExist ahk_exe app.exe WinMinimize
715 名前:672 mailto:sage [2016/10/16(日) 10:52:23.32 ID:lNEScQ2P.net] 抽象的な事を言って困らせてすみません 何をやりたいのかと言うと、youtubeから落とした動画がhoge -【DASH】.mp4とhoge - 【DASH】.m4aとなっているので、 これを ffmpeg -i hoge - 【DASH】.mp4 -vcodec copy -i hoge - 【DASH】.m4a -acodec copy hoge.mp4 とエンコードして、 hoge【DASH】.mp4をforで検索して、その拡張子を取ったものを入力として使い、出力ファイル名として、hoge.mp4としたかったのです
716 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 17:03:52.47 ID:z1QBGf3F.net] >>660 set /p で改行を入れない文字列を出力して コントロールコードのBSで消す @echo off set bs=[BS] set delline=%bs%%bs%%bs%%bs%%bs%%bs%%bs%%bs%%bs%%bs%%bs%%bs%%bs% for /L %%i in (1,1,10) do ( set /p x=%delline%%%i/10 <nul timeout /t 1 >nul )
717 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 19:44:42.76 ID:l/p5e+57.net] >>685 set "fname=* - 【DASH】.mp4" & set b=-1 setlocal enabledelayedexpansion :x if not "!fname:~%b%,1!" == "*" set /a b-=1 & goto x endlocal & set /a b=%b%+1 for %%a in ("%fname%") do set "c=%%~nxa" & call :y "%%c:~0,%b%%%" "%%c%%" goto :eof :y ffmpeg -i "%~n2.mp4" -vcodec copy -i "%~n2.m4a" -acodec copy "%~1.mp4"
718 名前:デフォルトの名無しさん mailto:sage [2016/10/16(日) 21:03:50.48 ID:cWFHk7WJ.net] >>686 コントロールコードを挿入できない人用 set bs=[BS] ↓ for /f "delims=0" %%I in ('cmd /u /c echo 〈') do set bs=%%I
719 名前:その1 mailto:sage [2016/10/18(火) 10:49:49.38 ID:492hutXa.net] サーバサービスの起動条件がスタートアップ状態が自動でありながら 開始になっていないものをバッチで出力したい とりあえずSCコマンドを使ってこんなことすると sc \\HOGE query state= inactive |find "SERVICE_NAME" >hoge.txt 下記のような起動していないサービスの名前がテキストに吐かれる SERVICE_NAME: AeLookupSvc SERVICE_NAME: ALG SERVICE_NAME: AppIDSvc SERVICE_NAME: AppleChargerSrv SERVICE_NAME: AppMgmt SERVICE_NAME: aspnet_state SERVICE_NAME: AudioEndpointBuilder SERVICE_NAME: AudioSrv SERVICE_NAME: AxInstSV SERVICE_NAME: BDESVC SERVICE_NAME: Browser (以下 略)
720 名前:その2 mailto:sage [2016/10/18(火) 10:50:03.97 ID:492hutXa.net] そしてサービスのスタートアップ状態を調べるには sc qc [サービス名]で表示される sc \\HOGE qc AeLookupSvc |findstr "SERVICE_NAME START_TYPE" この2つを組合せればフルオートで起動条件がスタートアップ状態が自動でありながら 開始になっていないものを出せるはずなんだが 「SERVICE_NAME:」←これが邪魔なんだ 教えてエロい人 これが消せたら下記でフルオートできるはず @for /F %%=a in ('hoge.txt') do ( sc \\HOGE qc %%a )
721 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 12:27:03.23 ID:6Un6ctsT.net] for /f "tokens=1*" %%A in (hoge.txt) do echo %%B
722 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 12:44:29.69 ID:oqQNu1fO.net] for /f
723 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 12:46:48.12 ID:oqQNu1fO.net] for /f "usebackq tokens=2*" %%a in ("hoge.txt") do sc \\HOGE qc %%a
724 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 12:59:57.92 ID:oqQNu1fO.net] "tokens=1*" %%b が正しい
725 名前:デフォルトの名無しさん [2016/10/18(火) 13:04:01.66 ID:492hutXa.net] 面目ない、誤解させてしまったかも オイラが知りたいのは sc \\HOGE query state= inactive |find "SERVICE_NAME" >hoge.txt で出力される下記を SERVICE_NAME: AeLookupSvc SERVICE_NAME: ALG SERVICE_NAME: AppIDSvc SERVICE_NAME: AppleChargerSrv SERVICE_NAME: AppMgmt (以下 略) 先頭の文字列「SERVICE_NAME:」を外して出力したいというのが主旨です AeLookupSvc ALG AppIDSvc AppleChargerSrv AppMgmt (以下 略)
726 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 13:39:39.76 ID:oqQNu1fO.net] for /f "tokens=1*" %%a in ('sc \\HOGE query state^=inactive ^| find "SERVICE_NAME"') do echo %%b >>hoge.txt
727 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 13:41:17.91 ID:l1RYXy70.net] サービス扱うならPowerShellの方が楽でいいよ。 バッチから呼ぶならこんな感じ。 powershell -command
728 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 13:44:58.91 ID:l1RYXy70.net] ダブルクオーテーション使うとそこで切れるんだけど書き込めてる人との違いってなんなんだろう
729 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 13:49:59.99 ID:l1RYXy70.net] powershell -command ”Get-Service | ?{$_.StartType -eq 'Automatic' -and $_.Status -eq 'Stopped'}”
730 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 13:51:45.76 ID:flBcMs6G.net] てすと powershell -command "Get-Service | ?{$_.StartType -eq 'Automatic' -and $_.Status -eq 'Stopped'}"
731 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 13:52:36.16 ID:UJ1l7XRj.net] setlocal enabledelayedexpansion for /f "tokens=1,2 delims=:" %%i in ('sc \\HOGE query state^= inactive') do ( if "%%i"=="SERVICE_NAME" set name=%%j echo;!name:~1!>hoge.txt )
732 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 17:21:44.41 ID:IWtXyw3/.net] ありがとうございます 早速試してみたのですが・・・ まずパワーシェルの方は「$_.StartType -eq 'Automatic'」これが効かないようです (「$_.Status -eq 'Stopped'」こちらは効いてます) バッチの方は1件目の「WwanSvc」だけで終ってしまうようです
733 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 17:24:37.38 ID:XKgIhtEU.net] バッチファイルってWindowsタブレットで使える?
734 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 17:25:51.36 ID:IWtXyw3/.net] 大事な事を忘れてました CL:Windows7プロ SP1(32bit)6.1.7601 SV:WindowsSV 2008R2 SP1(64bit)
735 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 17:59:25.19 ID:oqQNu1fO.net] >「WwanSvc」だけで終ってしまう >hoge.txtと上書きしてるんじゃ?>>hoge.txtと追記になってる?
736 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 20:40:09.09 ID:UJ1l7XRj.net] アウチ! ミスってた >>705 の通り。695追記になってない ×echo;!name:~1!>hoge.txt 〇echo;!name:~1!>>hoge.txt
737 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 22:14:57.94 ID:N6eA0nOq.net] なるほど、追記になってなかったんですね ただ、今度は同じサービス名が8回ずつ記録されるようになってしまいました PCがおかしいのかなとwindows7とwindows8.1、そして懐かしのWindows2000で試しても 同じように8回ずつ記録されてしまうようです AdobeFlashPlayerUpdateSvc AdobeFlashPlayerUpdateSvc AdobeFlashPlayerUpdateSvc AdobeFlashPlayerUpdateSvc AdobeFlashPlayerUpdateSvc AdobeFlashPlayerUpdateSvc AdobeFlashPlayerUpdateSvc AdobeFlashPlayerUpdateSvc ALG ALG ALG ALG ALG ALG ALG ALG AppIDSvc AppIDSvc AppIDSvc AppIDSvc AppIDSvc AppIDSvc AppIDSvc AppIDSvc
738 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 22:41:11.76 ID:UJ1l7XRj.net] type nul>hoge.txt setlocal enabledelayedexpansion for /f "tokens=1,2 delims=:" %%i in ('sc query state^= inactive') do ( if "%%i"=="SERVICE_NAME" ( set name=%%j echo;!name:~1!>>hoge.txt ) )
739 名前:デフォルトの名無しさん mailto:sage [2016/10/18(火) 23:32:59.96 ID:N6eA0nOq.net] >>708 成功しました カッコの有無でなんでこんなに違うんだろうと不思議です
740 名前:デフォルトの名無しさん mailto:sage [2016/10/19(水)
] [ここ壊れてます]
741 名前:01:04:29.51 ID:OIm1eZAK.net mailto: 何がマズイっていうと ”SERVIE_NAME”がある行でサービス名を取得するまではよかったが それが無い行でも前に取得したサービス名を出力するようになってたんだわな 1つのサービスに付いて8行情報があったから8行ずつ出力されてた…と [] [ここ壊れてます]
742 名前:デフォルトの名無しさん mailto:sage [2016/10/19(水) 01:12:10.60 ID:cKBmHXZY.net] そんな回りくどい事しなくても>>696 で出来んじゃん
743 名前:デフォルトの名無しさん mailto:SAGE [2016/10/19(水) 07:11:53.90 ID:Jbfd2Dlj.net] >>696 は一瞬コマンド窓が開くだけで動かなかったのです
744 名前:デフォルトの名無しさん mailto:sage [2016/10/19(水) 07:56:59.52 ID:OiCCOICb.net] >>698 2chのバグだろ 書き込み確認画面が出る際、" を使うと、そこで文字列の終了とみなされる。 " を、\" とエスケープすれば、どうかな?
745 名前:デフォルトの名無しさん mailto:sage [2016/10/19(水) 12:52:41.93 ID:nMHfZfYD.net] " と文字参照を使って書き込めばいいのでは? 結果として " となるはず。
746 名前:694 mailto:sage [2016/10/19(水) 13:03:34.54 ID:fhJbq8nW.net] JaneXenoでは特別な事しなくても書き込めた
747 名前:デフォルトの名無しさん mailto:sage [2016/10/20(木) 18:11:41.71 ID:fyY9mWCP.net] いっつもStyleで書いてるけど"で切れたことなど一度もないけどなあ
748 名前:デフォルトの名無しさん mailto:sage [2016/10/20(木) 18:13:00.13 ID:1rA0OcU3.net] >>687 遅くなってすいません 無事動きました ありがとうございます
749 名前:デフォルトの名無しさん mailto:sage [2016/10/20(木) 19:03:20.93 ID:LBhOxlVJ.net] ダブルクオーテーションで切れるのこれっぽい。 echo.2ch.net/test/read.cgi/unix/1439563321/777 自分も確かにこのケースだった。
750 名前:デフォルトの名無しさん mailto:sage [2016/11/02(水) 06:03:13.96 ID:CHmLMhVd.net] バッチファイル終了のお知らせ “Microsoft Flow”が正式公開。さまざまなサービスを組み合わせた自動処理が可能 - 窓の杜 forest.watch.impress.co.jp/docs/news/1027809.html
751 名前:デフォルトの名無しさん mailto:sage [2016/11/02(水) 06:40:56.27 ID:w2Q1/JQP.net] アイデアは良いと思うが >さまざまなアプリやサービスを組み合わせた自動処理を作成できるクラウドサービス“Microsoft Flow”を正式公開した。 >“Microsoft Flow”は“○○したら××する”といった一連の手続き(ワークフロー)をビジュアルでデザインし、自動実行できるサービス >料金は1ユーザー1カ月あたり750回までの実行であれば無料。有償プランであれば実行回数が増える 回数制限で有料とかゴミすぎ
752 名前:デフォルトの名無しさん mailto:sage [2016/11/02(水) 09:32:20.20 ID:5fVzD+K5.net] こんなのは華や茶の流派と同じで新しいのがでても統合などされることは無いんだよね
753 名前:デフォルトの名無しさん mailto:sage [2016/11/02(水) 23:59:36.62 ID:WEv5cQ3m.net] >>719-720 ワークフローなんか各社から出てるじゃん。
754 名前:デフォルトの名無しさん mailto:sage [2016/11/04(金) 00:14:32.57 ID:0ODaAY82.net] そういうのってネットに繋いでない時にも必要なのにクラウドサービスって しかも有料って
755 名前:デフォルトの名無しさん mailto:sage [2016/11/04(金) 01:47:32.80 ID:DvwqGnEZ.net] 完全にスタンドアロンで放置して動かすときにクラウドなんて使ってられない
756 名前:デフォルトの名無しさん mailto:sage [2016/11/10(木) 06:45:58.93 ID:+oUm9x6Y.net] TidyTabs Window Manager: give every program a tabbed user interface www.nurgo-software.com/products/tidytabs
757 名前:デフォルトの名無しさん mailto:sage [2016/11/11(金) 12:54:54.72 ID:ZYU/THNy.net] batファイルをつくりたいのですが、どのようにすればいいでしょうか 全くの初心者なのでヒントが欲しいです 目標としては、 親フォル
758 名前:_Aの中に、子フォルダ[aaa]あああ、[aaa]いいい、[bbb]ううう があります @([aaa]あああ)の[ ]内の文字(つまりaaa)を自動で取得し、その名前の新規フォルダを作成。(つまりaaaという名前の新規フォルダ) Aその後、親フォルダA内の[aaa]が入っているフォルダを検索する B Aで検索された複数フォルダを@で作成されたフォルダに入れる という流れを自動で行いたいです [] [ここ壊れてます]
759 名前:デフォルトの名無しさん mailto:sage [2016/11/11(金) 14:42:02.48 ID:OyxHpcMK.net] >>726 親フォルダを引数で渡すとしての一例 @echo off pushd %1 for %%i in ([*]*) do ( for /f "tokens=1* delims=[]" %%j in ("%%~i") do >nul 2>&1 (md "%%~j"&move /y "%%~i" "%%~j") ) popd
760 名前:デフォルトの名無しさん mailto:sage [2016/11/11(金) 15:12:14.98 ID:p31+l1cx.net] >>727 最初のforは/dつけないとだめでは
761 名前:デフォルトの名無しさん mailto:sage [2016/11/11(金) 15:56:59.78 ID:OyxHpcMK.net] おおー、フォルダだったのか てっきりファイルだと思い込んでたよ
762 名前:デフォルトの名無しさん [2016/11/13(日) 18:37:37.78 ID:cer+jHW2.net] 質問させていただきます 初めてバッチファイル、コマンドプロンプトを勉強して作っているのですが、HTMLページから特定のURLを抜き出してバッチファイルに代入したいのですが、その場合はWSH等で抜き出さないと出来ませんでしょうか
763 名前:デフォルトの名無しさん mailto:sage [2016/11/13(日) 20:15:27.03 ID:YAp+h9P5.net] >>730 HTMLページって具体的に何?
764 名前:デフォルトの名無しさん mailto:sage [2016/11/13(日) 20:16:08.95 ID:vGjlz1Ep.net] そんな大雑把過ぎる質問では最適解など分かるはずもなくレスつかないよ PowerShell使ったら?
765 名前:デフォルトの名無しさん mailto:sage [2016/11/13(日) 20:19:41.15 ID:cer+jHW2.net] >>731 OPENREC.tvという動画サイトです ここから動画ファイルのURLを吸い出して、エンコソフトをコマンドプロンプトに直接代入したいと思いまして・・・ >>732 すみません、この手の事は不慣れで・・・ PowerShellというものを初めて知りましたので、調べてみます
766 名前:デフォルトの名無しさん mailto:sage [2016/11/13(日) 23:00:08.77 ID:BL+CTUiW.net] 手段の前にまず手順を具体的に整理して見るといい 要件についてまったく何も知らない他人に 全部手作業でやってもらうよう依頼するとしたらどう説明する?
767 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 01:02:54.70 ID:csZc9y3a.net] 松岡修造みたいにすると思う。
768 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 13:10:56.92 ID:vvHHVAL2.net] バッチなんて所詮手作業を自動化するだけ ここでは手作業を自動化するのを支援することは出来るが 手作業で出来ないor内容がわかってない人はどうしようもない
769 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 14:36:44.38 ID:O1UQmJEN.net] >>733 1.PowerShellで.NETFramework使う 2.PythonやRubyなんかのllを使う 3.C#で簡単プログラミング さあ選べ
770 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 15:07:34.34 ID:WHs7zj8I.net] この場合は、バッチファイルにて htmlを取得して、url文字列を抜き出して、エンコソフトにオプション渡し ができるのか?、という問いなので、さあ答えは
771 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 15:27:55.44 ID:bnBDmUvf.net] >>733 そこのサイトは知らんけど >動画ファイルのURLを吸い出して なんて書いてるけど今時動画ファイル直リンなんてあるの?手段すら分かってないんじゃない? この手の技術に明るくないのであれば既存ソフトを用いてUWSCやAHKで自動化が現実的だと思う rtmpdumpみたいなcuiソフトがそのサイトで使えるならバッチで出来ると思うが
772 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 15:29:20.63 ID:9SfC86lS.net] 動画サイトって普通ストリームじゃないの? URLからダウンロード、エンコって、まず手作業でどういう手順で行うのか説明してくれないと wshやPowershellでだって出来るかどうかも答えられないよ
773 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 19:02:24.4
] [ここ壊れてます]
774 名前:0 ID:GWnO6+Yj.net mailto: >>737 4のperlで・・・ >>738 まさしくそういう事です >>739 ようはライブストリーミング動画が鯖側に保存してあって、それを録画再生するようなイメージです それを、ffmpegというcuiソフトを使いtsファイルにしています >>740 今までは動画ページからm3u8形式の格納されてるURLをソースから引っ張ってきて、ffmpegを使いtsファイルにしていました その一連の動作が面倒なので、動画ページのURLを貼り付けるだけで動画ページのソースからm3u8ファイルのURLを検索→ffmpegにm3u8ファイルのURLと動画ファイル名をコマンドに代入し、そのままソフトを走らせるというバッチファイルを作りたいと思っております [] [ここ壊れてます]
775 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 19:40:40.70 ID:kXxSR+Dw.net] >>741 人に聞くならまず正しい日本語で頼む > 今までは動画ページからm3u8形式の格納されてるURLをソースから引っ張ってきて 君には動画ページとかソースが何者かがわかってるんだろうけど、他の人にはそれが何者なのか?どこから与えられるのか?とか全然わからない
776 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 20:28:41.10 ID:8ZP1uHGR.net] >>741 その動画サイトとやらを教えられない理由があるなら 先に説明しておく方が親切だよ
777 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 20:35:09.15 ID:GWnO6+Yj.net] >>733 でも書いた通り、openrec.tvというサイトです 動画ページはどこを見ても同じソースだと思うので深く考えず、URLを載せなかっただけですがやはり載せた方がよろしいでしょうか? divタグ内に変数で各情報が載っておりますが、そこは重要ではなく>>738 が仰ってる通りです
778 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 20:51:56.98 ID:sZZGpXNZ.net] >>741 普段使いのcURLというCUIなダウンローダーで試した、使いたいツールがあるならお好みでどぞ https://curl.haxx.se/ https://bintray.com/artifact/download/vszakats/generic/curl-7.51.0-win32-mingw.7z Win32 - GenericにあるSSL, SSH対応版ね 前提として、外部ツールの検索パスは設定済みとする バッチファイルの引数としてURLをひとつ渡す。例: batchfile.bat https://www.openrec.tv/movie/TvWlSwoCUOI ここから @echo on setlocal ENABLEEXTENSIONS cd /D %~dp0 @rem 引数有無と引数名チェック if "%~1"=="" goto ERROR echo;%1|findstr /R /C:"^http" /C:"openrec" >NUL||(echo "%1" を処理できません) && goto ERROR @rem URLのアドレスとHTMLを環境変数へ設定 set ADDR=%1 for %%I in (%1) do set HTML=%%~nxI @rem HTMLダウンロード curl -L --max-redirs 10 -R -O %ADDR% @rem HTMLから文字列抽出 for /F "tokens=2 delims=<>| " %%I in ('type %HTML%^|findstr /R /C:"<title>"') do set TITLE=%%~I for /F "tokens=2 delims=, " %%I in ('type %HTML%^|find /I "m3u8"') do set TARGET=%%~I echo ffmpeg -c copy "%TITLE%.ts" -i "%TARGET%" pause exit ここまで
779 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 20:56:46.40 ID:sZZGpXNZ.net] すまそ、goto先がすっぽ抜けてた 中略 echo ffmpeg -c copy "%TITLE%.ts" -i "%TARGET%" pause exit :ERROR echo 引数が無効のため処理できませんでした pause exit ここまで
780 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 21:08:57.72 ID:nGSer73d.net] curlってすごく便利なコマンドがあったね 連番ファイルとか今までperlやbashでスクリプト書いてたのがアホらしい
781 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 21:15:57.14 ID:sZZGpXNZ.net] >>745 追伸、安全対策としてcurl処理のすぐ下に条件分岐も追加しておいてほしい @rem HTMLダウンロード curl -L --max-redirs 10 -R -O %ADDR% if not %ERRORLEVEL%==0
782 名前:goto ERROR [] [ここ壊れてます]
783 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 21:28:24.00 ID:GWnO6+Yj.net] おお、サンクスです・・・ が、一つわがままを言わせてもらうとやっぱり外部バイナリなりを使わないと出来ないですか・・・ どのPCでもすぐに使えるようにしておくと楽だなーと思ったのがきっかけだったので・・・
784 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 21:35:57.24 ID:4gwDzXsT.net] そもそもffmpeg使う時点で外部バイナリ必須では? それでも外部バイナリに頼らないでhttpダウンロードしたいっていうのなら bitsadmin /transferって手がなくはないけど
785 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 21:37:40.26 ID:sZZGpXNZ.net] >>749 bitsadmin.exe があるけど、拡張子がないサイトだと無理っぽかった、俺環かもだが 試してダメだったためcurlに書き換えた
786 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 21:38:23.41 ID:GWnO6+Yj.net] なんというか、インストール不要であるのが理想的だなと・・・ それで、一時はWSHでjavascriptでHMTLをダウンロードしようかと考えていました
787 名前:デフォルトの名無しさん mailto:sage [2016/11/14(月) 21:58:48.06 ID:4gwDzXsT.net] >>751 それは知らなかった そうすると後はPowerShellとか powershell -C "$h = Invoke-WebRequest example.com; $h.Content"
788 名前:デフォルトの名無しさん mailto:sage [2016/11/15(火) 08:29:35.25 ID:bLa91iv6.net] vbsでhttpすればいいんじゃね
789 名前:デフォルトの名無しさん mailto:sage [2016/11/16(水) 04:24:03.14 ID:tgJZOdTt.net] dir /ad /b /s "abc" サブディレクトリ含め"abc"フォルダのパスを列挙したかったんだけど 子に"abc"がある時と無い時で挙動が全く変わる 子に"abc"が無ければ望み通りの結果になるけど 子に"abc"があるとそこで dir /ad /b /s されて全てのディレクトリが列挙される "*abc"だと"zabc"も出て来るし "*\abc"や"C:\TEST\*\abc"は構文error if exist "abc" で例外処理しないとダメ? 何かサクッと出来る方法があるならお願いします
790 名前:デフォルトの名無しさん mailto:sage [2016/11/16(水) 05:28:34.82 ID:g04DIhTd.net] "\abc"
791 名前:デフォルトの名無しさん mailto:sage [2016/11/16(水) 06:28:47.52 ID:tgJZOdTt.net] >>756 それやると何故かカレントディレクトリは C:\TESTなのに (echo %cd% で確認) ドライブ全体から検索してるのか C:\Users や C:\Program Files 配下の abcディレクトリまで表示されるんだけど Win10
792 名前:デフォルトの名無しさん mailto:sage [2016/11/16(水) 09:56:14.36 ID:l4m+U27H.net] こういうこと? dir /ad /s /b | findstr /r \abc$
793 名前:デフォルトの名無しさん mailto:sage [2016/11/16(水) 16:58:26.02 ID:tgJZOdTt.net] >>758 dir /ad /b /s | findstr /r "\\abc$" これで行けそうかな。ありがとう /s スイッチの時フルパスで無ければ強制的にディレクトリ名orファイル名と見做してくれればいいのに 子にあると対象パスの省略形と見なし、無ければ検索するディレクトリ&ファイル名になるとか罠もいいところだわ dir /ad /b /s "\abc" これだとカレントディレクトリが無視されてドライブ全体?からabcフォルダが検索されるんだけど理由が分かる人が居たら教えて下さい
794 名前:デフォルトの名無しさん mailto:sage [2016/11/16(水) 19:53:01.57 ID:G/QgDslQ.net] >>759 for /r %%i in (.) do if "%%~nxi" == "abc" echo "%%~fi" \abc みたいに先頭に \ があるとそれはルートを示すんだよ DOS の頃から同じ仕様なんだけど
795 名前:デフォルトの名無しさん mailto:sage [2016/11/16(水) 20:29:10.66 ID:G/QgDslQ.net] >>760 ABC とか Abc とか abC とか有ったら /i を追加 for /r %%i in (.) do if /i "%%~nxi" == "abc" echo "%%~fi"
796 名前:デフォルトの名無しさん mailto:sage [2016/11/16(水) 20:36:19.30 ID:tgJZOdTt.net] dir /ad /b /s | findstr /r "\\%name%$" てな場合nameの末尾にスペースが入ると意図した結果にならず dir /ad /b /s | findstr /e "\%name%" で解決出来ました >>759 for /r とif での方が間違いが無さそうですね。ありがとう "\abc" は、まず dir /ad /b /s "C:\abc" とドライブ省略形の対象ディレクトリと見做して 対象が無ければ検索するディレクトリ名&ファイル名として扱われている感じなのかな
797 名前:デフォルトの名無しさん mailto:sage [2016/11/16(水) 22:35:57.05 ID:fww2Eit8.net] いままでdir /sのディレクトリ指定は開始位置を指定するもんだとばかり思ってたけど違うんだな 指定ディレクトリが存在してたらこの通りで他のディレクトリの下は対象外なんだが 存在しないと他のディレクトリの下へ探しにいくんだな 気をつけないといけないな 実行速度は遅いだろうが forfiles -s -mabc -c"cmd /c if @ISDIR==TRUE echo @PATH\@FILE"
798 名前:デフォルトの名無しさん mailto:sage [2016/11/17(木) 01:33:10.64 ID:45hMt1B7.net] >>759 dir .\abc /ad /b /s カレント配下ならドット付けとくんじゃないの
799 名前:デフォルトの名無しさん mailto:sage [2016/11/17(木) 01:41:34.94 ID:3AVvQ2An.net] DOS/Windowsでは、単にabcとするのが普通で.\abcとは書かないかな
800 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 00:23:10.73 ID:MVrqW6/3.net] さらに複数パターンの一致を検出してみる for /r /d %%i in ("abc.*" "xyz.*") do if "%%~xi"=="" echo "%%~fi"
801 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 05:45:03.27 ID:aprTvklx.net] >>765 は?
802 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 07:12:41.73 ID:MVrqW6/3.net] フォルダに拡張子が無いとしたら dir /ad /b /s abc.* で良さそう
803 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 15:43:00.69 ID:MssNdFsD.net] >>766 >>768 "abc.*"だと"abc."が最低条件になって"abc"は除外されるものだと思ってたけど"abc"も出てくるね 実際は末尾"."のフォルダは作れないから拡張子の付いているフォルダしか出ないと思ってた なんで???"."て特殊なの?ちょっと目からウロコ
804 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 16:29:03.81 ID:TqE/rt71.net] もともとドットは拡張子の区切り記号だったわけで abc. = abc Windowsになって複数のドットも付けられるようになったが ドット2つ使うとファイル管理領域も2倍使う結果に
805 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 16:44:12.24 ID:MssNdFsD.net] 拡張子の区切り記号なのは分かるけどそれが abc.==abc となる理由が分からない ドットが区切り記号だからファイル名(文字列)と見做さず比較の際に無視されるとかなのかな?
806 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 16:52:38.55 ID:TqE/rt71.net] ファイル管理領域は、ファイル名部分と拡張子部分とに分かれており ドットはその管理領域のどこにも書き込まれない 単に区分けする識別子の役割りしか持たない つまり、管理上は、ファイル名=abc,拡張子=NULLってなってる だからabc.とabcの見分けは付かない エクスプローラでファイルをabc.で作成したってabcファイルが作られるだけ
807 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 17:06:48.25 ID:TqE/rt71.net] なんか勘違いしてた気がする LFNではドットもそのまま入ってる
808 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 17:12:57.12 ID:MssNdFsD.net] >>772 >ドットはその管理領域のどこにも書き込まれない >管理上は、ファイル名=abc,拡張子=NULL >だからabc.とabcの見分けは付かない 詳しい説明をありがとうございます 納得出来ました。もうなんと言って良いのやら ひとつ理解が深まりました。ドラクエのレベルアップの音が鳴り響いた気分です
809 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 17:24:08.15 ID:MssNdFsD.net] コマンド側が古い仕様を引き摺ってると判断しておきます
810 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 18:07:23.95 ID:TqE/rt71.net] おそらくコマンドやエクスプローラは、最後のドットに特別な意味(拡張子)を持たせて ドットだけなら削除する仕様なんだろう
811 名前:デフォルトの名無しさん mailto:sage [2016/11/18(金) 21:00:10.73 ID:TqE/rt71.net] ピリオドと半角空白には色々と罠があるかも md aaa cd "aaa....." md "abc. . . " (エクスプローラでのフォルダ・ファイル作成も同じ) dir "abc.." dir "abc..."(abc..とは異なる結果に)
812 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 03:25:52.98 ID:JjiTnU56.net] #!/bin/bash # すれ違いですまないが apt-get moo #に見えてきた echo "Enter to Exit" read wait
813 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 04:02:30.76 ID:6BFx2XsN.net] すれ違い杉
814 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 10:40:41.73 ID:I/7/X0k0.net] ケイン
815 名前:・コスギ 英才・出木杉 ・・・・板違い [] [ここ壊れてます]
816 名前:デフォルトの名無しさん mailto:sage [2016/11/19(土) 11:47:06.46 ID:HaGDkE41.net] >>772-773 合ってるよ 短い名前(いわゆる 8.3形式)ではカレントディレクトリの "." と ".." を除いて "." は記録されない https://ja.m.wikipedia.org/wiki/8.3%E5%BD%A2%E5%BC%8F LFN ではそのまま Unicode で記録される
817 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 01:32:41.69 ID:5hQ1kNDg.net] %random% って代入すると機能を失って、クリアするとまた復活するのね。 一時変数の名前に使うとちょっと便利かも
818 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 08:06:59.15 ID:plO26YRe.net] 777
819 名前:デフォルトの名無しさん mailto:sage [2016/11/20(日) 22:07:31.97 ID:mYrLDeuJ.net] >>782 バグの元だろ
820 名前:デフォルトの名無しさん mailto:sage [2016/11/21(月) 02:59:43.79 ID:bNk8tUAy.net] %errorlevel%とか%date%に代入するとかもやりそうな気配
821 名前:デフォルトの名無しさん mailto:sage [2016/11/21(月) 18:40:20.55 ID:1UsqdqxT.net] win10が時期アプデでコマンドラインシェルをデフォルトから格下げだってさ。えらいこっちゃ fossBytesに11月19日(米国時間)に掲載された記事「Microsoft Replaces Command Prompt With PowerShell As Windows 10 Default Shell」が、Windows 10のデフォルトシェルが コマンドプロンプトからPowerShellに変更されると伝えた。Windows 10 Insider Build 14971で すでに入れ替えが実施されたと説明がある。 Windows 10 Insider Build 14971では、これ以外にもMicrosoft EdgeでEPUB電子ブックを読む 機能や新しいPaint 3Dアプリケーションの導入などが実施されている。 (後略) news.mynavi.jp/news/2016/11/21/374/
822 名前:デフォルトの名無しさん mailto:sage [2016/11/21(月) 19:58:33.06 ID:4eyhD8wV.net] >>786 まあそろそろいいかなって思うわ 慣れれば PowerShell めっちゃ便利やし
823 名前:デフォルトの名無しさん mailto:sage [2016/11/22(火) 16:32:55.50 ID:OivDuOyC.net] >>785 おもしろい、どうなるのだろう
824 名前:デフォルトの名無しさん mailto:sage [2016/11/23(水) 04:53:34.68 ID:lMEr/SWa.net] %参照は上書きの値、if errorlevel文には set errorlevelしても無効 set errorlevel=5 などバッチ内で errorlevelを自分で設定する場合は if errorlevel文は使えない if %errorlevel% GEQ 1 などであれば可
825 名前:デフォルトの名無しさん mailto:sage [2016/11/23(水) 09:54:12.77 ID:pZmHnyz7.net] WindowsPEも起動したらPowershellで始まるの? 最新のヤツでもマトモに動かせないのに
826 名前:デフォルトの名無しさん mailto:sage [2016/11/24(木) 00:02:10.88 ID:b21vlpof.net] >>727 >>728 ありがとうございます 返信遅くなりました ただ、せっかくヒントを頂いたのですが、想像より自身のレベルに見合わないスクリプトでした。実際につくるのは先になりそうです……
827 名前:デフォルトの名無しさん mailto:sage [2016/11/24(木) 00:50:33.49 ID:aisAFXaT.net] >>791 >>727-728 はヒントじゃなくて720の要件の全部だぞ 721をbatで保存してそのbatに親フォルダAをドロップすれば720の通りになる
828 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 00:47:02.26 ID:61EwoExF.net] >>727 >>728>>792 ありがとうございます!できました >>728 の方が言っていた直しが正しく行えなかっただけでした 皆さん本当にありがとうございます 自分で書けるようにもなりたいのですが、皆さんどのようにバッチファイルを学んだのでしょうか サイトなどを回ってもなかなか進まなくて……
829 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 02:10:39.28 ID:CoCq2KiG.net] for /? set /? この二つ読んでわからないところをぐぐる
830 名前:デフォルトの名無しさん mailto:sage [2016/11/26(土) 04:48:01.93 ID:0eLSGHGV.net] 「バッチ
831 名前:門」でググって出て来るページを読む コマンド一覧を載せてるサイトを見てどんなコマンドがあるのか一通り目を通す(暗記までする必要なし) /?でヘルプ見ながら書いて一つ一つ試す pauseを挟みつつ期待した通りに動いてるか確認しながら書いていく 分からなければここで質問 自分の場合、リダイレクトとかエスケープとかcall set で遅延環境変数を使わない方法とかはここで教わった 何をやっているのか分からないものは必ず解読するようにすれば覚えていける 動作を理解していないとテストでは問題無く動いても本番でエラーになる事もあるからファイル操作させたりする場合は予めバックアップを取る 処理対象が大量にある場合などは1度に全てを処理せず何度かに分ける 721で難しそうなのはforのみ 最初のforで対象フォルダ("[*]*"にマッチするもの)を抽出してる for /d %%i in ([*]*) do echo %%i と分解してみれば分かりやすい for /f "tokens=1* delims=[]" %%j in ("%%~i") do delims=[] は "[" "]" の文字を区切り文字に指定 tokens=1* は1つ目のトークンを%%jに残りを%%kに "[aaa]あああ"であれば %%jに"aaa"が %%kに"あああ"が入る md "%%~j"&move /y "%%~i" "%%~j" フォルダ作成&移動 "[]あああ"なんてのがあると想定していない"あああ"フォルダに移動になるから注意ね [] [ここ壊れてます]
832 名前:デフォルトの名無しさん mailto:sage [2016/11/27(日) 09:52:07.02 ID:mLcTWF4w.net] おはようございます。 同一フォルダ内にある複数ファイル a.jpg、あ.jpg、1.jpg等を一括で001-a.jpg、002-あ.jpg、003-1.jpgに連番を付加する batファイルを教えて下さい!
833 名前:デフォルトの名無しさん mailto:sage [2016/11/27(日) 11:17:31.27 ID:2v7FHJZn.net] a,あ,1の順序付けにどういう規則をつけるの? 普通の昇順降順ではこの順番にならないけど
834 名前:デフォルトの名無しさん mailto:sage [2016/11/27(日) 11:19:13.96 ID:mLcTWF4w.net] 紛らわしくてすいません。 普通の昇降順でお願いします。
835 名前:デフォルトの名無しさん mailto:sage [2016/11/27(日) 11:33:53.80 ID:2v7FHJZn.net] こういうのって結構難しいんだよね 例えば、 a.jpgと001-a.jpgの二つのファイルがあったら 先に001-a.jpgをリネームして001-001-a.jpgにしないと ファイル名が重複してリネームできなくなるし (さらに001-001-001-a.jpgがあったりすると...)
836 名前:デフォルトの名無しさん mailto:sage [2016/11/27(日) 11:57:08.03 ID:mLcTWF4w.net] 単純に今あるファイル名の先頭に001や002と連番をつけるだけで大丈夫です。 この前作ったのですが誤ってファイルを消してしまって(泣
837 名前:デフォルトの名無しさん mailto:sage [2016/11/27(日) 12:22:44.82 ID:2v7FHJZn.net] >>800 正常系だけでいいのなら @echo off pushd %1 set n=0 for /f "delims=" %%i in ('dir /b /on *.jpg') do ( set /a n+=1 call set nn=00%%n%% call set nn=%%nn:~-3%% call ren "%%~i" %%nn%%-"%%~i" ) popd
838 名前:デフォルトの名無しさん mailto:sage [2016/11/27(日) 12:47:37.07 ID:3PyehhaB.net] 作成代行スレじゃないので自力でここまではできたけどここから先がわからない というような努力の跡がほしいなぁ
839 名前:デフォルトの名無しさん mailto:sage [2016/11/27(日) 15:20:44.02 ID:V1m99hal.net] @echo off pushd "%~dp1" set n=1001 :ARGCHK if "%~1"=="" pause &exit /b ren "%~1" "%n:~-3%-%~nx1" echo. echo "%~nx1" echo "%n:~-3%-%~nx1" set /a n+=1 shift &goto :ARGCHK 選択ファイルを送るやバッチにD&D。001から999まで Winの仕様によりD&Dの際は先頭ファイルを掴まないと順番が狂うので注意
840 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 12:46:34.73 ID:RTx2BH8+.net] >>794 >>799 ありがとうございます!返信遅くなりました とくに799の方、具体的に話していただいて本当に助かりました。
841 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 16:10:49.30 ID:J7/x1rKh.net] 799
842 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 19:03:21.48 ID:rwQpbrj5.net] 799は素晴らしいな
843 名前:デフォルトの名無しさん mailto:sage [2016/12/10(土) 00:17:50.34 ID:CO5JTr10.net] pushd "%~dp1" || exit /b if not exist "title.txt" exit /b for /f "usebackq delims=" %%a in ("title.txt") do ( ren "%~1" "%%~a%~x1" shift ) forの中でshiftが働きません どう書けば良いでしょうか? 選択ファイルをドラッグ&ドロップしてtitle.txtの順通りにリネームしたいです
844 名前:801 mailto:sage [2016/12/10(土) 14:16:28.41 ID:CO5JTr10.net] 自己解決しました @echo off pushd "%~dp1" || exit /b if not exist "title.txt" exit /b :LOOP if "%~1"=="" pause &exit /b for /f "usebackq %SKIP%%N% delims=" %%a in ("title.txt") do ( ren "%~1" "%%~a%~x1" || (echo "%~1" "%%~a%~x1"&pause &exit /b) goto :NEXT ) :NEXT if not defined SKIP set SKIP=skip= set /a N+=1 shift &goto :LOOP
845 名前:デフォルトの名無しさん mailto:sage [2016/12/10(土) 15:09:17.17 ID:ga5ibtHW.net] forループは実行前に式展開されてから実行されるので 式展開時に変数が内容の文字列に置き換わってしまい変数の意味を失う @echo offを取って表示させたらわかるだろう 面倒なのでヒントだけ for %%a 〜 do ( set b=%%a call echo %%a - "%%~1" - %%b%% shift )
846 名前:デフォルトの名無しさん mailto:sage [2016/12/10(土) 16:20:43.39 ID:CO5JTr10.net] >>809 ありがとうございます callで遅延展開風にする場合%で囲むと思っていたので call ren "%%~1%" "%%~a%%~x1%" と書いていて出来ませんでした call ren "%%~1" "%%~a%%~x1" と書けば良かったのですね %で囲むではなく「%を重ねる」と覚えるようにします
847 名前:デフォルトの名無しさん mailto:sage [2016/12/10(土) 16:27:31.21 ID:ga5ibtHW.net] 式評価されるということは、 %%→%になるっていうことなんだよ (これは%を表記する方法として覚えるけど) set a=echo hoge call %%a%% call call %%%%a%%%%
848 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 10:51:05.79 ID:HwfbXu/f.net] >>810 引数や変数を遅延展開するのは無理あるよ あらかじめ環境変数をセットしたものが対象であり、どのコマンドにも適用できるわけじゃない パーセントを前方に重ねるのはバッチ上の書式、一重囲みが環境変数、call command 二重囲みが遅延展開というように意味が異なる よくわからなければエクスクラメーション記号にするか、カッコを使った複文を避けてサブルーチンに渡す、など別の方法をとる
849 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 15:29:30.80 ID:wBKcLq5q.net] 遅延展開というより 式評価が、実行時とcallの2回実施される 一回目の式評価ではまだ変数展開が行われずに残ったままにしたい ってのが%%にする理由
850 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 15:39:49.38 ID:wBKcLq5q.net] for /F %%i in ('command') 形式の'command'の部分、ここにも式評価が入ることが結構忘れられる
851 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 16:35:43.66 ID:wBKcLq5q.net] 補足 commandにパイプやリダイレクト記号を書くような場合は ^| や ^>とかのように'^'を付けないとエラーになるから忘れるということは無いだろうが 忘れる場合ってのは、>>523 や>>538 のような場合のことで 元のように%一つにしておくと何が起き得るかは"ab%cd%ef"とかが入ってる場合を考えれば解かる
852 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 22:14:02.08 ID:iHWHaBgd.net] \/:*?"<>| テキストファイルに含まれるこれらのファイル名に使えない文字を全角文字に置換したいのですが バッチで試してみたところ"*は無理でした バッチから使えるcuiソフトなどで良いものや何か方法があれば教えて下さい あ/あ "abc" など括弧のように対応する"がある場合は、あ/あ “abc” あ/あ a" など対応するものが無ければ、あ/あ a” みたいに出来れば理想です
853 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 22:19:57.19 ID:iHWHaBgd.net] あ/あ “abc” が何か分かり難くなってますが 左側が左ダブル引用符という下から上へコロン打ってるやつで 右側が右ダブル引用符で上から下へのコロンです
854 名前:デフォルトの名無しさん [2016/12/14(水) 00:05:22.68 ID:vS/jNHEE.net] netstat みたいに気軽で、もっと高速にアクセス中のホストが分かる方法ないでしょうか? というのは、EdgeのURLを取得するのはかなり面倒なので でも netstat の情報は1分以上遅延するので、できれば数秒で知りたい
855 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 00:51:13.45 ID:/GnWlzD4.net] >>818 netstatそんなに遅れるか? 名前解決に時間が掛かってるんなら-nを付けて数値のみで表示させてみては?
856 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 01:19:09.19 ID:vS/jNHEE.net] >>819 なるほど、-nなら一瞬でしたw 名前で反応したかったので、-fにしてました
857 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 01:31:44.57 ID:/GnWlzD4.net] セッション数幾つぐらいなのか知らないけど 普通名前解決に秒単位なんてかからないよ 自分のプロバイダのところのDNSサーバー使ってるか?
858 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 01:54:27.20 ID:vS/jNHEE.net] >>821 特に何もしてないので、プロバイダのDNSだと思います 普段は4つですが、ブラウザ開くと1ページでも何十個も出てきますね よく見ると、一瞬で何十個もリストアップされる場面と、ひっかかる場面があって、相手先によるようですね
859 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 03:29:46.39 ID:PdV20HuV.net] >>816-817 ファイル名には、半角英数字と、_ アンダーバーだけを使うこと バグるアプリがあるから、それら以外の文字は使うな
860 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 04:28:14.68 ID:/GnWlzD4.net] まあ今時ファイル名に日本語を使うなってのはちょっと無理っぽいだろ 良いものがあるかどうかは俺は知らんよ(人に探させずに自分で探すのがいいだろう) PowerShellやWSHでやる分にはそれくらいは出来るだろうけど ファイル名にはいろいろ落とし穴があるからなあ 長さ制限とか、con,com1等のデバイス名とか後につくピリオドや半角空白とか com1. ..txt とか作れない
861 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 17:45:01.83 ID:vFnJFYnV.net] コマンドラインから「システムの環境変数」を参照するのってできる? 具体的には最近のJavaインストールすると、 システムの環境変数PATHの先頭に余計なもの追加しやがるので それを削除するスクリプト書きたいんだよね。 設定は setx 使えばいいらしいんで、参照さえできれば削除できるかなーと。
862 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 17:55:14.06 ID:puNU7ctc.net] reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" 個人的には reg export 使ってファイルでごにょるのが好み
863 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 21:30:56.66 ID:PdV20HuV.net] PowerShell_ise では、大文字・小文字は同一として扱われる。 環境変数PATHを表示する $Env:Path 設定は、 $str = ";C:\Program Files\Internet Explorer\" set-item -path env:path -value "$Env:Path + $str" -WhatIf -WhatIf を付けているので、実際には実行されないで、結果を見れる
864 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 23:47:39.26 ID:vFnJFYnV.net] >>826 さんくす
865 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 22:24:24.35 ID:Jry/Bq76.net] このスレってやっぱり仕事でCMD使ってる人がほとんどなのかな?
866 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 23:46:26.73 ID:Jj9qQdSY.net] 余裕で趣味です
867 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 00:25:58.77 ID:EPzN1wXR.net] 今もバッチで色々やってるけど そろそろPowershell覚えた方がいいんかナー
868 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 03:59:28.83 ID:rja7Rz9P.net] かなり前からそう思ってるけど.Net覚えるのが面倒臭くて先延ばしにしたままだわ
869 名前:デフォルトの名無しさん mailto:sage [2016/12/16(金) 19:20:13.39 ID:UvIhWraO.net] 少し前から cmd/wsh+vbs から PowerShell に
870 名前:移行したけどチョー楽しい ただ各所にトリッキーなトラップがあるのと比較演算子が -eq とか -lt とかなのがいまだに慣れない [] [ここ壊れてます]
871 名前:デフォルトの名無しさん mailto:sage [2016/12/17(土) 20:01:48.32 ID:rAxcOYFz.net] キッティングで使ってるけど PowerShellはストアアプリの駆除がメインだな
872 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 08:18:40.79 ID:qKtu6SDf.net] シェルスクリプトはリダイレクトに > | < 使ったアホのせいで 比較演算子がまともに使えなくなったのが痛い PowerShellではその悪習を断ち切って欲しかった
873 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 11:49:41.76 ID:djwC/Ohb.net] リダイレクトに<>を使ったのは大成功だったと思うがな。 PowerShellでヘンテコな構文を導入したところで、 マイクソシネって言われるだけじゃん。 悪臭というなら、パス区切り文字の\だろ。
874 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 15:58:05.60 ID:oHmdKz4q.net] []も問題起こすよね
875 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 16:00:06.55 ID:oHmdKz4q.net] なんか四角形に見えるw 『 [ 』と『 ] 』ね。
876 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 12:20:52.68 ID:H16UOEk6.net] 豆腐屋って減ったよなあ
877 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 21:24:30.96 ID:j5IwDTpi.net] 峠を攻める豆腐屋
878 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 22:09:00.93 ID:EFgj4hJx.net] というよりも小売りが… 八百屋なんて、そういうのがネタになっている商店街か、 近くに田畑があるようなところでしか見なくなったよ。 ほとんど全ての街ではスーパーでいいからな。 そう考えると、花屋は頑張っている。 未だにそれなりの数が残っているよな。 ま、スーパーの置き場所は限られているからか。 あとは客ひとりの利益率も悪くないんだろうなあ。
879 名前:デフォルトの名無しさん mailto:sage [2016/12/23(金) 13:16:48.65 ID:C13rqdFY.net] 自身にマウントされてるドライブ/フォルダ名を指定してその対象がローカルドライブか否か判別できるコマンドってありますか?
880 名前:デフォルトの名無しさん mailto:sage [2016/12/23(金) 13:19:26.61 ID:C13rqdFY.net] あれ、なんか投稿が切れてる・・・ 自身にマウントされてるドライブ/フォルダ名を指定してその対象がローカルドライブか否か判別できるコマンドってありますか? 『net use ドライブレター』でCIFS/WebDAVでマウントされた物かそうでないかは判断できるけど、 Dokanとかでマウントされた物も含めて、ネットワークドライブ全般を判別したいです。 (ただiSCSI/FCとかのブロックデバイスは仕方ないかなと思ってます) よろしくお願いします。
881 名前:デフォルトの名無しさん mailto:sage [2016/12/23(金) 20:54:24.61 ID:QxIckOqH.net] >>843 俺は以下の要領でVBScriptと併用してる toro.2ch.net/test/read.cgi/tech/1374205515/587 >593 : デフォルトの名無しさん[sage] 投稿日:2014/06/16(月) 18:45:29.61 ID:R0cE173n [1/1回] >>>592 > WScript.Echo CStr(CreateObject("Scripting.FileSystemObject").GetDrive(WScript.Arguments(0)).DriveType) > ↑ >この1行をVBScriptファイルとして保存してから別途呼び出す方式にすれば、大雑把な判定なら可能。 >例えば、そのVBScriptファイルを"test.vbs"としてDドライブの種別を調べたい場合、 >コマンドプロンプト画面またはバッチファイルで以下のように実行してみる。 >cscript test.vbs d: >すると1桁の数字が表示される。数字の意味は以下の通り。 > 1:リムーバブルドライブ(USBメモリ/SDカード/FDなど) > 2:HDD > 3:ネットワークドライブ > 4:CD-ROM/CD-R/DVD-ROM/DVD-Rなど > 5:RAMディスク
882 名前:837 mailto:sage [2016/12/23(金) 22:21:21.24 ID:l7ZH
] [ここ壊れてます]
883 名前:1QCK.net mailto: >>844 ありがとうございます。ちゃんと機能することを確認しました。 ちなみにDokanのWin-SSHFSでマウントしたドライブは、 エクスプローラーで確認するとHDDのアイコンにも関わらず 上記のVBスクリプトの出力は何故か1でした。 流石にリパース・ポイントでマウントされているフォルダの情報とか までは拾えないですね。 ファイルシステムやパーテションの下位レイヤーに位置している デバイスの情報までバッチで拾うのは無理があるとは思いますが。 [] [ここ壊れてます]
884 名前:デフォルトの名無しさん mailto:sage [2016/12/23(金) 23:59:30.85 ID:QxIckOqH.net] >>845 あとは https://technet.microsoft.com/ja-jp/scriptcenter あたりで、他に使えそうな構文がないかどうか探すしかないのでは? ちなみに以下の1行をVBScriptファイルとして保存してから別途呼び出す方式にすれば、任意のドライブにメディアが挿入されているかどうかを判定可能。 ↓ WScript.Echo CStr(CreateObject("Scripting.FileSystemObject").GetDrive(WScript.Arguments(0)).IsReady)
885 名前:837 mailto:sage [2016/12/24(土) 08:36:33.47 ID:bGXjBeNc.net] >>846 ありがとうございます。 こちらのツールも勝手がよさそうですね。使わせていただきます。
886 名前:デフォルトの名無しさん mailto:sage [2016/12/24(土) 12:05:37.82 ID:mYH1sKhw.net] WSH等を使う…と言ってたらバッチの出番が無くなったりしてな
887 名前:デフォルトの名無しさん mailto:sage [2016/12/27(火) 22:52:31.05 ID:tD8K2H9A.net] errorleveになぜか9009が急に出はじめて びっくりして検索したら、いろいろ出た
888 名前:デフォルトの名無しさん mailto:sage [2017/01/02(月) 07:34:29.54 ID:Jfm6LKzZ.net] msys等のprintf をプロンプトから forループ、変数 %s で実行すると困る、って夢を見たんだ @for /d %s in ("%ProgramFiles%\M*") do @printf """%"s""" %"s"\n" "%s" "%s" (´-`).。oO(ワケワカラン… もう一回寝たら何かひらめくかな…)
889 名前:デフォルトの名無しさん mailto:sage [2017/01/07(土) 01:17:44.86 ID:mJLtkeqF.net] pastebin.com/mEHBJq8T こんな感じでmp4からpng形式で切り抜きたいのですが、出来ません お願いします
890 名前:デフォルトの名無しさん mailto:sage [2017/01/07(土) 01:42:13.02 ID:QYFKEjsV.net] >>851 FILENAMEを%で囲ってないからでは
891 名前:通りすがり mailto:sage [2017/01/07(土) 09:57:36.05 ID:YuFs6plI.net] FILENAMEを、%で囲めば、いいのか。 φ(..)メモメモ。
892 名前:デフォルトの名無しさん mailto:sage [2017/01/08(日) 00:48:03.49 ID:jXHP++jg.net] >>852 ありがとうございます FILENAME=hoge hage としたい場合はどの様にしたらいいんですかね? どこをダブルクォーテーションで囲めばいいのか分からなくて
893 名前:デフォルトの名無しさん mailto:sage [2017/01/08(日) 01:06:14.31 ID:xvjZF4HS.net] set文は引用符要らないでしょ、右辺丸々空白ごと代入される(引用符で括れば引用符ごと) 使用する状況によって "%var%" とかすれば
894 名前:デフォルトの名無しさん mailto:sage [2017/01/09(月) 12:41:03.48 ID:XllxQEeD.net] set文の最後の改行前や=の前後に空白入れてしまってバグになるなんて 初心者にはありがちか…な?
895 名前:デフォルトの名無しさん mailto:sage [2017/01/09(月) 17:39:58.40 ID:FdW16b/b.net] >>856 うん
896 名前:デフォルトの名無しさん mailto:sage [2017/01/09(月) 17:46:32.39 ID:Vl0ZF+DQ.net] >>856 こんな感じのが動かなくてなんでじゃーってなってた @echo off set number=1 && echo hoge if "%number%"=="1" echo 成功 pause
897 名前:デフォルトの名無しさん mailto:sage [2017/01/21(土) 18:44:36.79 ID:tXmcovE0.net] スペース有り無しはホント罠 ファイルに出力リダイレクトする時も末尾に謎スペースが入ってるーとかよくある vbsって別ファイルじゃなくてバッチ上に書いた文で実行できなかったっけ
898 名前:デフォルトの名無しさん mailto:sage [2017/01/21(土) 18:57:14.10 ID:0ZiC2kwV.net] jscriptなら
899 名前:デフォルトの名無しさん mailto:sage [2017/01/23(月) 20:40:05.68 ID:D7Cv/vEJ.net] バッチ処理で複数の作業を同時にするのはどうやるんでしょうか? hoge 1-
900 名前:100まで一気にやってしまうと負荷がひどいので、3つずつ走らせたいです FOR /F %%I IN (z,txt) do ( start /b hoge %%I ) これではすべて同時に実行されて困ってます [] [ここ壊れてます]
901 名前:デフォルトの名無しさん mailto:sage [2017/01/23(月) 20:47:18.46 ID:KnzUZKpX.net] >>861 取りあえず3つ起動して、それが終了するのを監視するとかかな tasklist /fi "IMAGENAME eq hoge" が無くなるまで次の起動を待つ
902 名前:デフォルトの名無しさん mailto:sage [2017/01/23(月) 21:25:20.02 ID:ltIH4vtA.net] 同じ事で悩んだ記憶がある、こんなん如何でしょ? FOR /F %%I IN (z,txt) do ( start /b hoge %%I call :hogecounter ) goto :EOF :hogecounter set /a num_hoge = 0 for /f "usebackq" %%i in (`tasklist /FI "IMAGENAME eq hoge.exe"`) do set /a num_hoge += 1 if %num_hoge% GEQ 5 ( echo hoge.exe 3つ以上実行中なので待機中... ---- %date% %time% ---- ping -n 2 127.0.0.1 1>nul 2>&1 goto hogecounter ) exit/b
903 名前:デフォルトの名無しさん mailto:sage [2017/01/24(火) 12:56:00.44 ID:wPNJq+TP.net] >>862-863 回答ありがとうございます。とても勉強になりました tasklistを使ってどうやって監視するのか考えていたんですが、こうやるんですね
904 名前:デフォルトの名無しさん mailto:sage [2017/01/24(火) 20:29:53.92 ID:/B8f83m4.net] startコマンドの第一引数はウィンドウタイトルと認識されるから、/b の効果は不明だね start
905 名前:デフォルトの名無しさん mailto:sage [2017/01/24(火) 20:30:49.14 ID:/B8f83m4.net] start "" /b hoge %%I みたいに空文字でも入れておくといいかも
906 名前:デフォルトの名無しさん mailto:sage [2017/01/24(火) 23:59:56.75 ID:VxYK/9Zb.net] 処理の終了を知らせるために rundll32 user32.dll,MessageBeep としてるんですが、鳴る音がランダムです 音楽プレイヤーを起動することなく特定の音を鳴らしたい場合はどう書けばいいですか?
907 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 08:04:52.52 ID:JylBc2Qw.net] >>867 もし俺なら以下のようにする。 echo ^G^G^G 「^G」は実際にはコマンドプロンプト画面上で[Ctrl]と[G]を同時に押す事で入力できるアスキーコード7 (元々BEEP音を鳴らすための制御コード)を指す。だから「^G^G^G」なら、BEEP音が「ピッピッピッ」と3回鳴る。 パソコンによっては、ヘッドホンを繋ぐとBEEP音がヘッドホンからしか聴こえない機種もあるので注意。 (昔のパソコンは、ヘッドホンを繋いでいてもBEEP音は本体スピーカーから聴こえる機種のほうが普通だったけど)
908 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 02:22:00.01 ID:xZjzKm01.net] プログラムは起動させても自動的に終了するのなら大丈夫では? start "" /b /min sndrec32 /play /close "hoge.wav"
909 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 03:29:49.24 ID:xZjzKm01.net] 他スクリプトと併用した例 ■start /minの代わりにWSHを併用(タスクバーにタブが出ない) @if(0)==(0) @echo off ::ここから@endの間にBATスクリプトを記述し、最後はgoto :eofで終わらせる echo 初回 cscript.exe //nologo //e:jscript "%~f0" "c:\media\foo.wav" echo 2回目 cscript.exe //nologo //e:jscript "%~f0" "c:\media\bar.wav" goto :EOF @end (new ActiveXObject("WScript.Shell")).Run('sndrec32 /play /close "'+WScript.Arguments(0)+'"',0,true); ■powershellを使ってBEEPで音階を演奏する @echo off :: beep(周波数,再生時間) powershell -C "(262,294,330) | % {[Console]::beep($_,200)}"
910 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 03:42:07.64 ID:xZjzKm01.net] 訂正 powershell -C "(262,294,330) | %% {[Console]::beep($_,200)}"
911 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 00:
] [ここ壊れてます]
912 名前:39:40.64 ID:igA7csKz.net mailto: >>868 ほえーこんなんもあるんだなー [] [ここ壊れてます]
913 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 00:47:40.39 ID:pF7zedh0.net] 初心者です batの書き方wikiのようなものはないんでしょうか 代表的なサンプルコードがたくさんあるサイトとか みんな何を参考にコード書いてるの? cmd help以外で
914 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 00:52:08.69 ID:7NHk2TgN.net] バッチ 入門 バッチ 使い方 バッチ リファレンス
915 名前:862 mailto:sage [2017/01/27(金) 10:21:22.88 ID:01h1aWf4.net] >>872 その方法をバッチファイルで実現するには、恐らく以下の方法が一番簡単だと思う。 (1) 黒いコマンドプロンプト画面で「echo echo 」の10文字(半角スペースを含む)をキーボードから打ち込む。 ※この段階ではEnterキーをまだ押さない事! ↓ (2) キーボード上の「Ctrl」キーと「G」を好きな回数だけ同時に押す。 ※例えばバッチファイルの実行によりBEEP音を2回鳴らしたい場合は2回やる。 ↓ (3) そのまま「>>"」をキーボードから打ち込む。 ↓ (4) 編集したいバッチファイル名をエクスプローラの画面からコマンドプロンプト画面にドラッグ&ドロップする。 ※例えば"C:\temp\sample1.bat"をエクスプローラの画面からドラッグ&ドロップすると、コマンドプロンプト画面に「C:\temp\sample1.bat」の文字列が転記される。 ↓ (5) そのまま「"」をキーボードから打ち込む。 ※ファイル名を「"」(ダブルクォーテーション)で囲む理由は、ファイル名やフォルダ名に空白が含まれていても問題なく作業できるため。 ↓ (6) ここまでの一連の操作により、コマンドプロンプト画面では以下のように見えるはず。 「echo echo ^G^G>>"C:\temp\sample1.bat"」 それを目視確認できたらEnterキーを押す。これで作業完了。 ↓ (7) あとはメモ帳などのテキストエディタでバッチファイル編集を続行すれば良い。
916 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 16:42:05.37 ID:o8MkOvQJ.net] >>873 おそらく、バッチの情報を1から100まで網羅してるページはネット上には無い。 ここの人たちは現役で使ってた人ばかりだから、習うより慣れろで成長してきた人 今から知りたければ、DOSが現役だった頃の20年〜30年前の参考書を読むといいよ 図書館に行けばいくらでもある。古い本でも内容は全く問題ない。 おもにPC-9801やJ-3100関連だが、コマンドの使い方や自由度については昔も今も変わってない。 会社で98のDOSを使わざるを得ないサラリーマン向けの初心者用書籍が、わかりやすい。 dateコマンドはフォーマットが若干変わったし、formatコマンドとかハードウェア制御系は オプションが全然違うけど、書き方は同じ。そういう差異だけはネットで調べるとよい。
917 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 16:59:28.96 ID:ss8+Q0ea.net] DOSとNT系のコマンドはかなり違ってるから 今だとDOSのは全然参考にならないと思う (重要なforとかsetとか) BATの概要や各コマンドの文法はヘルプを読む コマンドのオプション/?のヘルプでも良いけど、 Windowsのヘルプで概要から全体像を把握したほうがいい 後は、ウェブで探すことになるかな だが、まずは自分のしたいこと、興味のある処理をどうやれば実現できるのか考えて、 googleで検索していき徐々に知識を増やすことになるだろう 読めば全部わかる教科書とかいうものは多分無いだろうしね
918 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 17:06:49.37 ID:M+jB2zw0.net] ビーフ音ってモーみたいな音?
919 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 17:08:36.86 ID:coDtb1o3.net] 裏技みたいなやり方はどうやって習得していったのか気になる
920 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 17:31:38.
] [ここ壊れてます]
921 名前:29 ID:01h1aWf4.net mailto: 1995年以降に発売されたWindowsは大きく分けると、いわゆる9x系(95/98/98SE/Me)とNT系(それ以外の全部)の2種類ある。 その内、NT系は従来のMS-DOSや9x系と異なる部分が多く、例えば エスケープ・シーケンスを利用してテキストをカラフルに装飾する事もできない。 (その代わりNT系にはCOLORコマンドがあるけど用途は異なる) このような事情も、最近のWindowsユーザーが知るのは難しいかもな。 [] [ここ壊れてます]
922 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 17:46:39.61 ID:ss8+Q0ea.net] >>880 ansi.sysの組み込みで使えるようになった奴ね 懐かしい(いろんなプロンプトを作って遊んでた) まあエスケープシーケンスって聞くと印刷で使うものって感じだったけど ところで、windows10 Threshold 2でコマンドプロンプトにANSI/VT100互換表示ができるような記事を読んだ記憶があるんだが 実際のところはどうなのかな
923 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 20:53:22.87 ID:xhE2/Vp0.net] >>879 言えてる、個人的にはここで初めて知った call の使い方 call hoge %%fuga%% みたいなの あとこれもここで覚えた set /p <NUL= と コントロールコードの 0x08 [BS] を組み合わせての進捗表示
924 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 20:57:37.23 ID:ss8+Q0ea.net] DOSだとcallも外部BATファイルしか呼べなかったんだよなあ 式評価はもとより内部ラベルも呼び出せない @echoもこれしかコマンドに@は付けられなかった
925 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 21:16:38.29 ID:ss8+Q0ea.net] こういうのもここで覚えたよ for /f "delims=0" %%I in ('cmd /u /c echo 〇') do set BEL=%%I echo %BEL%
926 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 21:20:50.03 ID:01h1aWf4.net] >>881 www.excite.co.jp/News/it_g/20160210/Slashdot_16_02_09_0639223.html の件については俺も知らん。 何しろ現在まだWin7ユーザーで、Win10は一度も使った事がないからな。 >>883 そういやechoコマンドに@を付けられるようになったのは、MS-DOSのVer.5.0からだったっけ?
927 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 21:24:19.98 ID:coDtb1o3.net] >>884 なんじゃこりゃ 凄い
928 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 21:36:09.67 ID:xhE2/Vp0.net] >>884 すごい、どーいう仕掛け??? コマンドプロンプトのプロパティに「コンソールの新機能の詳細」↓があって https://technet.microsoft.com/en-us/library/mt427362.aspx 読んでコンソールウィンドウの透明度の変更が CTRL+SHIFT+Plus (+) or CTRL+SHIFT+mouse scroll up CTRL+SHIFT+Minus (-) or CTRL+SHIFT+mouse scroll down であることを知ったのはまだいい?として CTRL+F で検索ができるのを初めて知ったよ……
929 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 21:49:56.71 ID:01h1aWf4.net] >>884 おぉ、その方法で環境変数%BEL%にアスキーコード7が1つ格納されるとはな。 だから>>868 と同じ仕組みの事が実現できるわけだ。 >>875 の方法やVBScriptのChr関数をうまく使えない人には、面倒でも利用価値があるかもな。
930 名前:861 mailto:sage [2017/01/29(日) 14:25:18.42 ID:ddwWtq0w.net] >>868 音は鳴りませんでした >>869 できました >>870-871 できませんでした 一瞬起動するのが気持ち悪いですが>>869 で妥協しますありがとうございました
931 名前:デフォルトの名無しさん mailto:sage [2017/02/02(木) 16:41:44.39 ID:2a/0H2Op.net] 教えて欲しいのですが、バッチファイルでhostsファイルを上書きコピーしたり、一部を糀谷したりすることは可能でしょうか? 単純にコピーコマンドではうまく行きません。
932 名前:デフォルトの名無しさん mailto:sage [2017/02/02(木) 23:15:37.
] [ここ壊れてます]
933 名前:79 ID:LhAHr7Zi.net mailto: hostsは普通のテキストファイルだから、へんな制限は無い気がするが。 バッチで全部実装するのが面倒なので俺はAutoHotkeyで整形した後 hostsへ1行ずつ追記してるけど、ちゃんと追記できてるよ [] [ここ壊れてます]
934 名前:デフォルトの名無しさん mailto:sage [2017/02/02(木) 23:27:36.20 ID:rUH8Ic6o.net] 俺はXPなので最近のは知らないけど ユーザー権限の問題なのでは? 問題のファイルはWINDOWS\system32\drivers\etcの下にある ここは一般ユーザー(Power Users,Users)資格では変更・書き込み不可になってるはず
935 名前:デフォルトの名無しさん mailto:sage [2017/02/03(金) 11:18:52.82 ID:qUN7oehH.net] >>880 それはNTだからじゃなくて、cmdだからだよ。
936 名前:デフォルトの名無しさん mailto:sage [2017/02/03(金) 11:32:41.65 ID:PzggaHL+.net] >>893 そりゃそうだけど、BATファイルからしてみれば関係なくね?
937 名前:デフォルトの名無しさん mailto:sage [2017/02/03(金) 23:21:27.20 ID:qUN7oehH.net] >>894 command.com起動すれば従来通り動いたはずだよ。 64bitだと動かないけど。
938 名前:デフォルトの名無しさん mailto:sage [2017/02/06(月) 22:43:42.84 ID:Dm4Nipmb.net] 今更だが、WindowsNT系のイベントログを自動的にテキストファイルへ出力 (エクスポート)する方法としては、PowerShellインストール済の状態で 以下の3行をバッチファイル内で実行するのが俺には一番妥協できそうだ。 powershell.exe -command ("Get-EventLog Application | Export-CSV '%~dpn0_%COMPUTERNAME%_app(%DATE:/=%-%TIME::=%時点)_psh.csv' -Encoding unicode") powershell.exe -command ("Get-EventLog Security | Export-CSV '%~dpn0_%COMPUTERNAME%_sec(%DATE:/=%-%TIME::=%時点)_psh.csv' -Encoding unicode") powershell.exe -command ("Get-EventLog System | Export-CSV '%~dpn0_%COMPUTERNAME%_sys(%DATE:/=%-%TIME::=%時点)_psh.csv' -Encoding unicode") 以下の3行をバッチファイル内で実行する手もあるが、 時間がかかりすぎる上に英語でしか出力されないのが難点。 wmic ntevent where "(logfile='application')" list /format:CSV > "%~dpn0_%COMPUTERNAME%_app(%DATE:/=%-%TIME::=%時点)_wmic.csv" wmic ntevent where "(logfile='security')" list /format:CSV > "%~dpn0_%COMPUTERNAME%_sec(%DATE:/=%-%TIME::=%時点)_wmic.csv" wmic ntevent where "(logfile='system')" list /format:CSV > "%~dpn0_%COMPUTERNAME%_sys(%DATE:/=%-%TIME::=%時点)_wmic.csv"
939 名前:デフォルトの名無しさん mailto:sage [2017/02/07(火) 23:49:52.03 ID:OwFQ4nmk.net] command.comで16bitアプリが動いたらいいのに
940 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 01:50:38.96 ID:QE6/hL5U.net] almond.com command not found.
941 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 07:20:17.84 ID:h1zz+gVt.net] >>896 wevtutil じゃダメなの? https://technet.microsoft.com/ja-jp/library/cc732848(v=ws.10).aspx
942 名前:890 mailto:sage [2017/02/08(水) 16:12:37.67 ID:45vPMFEy.net] >>899 今使ってるWin7 Pro x64マシンは4年以上前に買ったものだが、そのコマンドは初めて知った。 実際やってみると従来より処理結果が見やすい上に速いな。ありがとよ。 wevtutil qe Application /f:text /uni:true > "%~dpn0_%COMPUTERNAME%_app(%DATE:/=%-%TIME::=%時点)_weu.txt" wevtutil qe Security /f:text /uni:true > "%~dpn0_%COMPUTERNAME%_sec(%DATE:/=%-%TIME::=%時点)_weu.txt" wevtutil qe System /f:text /uni:true > "%~dpn0_%COMPUTERNAME%_sys(%DATE:/=%-%TIME::=%時点)_weu.txt"
943 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 04:47:51.68 ID:aywwqEZo.net] %%i(ファイル名)が半角英数、"_" だけで構成されていたらという判定はどうやればいいんでしょうか
944 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 04:56:51.86 ID:wUshnQbT.net] findstr /?
945 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 09:59:50.17 ID:7bSa3oIc.net] >>884 ってなんで?これと関係ある? ash.jp/code/unitbl21.htm > UnicodeのUCS-2の文字コード表は、UTF-16と同じです。 > UTF-16 3007 〇
946 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 12:14:52.43 ID:Q79MmBL5.net] >>903 もう一つ例を出せばはっきりするかな for /f "delims=N" %%I in ('cmd /u /c echo 三') do set TAB=%%I
947 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 14:00:41.73 ID:fyxpm6Tl.net] >>903 その通り。半角文字「0」のアスキーコードを16進数で表すと30で、 BEEP音を出す制御コードのアスキーコードは07だからね。
948 名前:デフォルトの名無しさん mailto:sage [2017/02/18(土) 09:27:34.31 ID:aH8To
] [ここ壊れてます]
949 名前:s2O.net mailto: >>904 ついにその「三」を出したかw [] [ここ壊れてます]
950 名前:デフォルトの名無しさん mailto:sage [2017/02/18(土) 13:52:15.93 ID:8EFqk4IF.net] >>906 三だと、何か、あるんですか? アホなもので、教えてください。
951 名前:デフォルトの名無しさん mailto:sage [2017/02/18(土) 13:58:40.90 ID:np+iCDRO.net] >>907 この(過去)スレで初登場したオリジナルってことかな? コード表を見ればわかるけど使える文字は結構限られてて、この「三」は0x30以外でTABとして使える珍しい部類かな
952 名前:デフォルトの名無しさん mailto:sage [2017/02/18(土) 16:19:49.41 ID:aH8Tos2O.net] >>907 >>903 のURLだと「三」は"4E09"になってるだろ? んで↓のASCIIコード表だと「N」は"4E"だから、「N」で「三」を区切ると"09"つまり「HT(水平タブ)」が残るってこと。 www9.plala.or.jp/sgwr-t/c_sub/ascii.html
953 名前:901 mailto:sage [2017/02/19(日) 13:32:35.73 ID:OLDLML6K.net] >>908 >>909 ありがとうございます。 アホの私に、丁寧な説明、ありがとうございます。
954 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 12:38:49.83 ID:Yd+dsT91.net] 社内のシステム管理者してます。 WSHかpower shellを勉強したいのですが、VBA多少わかるのでWSHがよいかと思ってたのですが、これから勉強するならpower shellのほうが良いのでしょうか?
955 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 12:46:25.36 ID:DNbD6mo9.net] 社によりけりだから会社に聞け
956 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 12:59:56.69 ID:o4bNBCuM.net] 自分はPowerShell好きなので聞かれたら答PSって言っちゃうけど 実際は組合せが必要になる場面もあるだろうしbatも含めて触れやすい所からやって行こう
957 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 13:21:52.61 ID:aGrUDuyU.net] 今後htmlやJavaに関わる可能性があるなら、WSH(JScript)が良いかも
958 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 14:02:23.91 ID:H64DODQY.net] 一通り、全部実用できるように、するしか無いのでは. 得意なものは、一つあるけれども、他のも使えますと言うのが、よろしいかと.
959 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 14:14:39.50 ID:GNpZgzhH.net] 鬼の全パターン回答
960 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 14:19:59.36 ID:aGrUDuyU.net] 最終的にどうするかじゃないだろ 学習する優先順位、つまりまず最初に何から勉強していくのか が問われている
961 名前:鬼? mailto:sage [2017/02/20(月) 15:40:20.74 ID:H64DODQY.net] 鬼? でも、実務上は一通り、できたほうが、よろしいかと。
962 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 18:46:18.21 ID:ybI95Kss.net] 言語の選択もさることながら レジストリ操作が出来ると良いかと キーは同じだけど枝が違うヤツを 変えることもあるので
963 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 20:05:53.47 ID:7yJYF54k.net] >>911 今更 WSH はないだろ PowerShell は癖があるけど慣れれば全然楽だよ
964 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 20:22:08.30 ID:ynZG7eTn.net] まだまだ使える! WSHプログラミング 〜 VBScriptのテストツールの紹介 (1/2):CodeZine(コードジン) ttps://codezine.jp/article/detail/9124
965 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 21:44:53.54 ID:D++FG3XO.net] WSHはファイルに保存しないと実行できないのが致命的。
966 名前:デフォルトの名無しさん mailto:sage [2017/02/21(火) 12:35:55.81 ID:4H0MJuHo.net] .Netがハードル C#使うとか覚えるとかで他でも使うなら良いがPSの為だけに.Net覚えるのはコスパ悪くない?
967 名前:デフォルトの名無しさん mailto:sage [2017/02/21(火) 12:
] [ここ壊れてます]
968 名前:44:43.11 ID:jPlNYKt3.net mailto: C#もひっくるめて、全部マスターが効率いいかも。 [] [ここ壊れてます]
969 名前:デフォルトの名無しさん mailto:sage [2017/02/21(火) 12:45:57.01 ID:BY3mJNCy.net] WSHはBATよりはましだがもう過去のものだし PSはMSが広めようとするも全然使われてないし これやったら絶対いいといった決め手はない 結局はどれに興味がわくかで決めるしかないのが現状
970 名前:デフォルトの名無しさん mailto:sage [2017/02/21(火) 13:05:43.90 ID:jPlNYKt3.net] >>925 結局、一通りマスターするしか、ないのよね。 決定的なもの、ひとつマスターすれば、okとは行かないのが現状。
971 名前:デフォルトの名無しさん mailto:sage [2017/02/21(火) 14:15:03.94 ID:y0kzTLQN.net] >>923 テキスト処理とか WSH でやる程度のことは .NET に頼らなくてもできるよ お陰で -split 演算子と String.Split( ) みたいに似て非なるものが色々できてしまうわけだが...
972 名前:デフォルトの名無しさん [2017/02/22(水) 20:10:23.63 ID:mAYQQSaw.net] Windows7において二つのバッチファイルを同じフォルダ内に作る ・hoge.bat (以下中身) echo これはhoge.batです pause ・hoge(A).bat (以下中身) echo これはhoge(A).batです pause 保存した後おのおののバッチファイルを右クリックして「開く」を実行する。 当たり前だがおのおののecho文の内容が表示される。 ここまではいい。 次にhoge(A).batを右クリックして「管理者として実行」をクリックする。 すると、 「これはhoge.batです」 と表示されるではないか。 末恐ろしい・・・
973 名前:デフォルトの名無しさん mailto:sage [2017/02/22(水) 21:19:44.12 ID:L0zJ8/8i.net] ほえ〜、ファイル名に ( が入っていると「管理者として実行」にしくる場合があるのね hoge.bat を echo,all "%*" echo,0 "%~f0" echo,1 "%~f1" echo,2 "%~f2" echo これはhoge.batです pause hoge(A).bat のファイル名を hoge(A)(S(D).bat にすると最初の ( で分割されてるっぽいのが見て取れる hoge(A).bat の ( の前に1個以上半角or全角スペースを入れてやると、 そのファイル名なら問題ないみたい なんで???
974 名前:デフォルトの名無しさん mailto:sage [2017/02/22(水) 23:00:05.19 ID:mAYQQSaw.net] バグかね?
975 名前:デフォルトの名無しさん mailto:sage [2017/02/22(水) 23:56:41.49 ID:0ijMuyId.net] "("を含むパス上にあるbatファイルを、「管理者として実行」で正常実行できない https://social.msdn.microsoft.com/Forums/ja-JP/43f69d0b-1e8a-457b-8e85-57f4c06f2e56/bat?forum=windowsgeneraldevelopmentissuesja
976 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 00:16:59.94 ID:OmWT2WV6.net] なるほど、batfile とついでに cmdfile も書き換えて....っと レジストリいじると ( で分断されないや、勉強になります
977 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 03:57:43.76 ID:5MDB4WX9.net] WMIC PROCESS GET /FORMAT:LIST | FINDSTR /R "CommandLine= Caption=" > "%~dpn0_%COMPUTERNAME%_プロセス一覧(%DATE:/=%-%TIME::=%時点)_wmic-findstr.log"
978 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 12:05:36.44 ID:OfWDpqOl.net] 条件によって括る括らないとかせずに全部括るようにすれば良かったのにな バッチに限らずWinでのこの引数関係の不具合やハマりは沢山あるが そうしていればほぼ全て解決してただろうに
979 名前:騙し髪 mailto:sage [2017/02/24(金) 02:03:32.35 ID:bJGVi00E.net] これもバクじゃないから困る systeminfo | findstr /i /r /c:"^OS バージョン"
980 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 10:39:00.57 ID:y7jxU5gN.net] >>935 ↓これで妥協するしかないのかな? systeminfo | findstr /i /r "OS" | findstr /i /c:"バージョン"
981 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 11:34:02.28 ID:YZGHPd2K.net] >>935 何でいきがって /r なんて指定してるんだ?
982 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 11:57:48.17 ID:y7jxU5gN.net] >>937
983 名前:findstr /? これの実行結果を読めば分かる。 要はsyteminfoコマンド実行結果の内、「OS バージョン」という文字列が 行頭にある行だけを正規表現で抽出したいというのが>>935 の意図。 実際は以下のように記述するしかない感じだが… systeminfo | findstr /i /r "^OS" | findstr /i /c:"バージョン" ちなみに>>936 は少し記述ミスがあるので無視してほしい。 また、実行結果の表記がverコマンドの場合と少し異なる点にも注目。 [] [ここ壊れてます]
984 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 12:15:58.03 ID:FJeAwGiZ.net] >>936 systeminfo | findstr /b /c:"OS バージョン"
985 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 13:24:30.97 ID:IrOG+H9r.net] もっと困りそうなのが、引数(ファイル名)で使われることが多そうな全角スペースの取扱いだよ。 cmd と エクスプローラーで、半角スペースと同じように扱ったりそうじゃなかったりする。 エクスプローラーからのドロップやタブ補完なんかを行うと、半角スペースとは異なる扱いになるのに、 コマンド実行の際には半角スペースと同様の扱いをして、そのままではパスが通らないことがある。 たとえば、C:\test dir\test.txt (batやexeでもいい) があるとして、カレント・ディレクトリが C:\ の場合、 cd test dir はクォートなしで通るし、 cat test dir\test.txt も普通に実行できるけど、 dir test dir\test.txt は通らない(クォーティングが必要)。 全部クォーティングすれば問題にならないと思われるにも関わらず、 C:\test dir\test space.txt というファイルパス(全角スペースのみならず半角スペースあり)の場合、 エクスプローラーからコマンド・プロンプトへドロップした際、 先の C:\test dir\test.txt はクォーティングされないが、 C:\test dir\test space.txt だと、きちんとクォーティングされる。 色んなパターンが合って、上手く説明できないけど、 補完とかの挙動もおかしかったりするので、ちょっといじってみるとわかってもらえると思う。
986 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 18:08:43.97 ID:S5p8nT+v.net] >>935 負けた気がするけど systeminfo | findstr /i /r /c:"^OS バ..ジョン"
987 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 18:53:46.21 ID:J9Egd7AE.net] パス区切りをバックスラッシュにしたやつ、 円記号とバックスラッシュを同じにしたやつ、 全角スペースをデリミタにしたやつ、 は土下座行脚、いや、焼き土下座行脚すべき
988 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 21:47:48.07 ID:y7jxU5gN.net] >>939 ,941 そちらはどれも正常に機能するんだな。
989 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 22:06:52.03 ID:cAJGTXKH.net] 正規表現で日本語使うのに一々文字コードを確認しなきゃならないってのは大変 MSにはもっとマルチバイト言語圏に気を配って欲しかった
990 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 04:26:31.35 ID:xGmZcvF/.net] systeminfo | findstr /i /r /c:"^OS バ"
991 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 09:03:13.40 ID:5GrbAtXq.net] パスに含まれるスペースも問題を起こすけど、"["と"]"もこれまた厄介だ。
992 名前:デフォルトの名無しさん mailto:sage [2017/02/27(月) 23:58:11.99 ID:WTG5WMst.net] めっちゃスレチだけど、SSDってちょっと前まで寿命が短いって言われてたけど いつの間にかHDDより寿命が長くなってるんだな。びびったわw
993 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 05:48:52.22 ID:AsJGDaOR.net] 新人がバッチファイルに興味を持ったらしく、遅延展開のことを聞いてきたので まずお約束の「SETLOCAL ENABLEDELAYEDEXPANSION」の記述を教えたら それだけでウンザリされたぞ。 「%」ではなく「!」で囲まなきゃならないことを教えたらさらにウンザリされた。 やっぱりとっつきにくいよなあ
994 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 12:07:40.17 ID:e1g5jWjK.net] 他の言語はある程度習得できたけど バッチは何度やっても覚えられない
995 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 12:53:16.16 ID:SJrJxNnQ.net] >>948 > まずお約束の「SETLOCAL ENABLEDELAYEDEXPANSION」の記述を教えたら > それだけでウンザリされたぞ。 俺ならその時点でそんなやる気の
996 名前:ない新人は放置する [] [ここ壊れてます]
997 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 13:11:32.18 ID:ZEta6nTz.net] 確かに、その段階で、うんざりするような人に、 教えたくは無いな。
998 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 14:45:21.65 ID:XTrmDaeR.net] ただただ長ったらしいんだよ SetLocal EnableDelayedExpansion ってすればかなり反応も違ったのかも
999 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 15:21:29.24 ID:XTrmDaeR.net] それと意識の違いがあるかもな C#とかだったらどんなに複雑でも必死で覚えようとするだろうが BATだとまあそこそこ使えりゃいいんだよって感じで片手間の労力しか掛けたくないんだろう 実際使う機会なんて、ifで条件切り分けて起動アプリや引数を変える程度だろう それ以上になるなら、簡易なツールでも作ったほうがいいとなる あとは、何でも質問してくる新人なんて付き合ってられんだろう 学校の延長じゃないんだし、BATに限らず、まずはマニュアルやヘルプやwebで調べて自分で学習することを覚えさせるべき
1000 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 15:25:56.41 ID:TOh8r3Y7.net] 俺としては遅延展開は遅延展開が必要になった状況になって初めて教えた方がいいと思うけど わけがわからんけどとりあえず書いとくおまじないってのプログラム関係の解説に多いけど そういうの本当にうんざりする。 おまじないなんてアホな事書くぐらいならきちんと説明しとけと
1001 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 19:10:44.78 ID:SJrJxNnQ.net] >>953 こういう知ったかにもげんなりする > 実際使う機会なんて、ifで条件切り分けて起動アプリや引数を変える程度だろう そんなものに遅延展開が必要になることはほぼない
1002 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 19:15:14.05 ID:XTrmDaeR.net] >>955 >>952 も言ってるように、遅延展開が必要になった場面で それでも使わなければならないのなら教えればいい 単に勉強として教えても身にはつかない
1003 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 19:16:27.03 ID:XTrmDaeR.net] >>952 は>>954 に訂正
1004 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 19:22:01.47 ID:SJrJxNnQ.net] >>956-957 何で俺にアンカーしてるんだ? >>954 はまあ正しいと思うし本当に必要になったかどうかは >>948 の所の新人に聞かなきゃわからんし
1005 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 20:34:12.60 ID:novnWMTs.net] 長い上に補完効かないからゲンナリしたんだろうと邪推、テンプレート的な何かを 用意してあげればハードル下がるんじゃないですかね? 補完が効くなら大した事じゃないだろうし 内容はたったこれだけだけど、右クリック→新規作成 にバッチファイルの雛形を追加してから随分楽になった>俺 @setlocal @echo off prompt $g title %~n0 cd /d %~dp0 for /f "usebackq delims=" %%i in (``) do ( ) color 07 timeout 6 goto :EOF :adminchk whoami /GROUPS|find "High" 1>nul 2>&1 if errorlevel 1 ( color 4e echo,このバッチファイルは 管理者権限 で実行してください. echo,何かキーを押下するとバッチファイルを終了します. pause 1>nul color 07 exit ) exit/b 今回なら 1行目に enabledelayedexpansion を↓追加したやつで
1006 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 20:35:34.84 ID:novnWMTs.net] うを、「 ↓ 」消し忘れた orz
1007 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 21:10:31.50 ID:9330vN7g.net] @echo offを使うコードは嫌い ちゃんと動けば問題ないが、大抵どこかがおかしいのに自信満々で隠してる
1008 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 21:57:06.50 ID:novnWMTs.net] スタンスの違いですかね、そんな風に考えたこともなかった
1009 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 23:08:51.35 ID:yR2oLnRj.net] 使い道が限られてるし めちゃくちゃ便利って思うバッチの恩
1010 名前:bがないと 覚えるキッカケにならないと思う あとはキッティングとかやらないと必要にならない [] [ここ壊れてます]
1011 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 23:22:58.59 ID:kitmjsdZ.net] >>961 デバッグした後であれば、表示されて煩わしい部分(コメントとか)隠すぶんにはいいんでないの? 何のコマンドを実行しているかは、その説明をechoしたり、echo on を直前に記述したっていいわけだし。
1012 名前:デフォルトの名無しさん mailto:sage [2017/03/02(木) 03:25:05.16 ID:BRCb1ETq.net] @echo on pilder on Mazinger Go @echo off
1013 名前:デフォルトの名無しさん mailto:sage [2017/03/02(木) 05:28:42.72 ID:pdyDswRT.net] @echo off rem title "name" goto :main comment USING: this.bat "hoge" ["foo" ["bar"...]] 何のバッチかとか使い方とか引数や変数の説明 基本的にREMは使わない :mein echo 俺は全部こんな感じ
1014 名前:デフォルトの名無しさん mailto:sage [2017/03/02(木) 11:37:11.71 ID:T2bzQ343.net] シェルスクリプトはタイプ数減らすために逆にエスケープ周りのルールが複雑化して全然生産性上がらないんだよな デバッグもしづらいし その点でVBSは良かった 文法は糞だけど
1015 名前:デフォルトの名無しさん mailto:sage [2017/03/02(木) 17:09:23.49 ID:3Z7pahnd.net] >>966 「:mein」は、「main」?
1016 名前:デフォルトの名無しさん mailto:sage [2017/03/02(木) 17:10:26.85 ID:3Z7pahnd.net] 間違った。 「:mein」は、「:main」? だ。
1017 名前:デフォルトの名無しさん mailto:sage [2017/03/02(木) 18:22:16.37 ID:s+qRP6Bf.net] >>967 複雑? お前さんの知能が足りんだけじゃね? w .cmd のエスケープの方がトリッキーだろ、正式なドキュメントもないし
1018 名前:デフォルトの名無しさん mailto:sage [2017/03/03(金) 05:02:41.69 ID:WTPXL6BV.net] delimsにダブルクォーテーションを使用することは出来ないですか?
1019 名前:デフォルトの名無しさん mailto:sage [2017/03/03(金) 12:31:28.29 ID:1c3U0vHr.net] >>962 エスケープすることで可能(forのオプションは囲むことは必須ではないため) stackoverflow.com/questions/7516064/escaping-double-quote-in-delims-option-of-for-f otnx.jp/CMD/ コマンド別/for/
1020 名前:デフォルトの名無しさん mailto:sage [2017/03/03(金) 12:34:06.93 ID:1c3U0vHr.net] >>971 の間違いだわ、失礼
1021 名前:デフォルトの名無しさん mailto:sage [2017/03/03(金) 13:12:34.59 ID:WTPXL6BV.net] >>972 囲まなくてもよかったんですね。 勉強になりましたありがとうございます。
1022 名前:デフォルトの名無しさん mailto:sage [2017/03/05(日) 12:48:27.31 ID:4ixcbh2y.net] コマンドプロンプト
1023 名前:デフォルトの名無しさん mailto:sage [2017/03/05(日) 12:50:43.60 ID:4ixcbh2y.net] 間違えた、すみません。
1024 名前:デフォルトの名無しさん mailto:sage [2017/03/05(日) 13:58:00.83 ID:7VmbrbTL.net] 半年ROMれ
1025 名前:デフォルトの名無しさん mailto:sage [2017/03/06(月) 09:55:26.77 ID:cTPfG0tg.net] cmd終了のお知らせ 次期大型アップデート、Windows 10 Creators Updateの実像 - PowerShellが標準に、Linux環境も強化したWindows 10 Creators Update:ITpro itpro.nikkeibp.co.jp/atcl/column/17/022400047/030100004/
1026 名前:デフォルトの名無しさん mailto:sage [2017/03/06(月) 19:59:20.47 ID:ZhaNpIEG.net] まじかよ…まぁでもまだいける
1027 名前:デフォルトの名無しさん mailto:sage [2017/03/06(月) 20:25:53.65 ID:ajpZLJux.net] cmd環境はサポート維持が表明されてるから安心して良いよ むしろ危ないのはWSHの方
1028 名前:デフォルトの名無しさん mailto:sage [2017/03/07(火) 10:57:03.69 ID:yt35hC5o.net] >>978 塩田さんの記事か。 少し、ひっかかるものがあるけど。
1029 名前:デフォルトの名無しさん mailto:sage [2017/03/07(火) 11:34:23.30 ID:NGhUJ85m.net] >>980 記事を読む限りはcmd環境も維持されるみたいね なんとなく安心
1030 名前:デフォルトの名無しさん mailto:sage !id:on [2017/03/08(水) 16:42:00.84 ID:yjHW4J+N.net] test
1031 名前:デフォルトの名無しさん mailto:sage !id:off [2017/03/08(水) 16:42:42.42 ID:yjHW4J+N.net] test2
1032 名前:デフォルトの名無しさん mailto:sage:off!id:on [2017/03/08(水) 16:43:19.20 ID:yjHW4J+N.net] test3
1033 名前:デフォルトの名無しさん mailto:sage!id:on [2017/03/08(水) 16:44:30.11 ID:yjHW4J+N.net] test4
1034 名前:デフォルトの名無しさん mailto:sage [2017/03/08(水) 16:44:57.54 ID:yjHW4J+N.net] check.
1035 名前:デフォルトの名無しさん mailto:sage [2017/03/08(水) 20:25:28.66 ID:22c2SBHy.net] del の外にごみ箱送りの削除コマンドを追加して欲しい できるソフトはあるが、内部コマンドで
1036 名前:デフォルトの名無しさん mailto:sage [2017/03/10(金) 20:40:22.23 ID:f4ZS1b20.net] はは
1037 名前:デフォルトの名無しさん mailto:sage [2017/03/10(金) 22:27:00.13 ID:yR7vM1Ks.net] >>989 ひろし、ごはんだよ
1038 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 05:16:21.18 ID:fFh0REPG.net] 落ちる
1039 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 11:23:33.97 ID:0VclosvM.net] 落ちるー。 ミハル
1040 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 13:48:33.39 ID:2LSSeyH1.net] 次スレ 【.cmd】 バッチファイルスクリプト %12 【.bat】 echo.2ch.net/test/read.cgi/tech/1489207631/ あとヨロシク
1041 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 13:55:01.66 ID:+iqzxRFD.net] 落ちゆく、スレにも、幸いあれ。
1042 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 20:19:37.53 ID:+iqzxRFD.net] 今は、落ちゆくスレとても、dat内にて、花さかせん。
1043 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 20:55:16.00 ID:a53QpxuN.net] うめ
1044 名前:デフォルトの名無しさん mailto:sage [2017/03/12(日) 05:37:51.15 ID:59Ox3raF.net] 梅一輪 一輪ほどの あたたかさ 服部嵐雪
1045 名前:デフォルトの名無しさん mailto:sage [2017/03/12(日) 05:51:14.15 ID:FQp4yzuc.net] 梅
1046 名前:デフォルトの名無しさん mailto:sage [2017/03/12(日) 11:27:49.81 ID:1iqHgo3m.net] shutdown /s /f /t 0 ←Windowsを即電源断 shutdown /r /f /t 0 ←Windowsを即再起動(※現在セーフモードならセーフモード,通常モードなら通常モードで再起動)
1047 名前:デフォルトの名無しさん mailto:sage [2017/03/12(日) 11:35:19.11 ID:1iqHgo3m.net] あと6レスで今スレともおさらばか…
1048 名前:デフォルトの名無しさん mailto:sage [2017/03/12(日) 12:15:48.13 ID:eYHcL9Aw.net] 2年かかったな
1049 名前:デフォルトの名無しさん mailto:sage [2017/03/12(日) 13:02:15.60 ID:59Ox3raF.net] 梅の花散らまく惜しみわが園の竹の林に鶯鳴くも 少監阿氏奥島
1050 名前:デフォルトの名無しさん mailto:sage [2017/03/12(日) 18:55:33.66 ID:t+BguLGS.net] 鶯谷の鶯嬢の鳴く声が聞こえてきそうだw
1051 名前:デフォルトの名無しさん mailto:sage [2017/03/12(日) 20:22:26.13 ID:1iqHgo3m.net] さぁ、このスレをシャットダウンしようじゃないか
1052 名前:デフォルトの名無しさん mailto:sage [2017/03/12(日) 20:24:39.74 ID:1iqHgo3m.net] >>993 次スレ乙
1053 名前:デフォルトの名無しさん mailto:sage [2017/03/12(日) 20:54:33.04 ID:1iqHgo3m.net] 1000!
1054 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています