- 1 名前:デフォルトの名無しさん [2010/06/25(金) 20:29:16 ]
- 拡張子が .cmd または .bat のバッチファイルのスクリプティング(プログラミング)に関わる
質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです。 ※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう。 前スレ 【.cmd】 バッチファイルスクリプト %5 【.bat】 pc12.2ch.net/test/read.cgi/tech/1242268171/ 【.cmd】 バッチファイルスクリプト %4 【.bat】 pc12.2ch.net/test/read.cgi/tech/1229955189/ 【.cmd】 バッチファイルスクリプト %3 【.bat】 pc11.2ch.net/test/read.cgi/tech/1217860043/ 【.cmd】 バッチファイルスクリプト %2 【.bat】 pc12.2ch.net/test/read.cgi/tech/1197881068/ 【.cmd】 バッチファイルスクリプト %1 【.bat】 pc11.2ch.net/test/read.cgi/tech/1178281991/
- 29 名前:デフォルトの名無しさん mailto:sage [2010/07/22(木) 03:00:58 ]
- cmd /c echo %date% %time% >> "%~0.log" & start "" yourcommand
- 30 名前:27 [2010/07/22(木) 09:57:25 ]
- >>28-29
ありがたき幸せ あとは余計な秒を削るのを調べてみます yyyy/mm/dd hh:mm:ssにしたいので
- 31 名前:27 [2010/07/22(木) 18:51:07 ]
- >>30の目的が達成できました
バッチスクリプトは奥が深いですね 少し勉強してみます
- 32 名前:27 mailto:sage [2010/07/22(木) 23:29:23 ]
- 連投ですいません
cmd /c echo %date% %time% >> "ログ.txt" これを実行して生成されたファイルを見ると yyyy/mm/dd hh:mm:ss△ と表記されます(△は半角ブランク) この半角ブランクをバッチスクリプト内で外す事が出来ずに悩んでます 何か良い方法がありますでしょうか? また、何故半角ブランクが付加されるのでしょうか?
- 33 名前:デフォルトの名無しさん mailto:sage [2010/07/23(金) 00:25:33 ]
- >>32
cmd /c echo %date% %time%>> "ログ.txt" リダイレクトの直前のスペースを書かない
- 34 名前:デフォルトの名無しさん mailto:sage [2010/07/23(金) 02:44:59 ]
- すいません。誰か教えてください
ドラッグ&ドロップするとファイル名の先頭に「決」をつけるように ren %~f1 決%~n1%~x1 としたんですが、ファイル名に空白があると「コマンドの構文が誤っています」と出ます。 対処法を教えてください。 また複数ファイルドロップに対応する方法はありますでしょうか? よろしくお願いします
- 35 名前:デフォルトの名無しさん mailto:sage [2010/07/23(金) 04:08:22 ]
- for %%a in (%*) do ren "%%a" "決%~n1%~x1"
確認してない
- 36 名前:デフォルトの名無しさん mailto:sage [2010/07/23(金) 06:26:32 ]
- >>35
ありがとうございます。 確認したら出来ませんwwwでしたが、元にして完成しました。 空白もなんとか解決できそうです。
- 37 名前:32 mailto:sage [2010/07/23(金) 07:49:36 ]
- >>33
そんなオチだったとは… ○| ̄|_ ありがとうございました
- 38 名前:デフォルトの名無しさん mailto:sage [2010/07/23(金) 16:38:08 ]
- >>34をcmdのショートカットだけでできますか?
- 39 名前:デフォルトの名無しさん mailto:sage [2010/08/08(日) 04:02:40 ]
- 有効なIPが割り当てられているか否かで処理を分岐したいんですが
ネットワークに接続できている場合変数に0、接続できていない場合変数に1を入れたい場合どうすればよいでしょうか?
- 40 名前:デフォルトの名無しさん mailto:sage [2010/08/08(日) 10:09:32 ]
- >>39
自分自身が持つIPが有効で接続されているかどうかということ? ipconfigでデフォルトゲートウェイのIPアドレスを取得して そこにpingして帰ってきた文字列をfindして分岐かな?
- 41 名前:デフォルトの名無しさん mailto:sage [2010/08/08(日) 10:40:33 ]
- ping後のerrorlevelでええがな
- 42 名前:デフォルトの名無しさん mailto:sage [2010/08/08(日) 11:49:24 ]
- netsh interface <ipv4 or ipv6> show interfaces
netsh interface <ipv4 or ipv6> show ipaddress name=<インデックス or 名前>
- 43 名前:デフォルトの名無しさん mailto:sage [2010/08/09(月) 05:05:09 ]
- >>40
ありがとうございます。 できました この方法で分岐しようと思います。 >>41 ありがとうございます。 その方法だと場合によって無効でもerrorlevelに0が入ってしまうんです・・・。 オプションでできるかもしれませんがわかりませんでした。 >>42 ありがとうございます。 一番スマートそうですが 僕のレベルだと理解できませんでした・・・。
- 44 名前:デフォルトの名無しさん mailto:sage [2010/08/09(月) 16:32:19 ]
- fpcu.on.coocan.jp/dosvcmd/bbs/log/dir/4-0740.html
のようにTESTフォルダ下のフォルダ数を変数に格納したいのですがわかりません お願いします。 for /D %%f in (*) do set /a i=i+1
- 45 名前:デフォルトの名無しさん mailto:sage [2010/08/09(月) 18:29:50 ]
- すまんこ
forのヘルプに書いてあったwww
- 46 名前:デフォルトの名無しさん mailto:sage [2010/08/09(月) 23:03:45 ]
- >>44
解決しました。 CD TEST FOR /F "DELIMS=" %%A IN ('DIR /B ^| FIND /C /V ""') DO SET COUNT=%%A
|

|