_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/


初心者〜管理者まで必読!コマンドライン(DOS Pt.8)
http://pc12.2ch.net/test/read.cgi/win/1243134619/l50
http://hibari.2ch.net/test/read.so/win/1243134619/l50
http://toro.2ch.net/test/read.cgi/win/1243134619/l50
http://peace.2ch.net/test/read.cgi/win/1243134619/l50
2ちゃんねる *掲示板に戻る* 全部 1- 最新50
レス数が1000を超えています. 残念ながら全部は表示しません.
初心者〜管理者まで必読!コマンドライン(DOS Pt.8)

  1 :名無し~3.EXE:2009/05/24(日) 12:10:19 ID:J07+u5Pg
  適材適所で GUI と CUI を組み合わせて, ウマー.
  DOS由来コマンドだけでなく, Windows バージョンアップのたびに拡充されてきたコマンド,
  wsh(cscript), cygwin, Resource Kit, Support Tools, その他のフリーソフト等ふくめ.
  コマンドラインインタフェースに関するネタならなんでもOK.
  質問も歓迎だけど, 自分で調べて勉強する努力も忘れずに.
  前スレ.
  初心者〜管理者まで必読!コマンドライン(DOS Pt.7)
  http://pc12.2ch.net/test/read.cgi/win/1217738171/

  2 :名無し~3.EXE:2009/05/24(日) 12:12:45 ID:J07+u5Pg
  過去スレ.
  1 http://pc.2ch.net/win/kako/1002/10023/1002392089.html
  2 http://pc5.2ch.net/win/kako/1013/10138/1013833995.html
  3 http://pc8.2ch.net/test/read.cgi/win/1062775949/l50
  4 http://pc8.2ch.net/test/read.cgi/win/1116131036/l50
  5 http://pc11.2ch.net/test/read.cgi/win/1152544955/l50
  6 http://pc11.2ch.net/test/read.cgi/win/1176558776/
  7 http://pc12.2ch.net/test/read.cgi/win/1217738171/
  対立状態のスレ.
  [.cmd] バッチファイルスクリプト %5 [.bat]
  http://pc12.2ch.net/test/read.cgi/tech/1242268171/

  3 :名無し~3.EXE:2009/05/26(火) 03:13:24 ID:mD4e5/jg
  srh  ファイル内容検索コマンド.
  http://www.hir-net.com/soft/win/srh.html

  4 :名無し~3.EXE:2009/05/26(火) 03:19:53 ID:OBkD1YXH

  5 :名無し~3.EXE:2009/05/26(火) 08:17:24 ID:u9nnF59y
  NT版UNIX-like tools Version 0.14
  http://www.piedey.co.jp/softs/ntuxtl014.html

  6 :名無し~3.EXE:2009/05/26(火) 08:28:35 ID:25sTC0KO
  >>5
  これとどう違うの.
  http://unxutils.sourceforge.net/

  7 :名無し~3.EXE:2009/05/26(火) 18:56:40 ID:3oDYyUze
  fc/?

  8 :名無し~3.EXE:2009/05/27(水) 17:13:14 ID:IeTG/H22
  findstrやsed, grepなどで \ や " を使いたいのですが,
  表示はできるのに, > fin.txtとリダイレクトすると永遠に処理待ちやエラーになってしまいます.
  |FINDSTR: 開くことができません (fin.txt)
  |grep: >: Invalid argument
  |grep: fin.txt: No such file or directory
  *nixなどのエスケープ文字としての \ と, コマンドプロンプトとは異なるのでしょうか?
  にしても, リダイレクトにするとエラーになるのがイマイチわかりません.
  " を試していた時の hoge.txtは, こんな感じです.
  "hoge"
  "moge"
  moge
  hoge
  [EOF]
  試したコマンドラインは, こんな感じです.
  c:\>grep "hoge\"" hoge.txt > fin.txt
  c:\>grep "hoge\"" hoge.txt > fin.txt
  c:\>grep "hoge\""" hoge.txt > fin.txt
  c:\>grep "hoge^"" hoge.txt > fin.txt
  c:\>grep "hoge^""" hoge.txt > fin.txt
  正しいコマンドラインを教えてください. よろしくお願いします.

  9 :名無し~3.EXE:2009/05/27(水) 17:57:53 ID:bcbvf9/w
  grep hoge^" hoge.txt > fin.txt
  grep ^"hoge\^"^" hoge.txt > fin.txt

  10 :8:2009/05/27(水) 20:38:00 ID:IeTG/H22
  >9
  できました!ありがとうございます.
  コマンドプロンプトのエスケープ文字が ^で, コマンドラインとして与える時には,
  キーワードの対象文字全てに ^しておけばいいんですね!間にスペースを挟む場合も, これでいけました.
  |C:\>grep ^"hoge hoge\^"^" "hoge hoge.txt" > "fin hoge.txt"
  こっちの例ではダメでした. 処理待ちになってしまいます. 動作確認は, XP/Vistaで.
  |c:\>grep hoge^" hoge.txt
  |c:\>grep ^"hoge hoge.txt
  別件.
  move hoge.txt temp
  move moge.txt temp
  (しかも, tempディレクトリを作り忘れたまま)で, やってしまいました.
  コマンドラインだと, 上書き確認されるので, batにも, そのまま書いてたら・・・.
  batの場合は明示的に/-Yつけてないと, 確認無いんですね・・・.
  油断してました. いや, こんなコトに今まで気づかなかった自分が情けない.

  11 :名無し~3.EXE:2009/05/28(木) 14:50:18 ID:rjF1CB1L
  @echo off
  setlocal enableextensions enabledelayedexpansion
  set t=abcdefg
  echo !t:~0, 4!
  if !t:~0, 4!==abcd echo !t:~0, 4!
  実行結果.
  abcd
  4!==abcd の使い方が誤っています.
  何でこうなるのかさっぱり分からないです・・・.
  何か根本的な勘違いをしているのでしょうか?

  12 :名無し~3.EXE:2009/05/28(木) 18:57:28 ID:A/EjCJLr
  一応今の状況を解説すると.
  こんな何時間も誰も相手にしないということは警戒されてる時.
  if "!t:~0, 4!"=="abcd" echo !t:~0, 4!
  でいけるだろ, と書いたら.
  「そうじゃないんですよ, 何でこうなるのかその理由を知りたいんですよ」
  と牙をむいてくってかかってくる危険性が文章に仕掛けられている.
  それでみんな相手にしないと.
  まあそういうこと.
  >>11は直しかたもすべてわかった上でわざと聞いてる, と考えるのが妥当.

  13 :名無し~3.EXE:2009/05/28(木) 19:17:45 ID:U+1mTaXD
  で?どういう意味?
  間違いないの?

  14 :名無し~3.EXE:2009/05/28(木) 19:20:53 ID:A/EjCJLr
  知らんがな.
  勝手に想像すればいいだろ.
  思うのはタダなんだし.

  15 :名無し~3.EXE:2009/05/28(木) 19:46:08 ID:HudDQAtG
  if !t:~0^, 4!==abcd echo !t:~0, 4!

  16 :名無し~3.EXE:2009/05/28(木) 19:57:37 ID:HudDQAtG
  if a;, =a echo a

  17 :名無し~3.EXE:2009/05/28(木) 20:01:15 ID:rjF1CB1L
  >>12
  > 「そうじゃないんですよ, 何でこうなるのかその理由を知りたいんですよ」
  この部分は多分にあるけれど.
  > >>11は直しかたもすべてわかった上でわざと聞いてる, と考えるのが妥当.
  これは無いです.
  >>15で行けるのは分かったがなぜエスケープしなければならないのかが疑問.
  if文でカンマって何を意味するんでしょうか?
  ヘルプにはそれに関することは何も書いてないし・・・.

  18 :名無し~3.EXE:2009/05/28(木) 20:02:37 ID:rjF1CB1L
  ちなみに実際のif文はforの中に書いています.
  結構何度もバッチ書いてるのに今まで引っかからなかったのが疑問な位ですが.

  19 :名無し~3.EXE:2009/05/28(木) 20:05:48 ID:HudDQAtG
  ;, はトークンの区切り文字, スペース, タブと同じ.
  http://it-is-it.net/CMD/%C1%B4%C8%CC/%B9%BD%CA%B8%B2%F2%C0%CF/#content_1_12

  20 :名無し~3.EXE:2009/05/28(木) 21:05:54 ID:rjF1CB1L
  >>19
  ありがたいです.
  結構何年もバッチ書いてて初めて知ったような. w.
  >>12
  さっきは気づきませんでしたが.
  > if "!t:~0, 4!"=="abcd" echo !t:~0, 4!
  これじゃ駄目ですよね.

  21 :名無し~3.EXE:2009/05/28(木) 21:49:39 ID:U+1mTaXD
  いけますがなにか? w.

  22 :名無し~3.EXE:2009/05/28(木) 22:04:10 ID:FXpuass2
  >これじゃ駄目ですよね.
  牙をむいてくってかかってくる.
  はい予言的中. w.
  僕ちゃんなんねんもバッチ書いてまちゅー.
  けど, 出来るかどうか自分では試すことはできません.
                              何年もバッチ書いいてる>>20

  23 :名無し~3.EXE:2009/05/28(木) 23:28:01 ID:3fJykLbj
  >>19に"で区切り文字をエスケープできるって書いてあるだろ.

  24 :名無し~3.EXE:2009/05/29(金) 00:16:02 ID:oLZd7y0B
  >>19に挨拶して黙って消えりゃいいものを.
  ひねくれた根性の悪さが災いして一言反撃してやろうという魂胆が墓穴掘ったな.
  >これじゃ駄目ですよね.
  とうどういうこと.
  パソコン持ってないの?バッチ書いて動かせば1秒で結果でる.
  なぜ他人に質問してるの?2chに投稿してる暇があったら簡単にできる.
  数年のバッチ歴をひけらかす日本を代表するバッチ男なんだろ.
  試してないが「これに書いてるのはどうせ駄目なんだろう」と言う意味か.

  25 :名無し~3.EXE:2009/05/29(金) 00:29:10 ID:oLZd7y0B
  じゃあバッチ野郎のAA頼む[下矢印]

  26 :名無し~3.EXE:2009/05/29(金) 17:22:17 ID:w+z3gxif
  if !t:efg=!==abcd echo !t:efg=!
  if !t:efg^=!==abcd echo !t:efg=!
  if "!t:efg=!"=="abcd" echo !t:efg=!

  27 :名無し~3.EXE:2009/05/31(日) 19:28:11 ID:DR7uDBvl
  for /f "deims=;"  は"で=;をエスケープ.
  for /f deims^=^;  でもおなじ.

  28 :名無し~3.EXE:2009/06/03(水) 02:51:38 ID:ck8yxly5
  日ごとに生成されるログファイル(ファイル名が20090603.log等になってます)を.
  type *.log > hoge.txt
  [上矢印]でhoge.txtににまとめようとすると昇順にまとまりますよね?
  これを降順にhoge.txtにまとめたいのですが, どうも初歩的過ぎるようで参考になる情報がみつかりません.
  どなたか教えてください.

  29 :名無し~3.EXE:2009/06/03(水) 03:00:10 ID:J8ZwyB0P
  dir/?
  for/?

  30 :名無し~3.EXE:2009/06/04(木) 10:52:38 ID:7MAETh4y
  dir /b/on *.log

  31 :名無し~3.EXE:2009/06/06(土) 15:03:51 ID:F7d/m+Rp
  (for /f "delims=" %%I in ('dir /b /o-n *.log') do @type %%I) > hoge.txt

  32 :名無し~3.EXE:2009/06/09(火) 10:59:57 ID:NQrs1Op8
  過去ログの.
  初心者〜管理者まで必読!コマンドライン(DOS Pt.4)
  http://pc8.2ch.net/test/read.cgi/win/1116131036/789
  でarghelperを改造してうpされたarghelper2をお持ちになっている方.
  いらっしゃいましたらどこかにうpしていただけないでしょうか?
  うpされたスレの住人の方なら落とした方もおられると思い.
  書き込ませていただきました.
  よろしくお願いします.

  33 :名無し~3.EXE:2009/06/09(火) 23:39:25 ID:mt6Snbpi
  longparmはどうよ?

  34 :名無し~3.EXE:2009/06/23(火) 16:00:49 ID:ZVBQKxIb
  コマンドプロンプトでプログラムの動作判定をしたいです.
  Operaが終了したらif/else文かなにか(?)で判定してProxomitronを自動終了.
  というような作業をするのが目的です.
  ・・・が, if/else文はファイルしかサポートしてないようなので質問します.

  35 :名無し~3.EXE:2009/06/23(火) 16:25:30 ID:q4qio8Ql
  > if/else文はファイルしかサポートしてないようなので.
  if /?
  どこにファイルだけなんて書いてある?
  そもそもif"だけ"で判断するようなもんじゃないが.

  36 :名無し~3.EXE:2009/06/23(火) 16:40:43 ID:y/3TVaEz
  >>35
  if existのtypoだろ.
  >>34
  for /f ... in ('tasklist /fi ...')

  37 :名無し~3.EXE:2009/06/24(水) 22:29:20 ID:LRPaRqD+
  cmdとPowerShellの中間が10年前に欲しかったよ.
  WSHも使いづれーし意図的にGUI側に誘導しようとして.
  糞なまま放置したとしか思えん.

  38 :名無し~3.EXE:2009/06/24(水) 23:21:28 ID:dzTfVbio
  いや実際その通りだと思うが.

  39 :名無し~3.EXE:2009/07/01(水) 04:30:23 ID:Ld7/kfoM
  ドライブレターがDのパーティションから,
  ドライブレターだけ削除したいのですが,
  どんなコマンドがありますか?
  diskpartのremoveだとリムーバブルドライブしか駄目なようなので困っています.

  40 :名無し~3.EXE:2009/07/01(水) 05:02:58 ID:Ld7/kfoM
  そうでもないな.
  シンプルボリュームでもいけたわ. w.

  41 :名無し~3.EXE:2009/07/13(月) 08:04:47 ID:OPDIBkI8
  バッチファイルのfor文を使うときに, そのdo()の中で制御文--具体的にはif文--を.
  使う方法ってありますか?どうもif文の入れ子の要領でやってもうまくいかないようで.

  42 :名無し~3.EXE:2009/07/13(月) 12:32:50 ID:mAS4nOkY
  普通に出来るが.
  推測するにif文のところが問題なんではなく変数展開の問題と思うが.
  遅延環境変数展開って言葉知ってるか?

  43 :名無し~3.EXE:2009/07/13(月) 14:11:35 ID:OPDIBkI8
  レスありがとうございます.
  >遅延環境変数展開って言葉知ってるか?
  知ってます. でも基本的に駄目なんです, それ使っちゃ. 大体こんな感じです.
  set move_dir=C:\hoge\
  rem パス中やファイル名に!があるかもね.
  if not exist "%move_dir%%~nx1" (
  for /f usebackq^ eol^=^ delims^= %%T in (`dir /b "%~dp1*%~n1*.*"`) do (ここでif
  not exist "%move_dir%%%T"ならmove "%~dp1%%T" "%move_dir%"とかしたい)

  44 :名無し~3.EXE:2009/07/13(月) 14:12:36 ID:OPDIBkI8
  やべ, 最後に)足りてなかった.

  45 :名無し~3.EXE:2009/07/13(月) 19:52:22 ID:bBcl68LQ
  moveはdefaultで上書きしないからifはいらない.

  46 :名無し~3.EXE:2009/07/15(水) 22:24:47 ID:+fkSyIOk
  >>45
  おぉそういえばそうか!とも思ったけど, move以外のコマンドを使う可能性も.
  十分考えられるので, 自分なりにファイルパス中に()や!が含まれるケースの.
  操作方法について考えてみた.
  ------------------------------------------------------------
  set move_dir=C:\hoge\
  for /f usebackq^ eol^=^ delims^= %%T in (`dir /b "%~dp1*%~n1*.*"`) do (
  set target_F=%%T
  set target_P=%~dp1%%T
  call :move_action
  )
  goto :EOF
  :move_action
  if not exist "%move_dir%%target_F%" (
  move "%target_P%" "%move_dir%"
  ) else (
  echo "%move_dir%%target_F%"は既に存在します, 移動取り消し.
  )
  goto :EOF
  ------------------------------------------------------------
  うーん, 前スレの特に後半あたりでよく出てきた用例に触発されて.
  最近callをよく使ったりしてるが, 実に使いやすい・・・.

  47 :名無し~3.EXE:2009/07/16(木) 14:47:32 ID:SRbrJlc8
  set move_dir=C:\hoge\
  for %%I in ("%~dp1*%~n1*.*") do (
  if not exist "%move_dir%%%~nxI" (
  move "%%I" "%move_dir%"
  ) else (
  echo "%move_dir%%%~nxI" は既に存在します, 移動取り消し.
  )
  )
  これじゃ駄目なのか.

  48 :名無し~3.EXE:2009/07/26(日) 10:23:13 ID:2Xdbgl+/
  コマンドラインから自分のグローバルIPを取得する関数はありますか?
  ipconfig ではLAN内のローカルアドレスしか取れないので困ってます.
  できればWindowsネイティブの関数, なければcygwinで使えるものを探しています.

  49 :名無し~3.EXE:2009/07/26(日) 11:38:28 ID:AA+EcTwj
  外にHTTPなりでリクエストを投げてレスポンスに.
  Request-Hostを出してくれるような外部鯖を使わないとまず無理.
  もしくはtracertであたりを付けるか.

  50 :名無し~3.EXE:2009/07/26(日) 18:13:06 ID:gQatFLJI
  >>48
  LAN環境でのグローバルIPはそのPCが持ってるわけじゃないから.
  PCでコマンド打とうが何しようが出て来ないさ.
  グローバルIPを持つのはルータのグローバル側のポートだから.
  Telnetでルータに接続してifconfig叩く位しかない.

  51 :名無し~3.EXE:2009/07/26(日) 19:02:24 ID:uPZ9W1tb
  >>49-50
  残念, ないんですね.
  ありがとうございました.

  52 :名無し~3.EXE:2009/07/30(木) 14:53:18 ID:z5/Qe4zH
  超初心者の俺からの質問です.
  treeやらdirでフォルダを一覧にする際に,
  特定の階層まで(一階層下までなど)で, 出力することはできますか?
  たとえばtreeやると, ずらーーーと何階層も下のフォルダまで表示するじゃないですか.
  それを一階層までにしたいときはなんて入力しますか?
  誰かお願いします.

  53 :名無し~3.EXE:2009/07/30(木) 15:49:53 ID:gsmrRno3
  以下のようなバッチファイルを作ればtreeで一階層だけ出力できると思うが.
  正直お勧めしない.
  @echo off
  for /D %%a in (%1\*) do (
  for /D %%b in (%%a\*) do (
  rd /s /q %%b
  )
  )
  tree %1

  54 :名無し~3.EXE:2009/07/31(金) 02:42:25 ID:fPLWy6Es
  自作自演は正直お勧めしない.

  55 :名無し~3.EXE:2009/07/31(金) 14:22:58 ID:aMNXwXZ0
  ファイルが一つだけ入ったディレクトリ, というものがたくさんあり,
  整頓してファイルをまとめた一つのディレクトリを作りたいと考えています.
  ディレクトリのみを消してファイルを残すというコマンドや方法はあるのでしょうか?

  56 :名無し~3.EXE:2009/07/31(金) 15:39:01 ID:fPLWy6Es
  >ファイルが一つだけ入ったディレクトリ.
  >ディレクトリのみを消してファイルを残す.
  できない.

  57 :名無し~3.EXE:2009/07/31(金) 15:44:11 ID:agFRUhUi
  bashかなんかの環境なら move ./**/* ./
  でエラー吐きながらもやってくれた希ガス.
  今は環境ないからわかんないけども.
  コマンドラインでなくてもいいなら.
  移動とりどりでできる.

  58 :名無し~3.EXE:2009/07/31(金) 17:17:20 ID:fdOz/WAg
  >>55
  発想を変えてWinRARを使ってオプションでフォルダ情報を格納しないにして無圧縮で固める.
  同名ファイルがないという前提だけどな.
  もしくはこんなのとか.
  http://download.goo.ne.jp/software/contents/soft/winnt/util/se475720.html
  http://www.forest.impress.co.jp/article/2009/04/07/okiniiri.html

  59 :名無し~3.EXE:2009/08/03(月) 12:52:09 ID:sXdkUTTq
  あるフォルダに, ・・・[1].jpg という名前のファイルが多数入っていて.
  これらのファイル名から[1]だけを外したいのですが, どうすればいいでしょうか?

  60 :名無し~3.EXE:2009/08/03(月) 13:06:16 ID:cohpzHC7
  位置が固定ならファイル名の3文字飛ばしてリネームが簡単.
  位置が動くとちょっと面倒くさいな.

  61 :名無し~3.EXE:2009/08/03(月) 14:32:01 ID:19p30T4e
  ren ????.* ?.*
  ren ?????.* ??.*
  ren ??????.* ???.*
  ...

  62 :名無し~3.EXE:2009/08/03(月) 16:38:29 ID:sXdkUTTq
  >>60, >>61
  ありがとうございます.

  63 :名無し~3.EXE:2009/08/03(月) 18:06:30 ID:tjheU55c
  FOR /F "tokens=1, 2 delims=[1]" %a IN ('dir /b') Do ren %a[1]%b %a%b

  64 :名無し~3.EXE:2009/08/03(月) 18:18:30 ID:cohpzHC7
  delims=abc は aとbとcを区切り文字にするっていう意味だよ.
  abcという文字列が区切りになるわけじゃない.

  65 :名無し~3.EXE:2009/08/03(月) 19:15:57 ID:19p30T4e
  バッチで.
  FOR /F "delims=" %%a IN ('dir /b') Do (
  set n=%%~na
  call ren "%%~a" "%%n:~0, -3%%%%~xa"
  )

  66 :名無し~3.EXE:2009/08/03(月) 21:00:08 ID:tjheU55c
  >>64
  そうか, すまんかった.
  文字列の置換さえ出来れば[1]を/かなんかにして終わりなんだけど.

  67 :名無し~3.EXE:2009/08/03(月) 23:53:57 ID:sXdkUTTq
  >>65でいけました.
  ありがとうごさいました.

  68 :名無し~3.EXE:2009/08/04(火) 01:48:13 ID:2oemaiCU
  タイムアウトを指定できるPAUSEコマンドのような外部ツールってありませんか.

  69 :名無し~3.EXE:2009/08/04(火) 02:09:19 ID:Xj0rup9j
  >>68
  Vistaならずばりtimeoutってコマンドがあるよ.

  70 :名無し~3.EXE:2009/08/04(火) 08:51:19 ID:bM8zLHQH
  :?7%00%DDPYA44P, 5@P_4?P], }P^5'2PZ-%qPR545PZ5E]1F}5uAP5, ZP]5w9'PU/5zjPRQu
  :Nide/com2txt/X-uw'P'5+~PZ5g(P]-vjPRU-*`P5H9P-E)PZ-KaP5V2P]5hTP5BSPRUVES
  :?[X5;:PZ5WN'PR', ~P/5`QP5Z P-UrPEUQ]EENNNNNN:~
  @echo off
  ( setlocal
  ren %0 %~n0.com
  "%~dpn0.com" 5 5秒PAUSE
  ren "%~dpn0.com" %~nx0
  endlocal )
  :~?aM!3"b3wvD[6%HF"6, IBt<[6j, I%0-2T`$, !tp"MdTpq36%H'LPi[6E%Iu<VPf0eH`!!^
  :H7f-^e0f-Ptv9<\6wH)^-#]wf"-I%^f0f-5nvHrPevpoPKgf-<&^#]%Cf-]$Bf-?^H;f-*

  71 :名無し~3.EXE:2009/08/04(火) 10:13:09 ID:846xHv3P
  コマンドラインを極めるのが時間の無駄だってことがよく分かる流れだな.

  72 :名無し~3.EXE:2009/08/04(火) 21:11:07 ID:D+JSY9pz
  >>71
  日本語でOK.

  73 :名無し~3.EXE:2009/08/04(火) 21:12:06 ID:B0RbKmnK
  わざわざcom2txt使うか?ぼけ.

  74 :名無し~3.EXE:2009/08/04(火) 22:34:54 ID:BsUs7qOy
  >>73
  折角>>70が釣り針垂らしてるのに, それを先に言っちゃ(ry

  75 :名無し~3.EXE:2009/08/05(水) 19:29:52 ID:rdCan5z3
  新出氏も相変わらずなようで.

  76 :名無し~3.EXE:2009/08/13(木) 03:58:40 ID:X1z/qzmZ
  http://syobocal.orz.hm/
  http://tv.goo.ne.jp/index.html
  http://tv.goo.ne.jp/index.html
  http://www.axonpro.sk/japo/info/MS/SBS/
  http://www.findthatfile.com/index.php?q=batch&mediaselect=Z&offset=400
  http://44.130.51.150/obcm/run/dos/timeout/?C=N;O=D
  http://202.50.176.69/1_tools/?C=M;O=A
  http://www.langman.com.tw/My_ICON/Exe_Ico/
  http://home.elka.pw.edu.pl/~gniemiro/stuff/?C=D;O=A
  http://www.siskiyoutech.com/support/utils/fastpush/utils/?C=M;O=A
  http://www.siskiyoutech.com/support/utils/fastpush/utils/TIMEOUT.EXE
  http://sistemas.cacto.com/software/SOFT/xertix/tools/
  http://cd.textfiles.com/hof91/GAME4/?N=D
  http://44.130.51.150/obcm/run/dos/timeout/
  http://202.50.176.69/1_tools/?C=S;O=A
  http://twistedtechie.com/t00lkit/Computer-Repair-Utility-Kit-V2/File%20Management/JkDefrag%20GUI/Programs/
  http://www.siskiyoutech.com/support/utils/fastpush/utils/?C=N;O=D
  http://www.cyf-kr.edu.pl/ftp/softlib/full.html
  http://ftp.back2roots.org/back2roots/cds/faces_of_mars/amiga_demo_collection/t/?C=N;O=D
  http://ftp.back2roots.org/back2roots/cds/faces_of_mars/amiga_demo_collection/t/?C=S;O=D
  http://www.scribd.com/doc/18123121/Windows-XP-Commands
  http://www.scribd.com/doc/3135804/Cac-lenh-trong-RUN
  http://dl2.ezthemes.com/files/g/filesubmitdl2/s/

  77 :名無し~3.EXE:2009/08/13(木) 10:44:15 ID:IWh15qa6
  http://202.50.176.69/1_tools/?C=S;O=A
  http://bt.deathcorp.com/1_tools/?C=M;O=A
  http://cd.textfiles.com/hof91/GAME4/?N=D
  http://dl2.ezthemes.com/files/g/filesubmitdl2/s/
  http://hamilton.nzwireless.org/1_tools/?C=N;O=D
  http://roundcube.bt.net.nz/1_tools/
  http://roundcube.bt.net.nz/1_tools/?C=S;O=D
  http://www.cyf-kr.edu.pl/ftp/softlib/full.html
  http://www.launchpivot.com/vista_command_line_tools.html
  http://www.scribd.com/doc/3135804/Cac-lenh-trong-RUN
  http://www.siskiyoutech.com/support/utils/fastpush/utils/?C=N;O=D
  http://www.vsm.com.au/ftp/

  78 :名無し~3.EXE:2009/08/13(木) 17:48:46 ID:5/7LSkLb
  start /wait rsm.exe refresh /lf"4mm DDS"
  timeout 60
  NTBACKUP BACKUP "@f:\backups\nightly backup.bks" /p "4mm DDS" /J "Nightly
  Backup" /l:s /m normal /HC:ON /UM /V:NO

  79 :名無し~3.EXE:2009/08/13(木) 17:49:38 ID:5/7LSkLb
  secedit /refreshpolicy machine_policy /enforce
  secedit /refreshpolicy user_policy /enforce

  80 :名無し~3.EXE:2009/08/18(火) 11:08:19 ID:a5HtPaWv
  意外と知られていないコマンドプロンプトの便利コマンド一覧 windows - Knowledge Database IT
  http://it.kndb.jp/entry/show/id/810
  Tips for windows operations
  http://www.naruto-u.ac.jp/~ito/tips/windows/win-tips.htm

  81 :名無し~3.EXE:2009/08/26(水) 00:06:27 ID:5EG0if/A
  すみません. お知恵をおかりできませんでしょうか?
  二つのテキストファイル(111.txt, 222.txt)の文字列を比較したいのです.
  111.txt
  -------
  KB0001
  KB0002
  KB0003
  KB0005
  -------
  222.txt
  -------
  KB0002
  KB0006
  --------
  比較した結果は, KB0002のみが抽出されるようにしたいのです.
  222.txtの内容を変数にSETして.
  FORでFCをまわしてやればいいのかとは思うですが・・・.
  すみませんがどうすればいいかアドバイスいただけませんでしょうか?
  テキストファイルの内容を変数にSETする方法だけでもお教え願えませんでしょうか??

  82 :名無し~3.EXE:2009/08/26(水) 00:30:30 ID:M28xOSr4
  for /f %i in ( 222.txt ) do echo %i

  83 :名無し~3.EXE:2009/08/26(水) 01:56:19 ID:5PJ1j7rD
  @echo off
  setlocal enabledelayedexpansion
  for /f %%i in ('"type 111.txt 222.txt|sort"' ) do (
  if "!x!"=="%%i" echo %%i
  set x=%%i
  )

  84 :名無し~3.EXE:2009/08/26(水) 15:35:12 ID:XFFvDMy/
  >>81
  「comm」というUnixコマンド.
  $ comm -12 111.txt 222.txt
  KB0002
  ・・・と思って探したらDOS版は意外に見あたらないな.
  まぁ, Cコンパイラを持ってれば移植は簡単だが.

  85 :名無し~3.EXE:2009/08/26(水) 20:46:36 ID:5PJ1j7rD
  for /f %i in (111.txt 222.txt) do if exist %i (echo %i) else type nul>%i

  86 :名無し~3.EXE:2009/08/27(木) 17:58:35 ID:KS6gWKyN
  findstr /g:222.txt 111.txt

  87 :名無し~3.EXE:2009/08/27(木) 22:17:50 ID:nZe2TznM
  > dir /b sss 2>&1 > NUL
  ファイルが見つかりません.
  標準エラー出力を消すのってこれじゃ駄目なの?
  うまく消えてくれない・・・.

  88 :名無し~3.EXE:2009/08/27(木) 22:33:19 ID:KwULvt6t
  dir /b sss 2>NUL
  でいいんじゃね.

  89 :名無し~3.EXE:2009/08/28(金) 02:38:36 ID:vJQmW7ME
  >>87
  順番逆にすればおk
  dir /b sss >NUL 2>&1

  90 :名無し~3.EXE:2009/08/28(金) 13:06:56 ID:QQt+uO29
  意味ねーだろ.

  91 :名無し~3.EXE:2009/08/28(金) 15:10:06 ID:xNLjfm+n
  >>90
  何この馬鹿. w.

  92 :名無し~3.EXE:2009/08/28(金) 15:20:28 ID:QQt+uO29
  dir /b sss >NUL 2>&1
  にどういう意味があるのか言ってみろよ.
  言えないだろ.

  93 :名無し~3.EXE:2009/08/28(金) 17:38:19 ID:snvKbO6j
  馬鹿が居ますが気にしないでください.

  94 :名無し~3.EXE:2009/08/28(金) 19:10:59 ID:kstOdKCT
  意味があるのは一目瞭然だけど, 理由がわからんな・・・.
  だれかメカニズムを教えてくれ・・・.

  95 :名無し~3.EXE:2009/08/28(金) 19:13:02 ID:QQt+uO29
  見苦しいな.
  正しいのは>>88で, >>89はゴミでした.
  と素直に認めればよいのに.

  96 :名無し~3.EXE:2009/08/28(金) 19:16:39 ID:QQt+uO29
  >は左から評価.

  97 :名無し~3.EXE:2009/08/28(金) 19:27:18 ID:QQt+uO29
  ところで.
  標準エラー出力を消すのは>>88でよいけれど,
  ファイルが見つかりません.
  てーのは標準出力なので, これを消すには.
  dir /b sss >NUL
  ってなるけど, これじゃ意味ねー.
  if exist sss dir /b sss
  みたいにやり方かえたほうがいいんじゃね?

  98 :名無し~3.EXE:2009/08/28(金) 19:35:55 ID:QQt+uO29
  すまん.
  >>97は勘違いだ. 標準エラーだった.

  99 :名無し~3.EXE:2009/08/28(金) 19:52:29 ID:kstOdKCT
  >>96
  もっと根本的?なところで>>87がダメな理由がわかんね.
  標準出力と標準エラー出力の両方消したいときに同じような事やってしまいそうだが.
  素直に 2>nul 1>nul でも俺的にはokなんだけど.

  100 :名無し~3.EXE:2009/08/28(金) 19:55:55 ID:Cn4Wds8n
  1997-0519  DOS窓乗っ取り計画(Win95でunix)
  http://www.ksky.ne.jp/~sakae/daily/1997-0519.html

  101 :名無し~3.EXE:2009/08/28(金) 20:25:58 ID:QQt+uO29
  dir /b sss 2>&1 > NUL
  初期状態1と2はコンソール.
  2>&1 1を2にコピー  結果, 1と2はコンソール.
  >NUL NULをオープンして1に設定  結果, 1はNUL, 2はコンソール.
  dir /b sss >NUL 2>&1
  初期状態1と2はコンソール.
  >NUL NULをオープンして1に設定  結果, 1はNUL, 2はコンソール.
  2>&1 1を2にコピー  結果, 1と2はNUL

  102 :名無し~3.EXE:2009/08/28(金) 20:50:01 ID:kstOdKCT
  >>101
  >>87がダメな理由はわかったような気がするが, 今度はなぜ.
  > dir /b sss >NUL 2>&1
  に意味がないのかわからなくなったぞ.

  103 :名無し~3.EXE:2009/08/28(金) 21:44:03 ID:QQt+uO29
  標準エラー出力を消すのに標準出力まで消してどうする?
  dir /bする意味があるのか?

  104 :名無し~3.EXE:2009/08/28(金) 23:01:24 ID:kstOdKCT
  俺は 2>&1 なんて書いてあるところから最初からそのつもり(出力全部消す)だと思ったが.
  実際に使うコマンドは違っててリダイレクトの例としてdirを使ってるだけだと.
  エラーだけ消したいなら最初から>>88にするのが普通だと思うし.

  105 :名無し~3.EXE:2009/08/29(土) 01:59:19 ID:sLXCWAjJ
  バッチ内でエラーレベル参照するだけなんで標準出力も標準.
  エラー出力もNULにリダイレクトする, ってのはよくやるな.

  106 :名無しさん@そうだ選挙に行こう:2009/08/30(日) 14:51:06 ID:x6Ys1KxG
  出力全部消すつもりならわざわざ/bつけないだろ.

  107 :名無し~3.EXE:2009/09/02(水) 01:14:48 ID:yaL1/tKB
  http://sourceforge.net/projects/unxutils/files/unxutils/current/UnxUtils.zip/download
  これ入れたの忘れてたな.
  commが通るわけだ.

  108 :名無し~3.EXE:2009/09/02(水) 07:44:24 ID:AhwPM1Q7
  UnxUtilsもそろそろバージョンうpしてくれないかな.

  109 :名無し~3.EXE:2009/09/04(金) 17:23:17 ID:cDaJOLt/
  Index of /~piaip/tools/unxutils
  http://www.csie.ntu.edu.tw/~piaip/tools/unxutils/
  Index of /usr/local/wbin
  http://ww-iii.clearancegs.net/usr/local/wbin/
  [chrome] Index of /branches/official/build_149.23/src/third_party/gnu/files
  http://src.chromium.org/viewvc/chrome/branches/official/build_149.23/src/third_party/gnu/files/?pathrev=3803
  comm.exe 一応同じ結果は吐く様だ.

  110 :名無し~3.EXE:2009/09/04(金) 17:28:47 ID:cDaJOLt/
  >>81
  >>84
  Index of /crash/software/hpux/dos/unix_utils/uxutl23
  http://www.macalester.edu/crash/software/hpux/dos/unix_utils/uxutl23/
  DOS版(?)

  111 :名無し~3.EXE:2009/09/04(金) 21:43:34 ID:HWA0i7q+
  Index of /downloads/robocopy/
  http://www.lordgoogle.com/downloads/robocopy/
  Index of /download/Robocopy
  http://valentin-jensen.org/download/Robocopy/

  112 :名無し~3.EXE:2009/09/08(火) 02:39:36 ID:MMsFgnf1
  新規書き込みレスの抽出に活躍中.

  113 :名無し~3.EXE:2009/09/08(火) 19:38:42 ID:KSBFwEbc
  .bat の右クリ-編集のエディタを変更するのってどうやるんですか?

  114 :名無し~3.EXE:2009/09/08(火) 19:54:27 ID:0hbOVmxI
  >>113
  regedit

  115 :名無し~3.EXE:2009/09/12(土) 20:25:36 ID:5/iIMDkS
  move *aaa* ..\aaa\
  のようなコードでディレクトリも移動してくれるやり方教えてください.
  moveだとファイルだけ移動になってしまいます.

  116 :名無し~3.EXE:2009/09/13(日) 00:50:36 ID:GSibjpcz
  for /D %M in (*aaa*) do move %M ..\aaa\

  117 :名無し~3.EXE:2009/09/16(水) 09:41:51 ID:hoEOBMLO
  current directory nameを取得したいけどこの場合forかなぁ.
  c:\foo\bar\hoge\hage
  上で実行すると.
  hage
  を返す.

  118 :名無し~3.EXE:2009/09/16(水) 11:39:46 ID:Md0yTjnn
  %cd%じゃいかんの?

  119 :名無し~3.EXE:2009/09/16(水) 12:51:50 ID:O8adoxSh
  forかcallだけど, forです.

  120 :名無し~3.EXE:2009/09/17(木) 09:04:22 ID:Fa/jQWSl
  カレントディレクトリ名を取得する4つの方法 - SourceForge.JP Magazine
  http://sourceforge.jp/magazine/07/11/19/0147208/2
  カレントディレクトリ名を取得する4つの方法 - SourceForge.JP Magazine
  http://sourceforge.jp/magazine/07/11/19/0147208
  Helix Melody:カレントディレクトリのディレクトリ名を取得 - livedoor Blog(ブログ)
  http://blog.livedoor.jp/hijacker777/archives/1114545.html

  121 :名無し~3.EXE:2009/09/17(木) 09:47:58 ID:IglDsg0r
  FOR /f "DELIMS=" %A IN ('basename %cd%') Do SET cdname=%A

  122 :名無し~3.EXE:2009/09/17(木) 09:56:52 ID:IglDsg0r
  Windows上で動作するUNIX系コマンドラインツールの比較 - Computer
  http://rally.jp/comp/archives/2009/08/windowsunix.php
  インストール: NT版UNIX-like tools 0.14 - Computer
  http://rally.jp/comp/archives/2009/08/_ntunixlike_tools_014.php

  123 :名無し~3.EXE:2009/09/17(木) 13:56:26 ID:nFNv/FXO
  FOR /f "DELIMS=\" %A IN ("%cd%") Do SET cdname=%A

  124 :名無し~3.EXE:2009/09/17(木) 14:00:38 ID:nFNv/FXO
  FOR %A IN ("%cd:\=" "%") Do SET cdname=%A

  125 :名無し~3.EXE:2009/09/17(木) 14:26:06 ID:XYbO697w
  for %d in ("%CD%") do set cdnamne=%~nd

  126 :名無し~3.EXE:2009/09/17(木) 16:57:31 ID:SfXagdty
  T:\JKY\PC等>FOR /f %A IN ('cd') Do echo %A
  T:\JKY\PC等>echo T:\JKY\PC等.
  T:\JKY\PC等>FOR /f %A IN ('echo %cd%') Do echo %A
  T:\JKY\PC等>echo T:\JKY\P
  下の書き方だと先頭一文字しか取得できないんだよな.

  127 :名無し~3.EXE:2009/09/17(木) 18:55:42 ID:+VEhY7Lp
  %cd:\=&set cdname=%

  128 :名無し~3.EXE:2009/09/19(土) 02:11:40 ID:JMO0vA73
  ふりがながいなぁ.

  129 :名無し~3.EXE:2009/09/24(木) 17:26:20 ID:v23KGSU/
  http://www.z4x.com/tools/

  130 :名無し~3.EXE:2009/09/25(金) 16:13:40 ID:MVXvOquX
  findコマンドとリダイレクトを使って, テキスト中に特定の文字列が見つかった時だけ.
  ログファイルを出力するといったことをしようと思ったのですが, findによる出力は.
  該当する検索結果が無くとも改行とファイルへのパスの二行が強制的に表示されるので, 単純に.
  FIND "検索文字列" ファイルパス>>hoge.log
  ではうまくいきませんでした. XP標準のコマンドだけで実現する方法ありますか?

  131 :名無し~3.EXE:2009/09/25(金) 16:46:42 ID:WpmJGqgl
  >>130
  findstr

  132 :名無し~3.EXE:2009/09/25(金) 18:14:13 ID:MVXvOquX
  >>131
  ありがとうございます!

  133 :名無し~3.EXE:2009/09/25(金) 19:05:46 ID:rKkYwStT
  FIND "検索文字列" <ファイルパス>>hoge.log

  134 :名無し~3.EXE:2009/09/28(月) 21:51:40 ID:npGXueZv
  GETCLIPBOARD 環境変数名 または /F[:]ファイル名 または /B[:]ファイル名.
  クリップボードに有効なデータがない場合環境変数は空になります(削除されます).
  環境変数の代わりに/Fまたは/Bオプションを指定してファイルにクリップボードの.
  内容を受け取ることもできます.
  /F を指定時はテキストファイル, /B を指定時はビットマップファイルの指定になります.
  クリップボードの内容を受け取れなかった場合, ファイルは元の状態のままになります.
  /F を指定時にファイル名の先頭を '+' にすると指定のファイルに追加します.

  135 :名無し~3.EXE:2009/09/29(火) 01:18:09 ID:U8qAWnad
  comdel command
  標準入力またはテキストファイルの既出行の出力を抑止しながら標準出力するコマンドラインツール.
  comdel command フリーソフト(無料ソフト)&シェアウェア - goo ダウンロード.
  http://download.goo.ne.jp/software/contents/soft/winnt/util/se347533.html

  136 :名無し~3.EXE:2009/09/29(火) 19:34:02 ID:eJMIO/Ht
  Vector:t_fclip (Windows95/98/Me / ユーティリティ) - ソフトの詳細.
  http://rd.vector.co.jp/soft/win95/util/se122707.html
  最強クリップボード拡張ソフトはこれだ!@OURS-2ch過去ログ倉庫.
  http://2ch.ac.la/read.php/win/1006803665/l100

  137 :名無し~3.EXE:2009/09/29(火) 20:59:26 ID:eJMIO/Ht
  コマンドプロンプト.

  138 :名無し~3.EXE:2009/09/30(水) 04:21:04 ID:VE3quA4g
  cliputil
  http://www.tsg.ne.jp/GANA/S/cliputil/index.html
  spawn
  http://www.longtail.co.jp/pck/main/spawn.htm
  Longtail: PCK
  http://www.longtail.co.jp/pck/

  139 :名無し~3.EXE:2009/10/04(日) 14:42:46 ID:11/jS/g3
  何をやっているのかね.

  140 :名無し~3.EXE:2009/10/05(月) 03:46:16 ID:XbaU7t3J

  141 :名無し~3.EXE:2009/10/05(月) 05:08:26 ID:K8SsroZU
  保守をやっているのかね.

  142 :名無し~3.EXE:2009/10/05(月) 09:48:02 ID:GyCNc+hD
  暇つぶしだお.

  143 :名無し~3.EXE:2009/10/05(月) 15:24:55 ID:wWgyyEfr
  コマンド別/for - CMD.EXE TIPs
  http://it-is-it.net/CMD/%A5%B3%A5%DE%A5%F3%A5%C9%CA%CC/for/#yb6719d7
  機能別/日時を得る - CMD.EXE TIPs
  http://it-is-it.net/CMD/%B5%A1%C7%BD%CA%CC/%C6%FC%BB%FE%A4%F2%C6%C0%A4%EB/
  [NT系]文字列の切り出しにFOR /F "delims="を使ってみたがうまくいかない (DOSプロンプト活用相談室LOG)
  http://www.fpcu.jp/dosvcmd/bbs/log/cat3/set_path/3-0350.html

  144 :名無し~3.EXE:2009/10/05(月) 18:04:50 ID:hOdwv/2r
  この手のリンクはすぐいなくなるので, 無断転載しろ.

  145 :名無し~3.EXE:2009/10/05(月) 19:24:49 ID:u43Omwc0
  >>143
  > [NT系]文字列の切り出しにFOR /F "delims="を使ってみたがうまくいかない (DOSプロンプト活用相談室LOG)
  waybackにあったんで見たが,
  "delims=abcde" でabcdeの文字列で切れると勘違いしたパターン. 話になんね.

  146 :名無し~3.EXE:2009/10/06(火) 18:11:02 ID:JNQhXxcC
  Win95時代でもBUなしではきつかった.

  147 :名無し~3.EXE:2009/10/07(水) 02:17:31 ID:/ml1tCff
  妹のパンティ.
  http://love6.2ch.net/test/read.cgi/out/1253460974/106
  106 :底名無し沼さん[sage]:2009/10/07(水) 00:22:13
  NewsVoter: Windows WIN32 fsutil.exe
  http://www.newsvoter.com/Binary/dll/fsutil-exe-imports-exports-dependents.html
  http://www.tbsradio.jp/kirakira/photo/CIMG2412.JPG
  ニュースステーションのころからこんなもんです.
  http://homepage1.nifty.com/yukarino/mari/koudou/mari2.html
  参照.
  http://www29.atwiki.jp/lovepluswiki/pages/41.html
  Index of /~piaip/tools/unxutils
  http://www.csie.ntu.edu.tw/~piaip/tools/unxutils/
  Index of /archives/pc/forest/d/dotfighters
  http://ring.nict.go.jp/archives/pc/forest/d/dotfighters/
  http://www.uty.co.jp/anaroom/maya.htm
  花王「エコナ」特保取り消しも  消費者庁政務官.
  http://www.47news.jp/CN/200910/CN2009100601000797.html
  Index of /SymServe/fsutil.exe/3B7D836E10000
  http://www.alexander.com/SymServe/fsutil.exe/3B7D836E10000/
  [特集]コマンドで操るWindows XP  -  CUIのアドバンテージを堪能しよう (8) コマンドラインツールでWindows
  XPをメンテナンス(3) 「fsutil」を使いこなす | パソコン | マイコミジャーナル.
  http://journal.mycom.co.jp/special/2002/xpcommand/007.html

  148 :名無し~3.EXE:2009/10/10(土) 01:20:45 ID:dCE7LTzz
  32 ビット版 Debugging Tools for Windows のインストール.
  http://www.microsoft.com/japan/whdc/devtools/debugging/installx86.mspx
  Windows Script Programming: Windows 2000 Support
  Toolsのtlist.exeとkill.exeのダウンロード元.
  http://scripting.cocolog-nifty.com/blog/2007/12/windows_2000_su_4d62.html
  Vector:ダウンロード Windows > ユーティリティ > タスク制御.
  http://www.vector.co.jp/vpack/filearea/win/util/task/by_date.html

  149 :名無し~3.EXE:2009/10/12(月) 02:21:05 ID:yYYO39+F
  T:\>TLIST -?
  Microsoft (R) Windows NT (TM) Version 5.1 TLIST
  Copyright (c) Microsoft Corporation. All rights reserved.
  usage: TLIST <<-m <pattern>> | <-t> | <pid> | <pattern> | <-p <processname>>>
  | <-k> |
  <-s>
  [options]:
  -t
  Print Task Tree
  <pid>
  List module information for this task.
  <pattern>
  The pattern can be a complete task
  name or a regular expression pattern
  to use as a match. Tlist matches the
  supplied pattern against the task names
  and the window titles.
  -c
  Show command lines for each process
  -e
  Show session IDs for each process
  -g
  Show group affinity for each process (Win7+)

  150 :名無し~3.EXE:2009/10/13(火) 22:32:33 ID:cfc1h0wS
  D:\homo>TLIST|DKERRLVL FINDSTR ワードパッド.
  2128 wordpad.exe ドキュメント - ワードパッド.
  errorlevel=0
  D:\homo>TLIST|DKERRLVL FINDSTR ワードパッド.
  errorlevel=1
  D:\homo>cgrep p:// *.htm*|sed -f c:\bin\uty\urle.sed|sort|uniq|tee _|tclip

  151 :名無し~3.EXE:2009/10/16(金) 20:28:30 ID:J+lhIHta
  バッチで時刻関係の操作.
  http://homepage1.nifty.com/jak/batch/time.html#3
  timeitコマンドでアプリケーションの実行時間を測定する - @IT
  http://www.atmarkit.co.jp/fwin2k/win2ktips/422timecmd/timecmd.html
  バッチ・ファイル中で日付をファイル名に使用する - @IT
  http://www.atmarkit.co.jp/fwin2k/win2ktips/419batchdate/batchdate.html
  MASATOの開発日記: WindowsのBATファイルで日付と時刻を扱う方法.
  http://www.sutosoft.com/room/archives/000368.html
  MS-DOSコマンドプロンプトTips - Programming/Tips - 総武ソフトウェア推進所.
  http://smdn.invisiblefulmoon.net/programming/tips/msdos_cmd_tips/
  コマンドプロンプトで実行したexeの戻り値の取得 - 質問・相談ならMSN相談箱.
  http://questionbox.jp.msn.com/qa1569659.html
  Oracle Technology Network (OTN) Japan - 掲示板 : コマンドプロンプトでSQLローダー実行 ...
  http://otn.oracle.co.jp/forum/thread.jspa?threadID=35000597&tstart=45
  現在時刻を取得してファイル名にする - 教えて!goo
  http://oshiete1.goo.ne.jp/qa613130.html
  南アラバ公国: コマンドプロンプト.
  http://margrave.seesaa.net/category/5158432-1.html

  152 :名無し~3.EXE:2009/10/18(日) 01:03:58 ID:DCwe79Nk
  Azuki の使い方 http://azuki.sourceforge.jp/usage.html
  C# for ObjectARX2005 http://yayoi3gatsu.sakura.ne.jp/rd.cgi?f=arx_cs01
  Console倶楽部 - Windowsでもコンソールを使おう http://console.fc2web.com/
  DOSコマンドでファイルのショートカットを作る方法 -OKWave http://okwave.jp/qa1958725.html
  LBE 開発日誌 http://www.lambdapage.org/lbe/diary02.html
  MSBuildを活用して開発時の作業を自動化する(2/3):CodeZine
  http://codezine.jp/article/detail/674?p=2
  N.Yamazaki's blog | AquesTalk http://blog-yama.a-quest.com/?cid=18986&page=1
  NTseverを活用しよう http://www.johoka.net/ntserver.htm
  PICプログラマに求められる機能とは:52回の週末 http://quickturn.livedoor.biz/archives/50872956.html
  TextPad: C#を始める http://japan.textpad.com/support/faq/csharp.html
  Trend Micro ダメージクリーンアップ サービスとの CSC SSM の使用.
  http://www.cisco.com/japanese/warp/public/3/jp/service/manual_j/sec/asa/ssmag2/appendixC/13472_03_appendixc.pdf
  UNIXのLNのようにショートカットを作成するコマンドは? (DOS ...
  http://www.fpcu.jp/dosvcmd/bbs/log/unixdoswindows/1-0513.html

  153 :名無し~3.EXE:2009/10/19(月) 01:24:53 ID:djEqEQDG
  Vistaの同期センター活用法 - PukiWiki
  http://www.orient-cucumis.net/wiki/index.php?Vista%A4%CE%C6%B1%B4%FC%A5%BB%A5%F3%A5%BF%A1%BC%B3%E8%CD%D1%CB%A1
  Web ChangeLog: MSH: Using MshSnapIn
  http://oka326.blogspot.com/2006/01/msh-using-mshsnapin.html
  Windows - BlueSkyNet http://blueskynet.if.land.to/wiki.cgi?page=Windows
  Windows Form GUIアプリケーションを記述するための最新の ...
  http://ascii.asciimw.jp/pb/msdn/article/a12_0014.html
  Windows Media Player コンポーネント覚え書き(1)
  http://www11.ocn.ne.jp/~ikalu/fc2page/fc2wmp001.html
  Windows Script Programming: コマンドラインでショートカットを作成する.
  http://scripting.cocolog-nifty.com/blog/2007/02/post_3fde.html
  YouTube
  http://www.youtube.com/results?hl=ja&lr=lang_ja&num=30&q=CSC%E3%81%AF%E3%82%B7%E3%83%A7%E3%83%BC%E3%83%88%E3%82%AB%E3%83%83%E3%83%88%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89&um=1&ie=UTF-8&sa=N&tab=w1&gl=JP
  「.NET Framework SDK」を含むブログ - はてなキーワード.
  http://k.hatena.ne.jp/keywordblog/.NET%20Framework%20SDK
  @IT:.NET実践プログラミング .NETでカスタム・プラグインを開発 ...
  http://www.atmarkit.co.jp/fdotnet/practprog/01deskbar/deskbar_03.html
  きたかぜさんち http://crow.whitesnow.jp/tips/tips_02.html
  まどこまんど http://toll.hp.infoseek.co.jp/sof/wcom.htm
  エクセルVBAでテキストファイル(バッチファイルの作成) - 教えて!goo
http://oshiete1.goo.ne.jp/qa2388033.html
  エクセルVBAでテキストファイル(バッチファイルの作成) - 質問・相談 ...
  http://questionbox.jp.msn.com/qa2388033.html
  コマンド プロンプトを開く - uguuの日記 http://d.hatena.ne.jp/uguu/20061031/1162271962
  コマンド ラインの指定 http://msdn.microsoft.com/ja-jp/library/78f4aasd(VS.80).aspx
  チュートリアル : 起動可能な Windows PE RAM ディスクを UFD に作成する.
  http://technet.microsoft.com/ja-jp/library/cc766092(WS.10).aspx
  プログラムの作成・実行(C# によるプログラミング入門) http://ufcpp.jp/study/csharp/st_compile.html

  154 :名無し~3.EXE:2009/10/20(火) 10:19:18 ID:4ZVv/YYH
  PsTools.zip
  http://www.z4x.com/tools/PsTools.zip

  155 :名無し~3.EXE:2009/10/20(火) 22:58:07 ID:wbDO97X2
  本家sysinternalsから落とせるじゃん.

  156 :名無し~3.EXE:2009/11/14(土) 22:58:43 ID:uA6JTFnR
  bashのエイリアスみたいな機能はありますか?

  157 :名無し~3.EXE:2009/11/14(土) 23:06:34 ID:uA6JTFnR
  事故解決しました. すみません.

  158 :名無し~3.EXE:2009/11/18(水) 02:27:53 ID:97JQYixr
  コマンドプロンプトを実行した時, 最初にどのパスにいくのか設定する事って出来ますか?

  159 :名無し~3.EXE:2009/11/18(水) 02:35:37 ID:frEMkiOA
  >>158
  cmdへのショートカットを作る.
  右クリック  プロパティで作業フォルダのところに.
  好きなパスを書け.

  160 :名無し~3.EXE:2009/11/18(水) 22:13:17 ID:tZlNWGJP
  このスレもすっかりさびれたな.

  161 :名無し~3.EXE:2009/11/18(水) 23:01:56 ID:frEMkiOA
  >>160
  Windows PowerShellが出来てwindows7のコマンドラインがほとんど変わってない所を見ると.
  もう放棄されたといっても過言じゃない状況だからだと思う.
  こっちは単発の質疑応答のみでいいんじゃないの.

  162 :名無し~3.EXE:2009/11/19(木) 15:21:14 ID:7DXVCfhu
  xpにはあったヘルプファイルがvistaでなくなったのは責任放棄だろ.

  163 :名無し~3.EXE:2009/11/21(土) 00:42:40 ID:ODpYiLXj
  なくなったけど, MSが配ってる奴使えばまだ使えるでそ.

  164 :名無し~3.EXE:2009/11/21(土) 14:27:53 ID:wxl80pPx
  もう目新しい話なんてないからな.
  ぐぐればそこらに転がってるからわざわざ聞くまでもないし.

  165 :名無し~3.EXE:2009/11/22(日) 15:06:58 ID:+yxwUHDq
  SET OLDPATH=%PATH%
  PATH=(1.);%PATH%
  SET LIBRARY_PATH=(2.)
  [上矢印]これにはどんな意味があるのでしょうか?
  バッチコマンドなど調べたのですが結局分からず.

  166 :名無し~3.EXE:2009/11/22(日) 16:22:52 ID:W+j5c9sh
  どんな意味って環境変数PATHの意味がわからんってこと?

  167 :名無し~3.EXE:2009/11/22(日) 16:54:22 ID:ra6Q8ywR
  >>165
  1行目 「OLDPATH」と名づけた変数に現在の環境変数の値を入力する.
  2行目 現在の環境変数に(1.)という値(新たなパス)と既存の環境変数の値を入力する.
            ->要するに既存の環境変数に(1.)という新たなパスを追加してる.
  3行目 「LIBRARY_PATH」と名づけた変数に(2.)という値を入力する.
  この3行の中では(1.), (2.)の値が出てきていないし.
  「OLDPATH」 「LIBRARY_PATH」といった変数も値をセットするだけで何も使っていない.
  何がやりたいのかは前後関係を知らないとわからんよ.

  168 :名無し~3.EXE:2009/11/22(日) 16:55:47 ID:ySE6LLmg
  賢い人達キタ------!!
  コンピューターの言語だろうか位しか分からん. w.

  169 :名無し~3.EXE:2009/11/22(日) 16:56:29 ID:ySE6LLmg
  あ, 誤爆ったwww忘れて. w.

  170 :名無し~3.EXE:2009/11/22(日) 20:17:25 ID:s+B81oCe
  2行目がSETコマンドじゃなくてPATHコマンドなのがこのお題のミソだな.
  =はファイル名としても使えるのにここではコマンドセパレーターとして働いている.
  その混沌っぷりがさらに話題を広げるのであった.

  171 :名無し~3.EXE:2009/11/22(日) 20:28:10 ID:+yxwUHDq
  >>167, 170
  ありがとうございました.
  とあるバッチファイルの中身です.
  これを実行する事で, そのウインドウでのみ(1.)にあるものを使えるようになるのですが.
  環境変数を書き変えて, その手間を省けないのかなと思い, 質問しました.

  172 :名無し~3.EXE:2009/11/22(日) 22:04:49 ID:mndxsipb
  飢えたライオンに餌まく質問者.

  173 :名無し~3.EXE:2009/11/22(日) 22:05:43 ID:mndxsipb
  それに飛びつくライオン.
  ライオンさん一言どうぞ.
  [下矢印]

  174 :名無し~3.EXE:2009/11/22(日) 22:53:45 ID:se2vb0Wd
  あぁん.

  175 :名無し~3.EXE:2009/11/23(月) 19:23:48 ID:s/idSSMb
  コードページが437の状態でコマンドを実行させたいのですが.
  cmd /c chcp 437&dir    <可能な限り1行で起動したい.
  とかやってもdirが実行されるコードページが変更されていません.
  コマンドプロンプトからの場合はコードページ変更が行われるようですが.
  「ファイル名を指定して実行」から実行した場合(CreateProcessによる起動?)に.
  コードページの変更が行われないようです.
  コマンドプロンプトからの実行でなくてもコードページを変更して実行する方法が.
  あったら教えてください.
  よろしくお願いします.

  176 :名無し~3.EXE:2009/11/24(火) 15:32:18 ID:F4p8x8VG
  cmd /c cmd /c chcp 437&dir

  177 :名無し~3.EXE:2009/11/24(火) 22:20:33 ID:F4p8x8VG
  cmd /c chcp 437&cmd /c dir

  178 :名無し~3.EXE:2009/11/24(火) 23:10:13 ID:USGr7+m9
  現実世界から二次元世界へと戻るコマンドを教えてください.

  179 :名無し~3.EXE:2009/11/25(水) 01:18:05 ID:YdDbxgd2
  残念! コマンドラインは一次元の世界だ.

  180 :名無し~3.EXE:2009/11/28(土) 20:49:03 ID:fHqQVsd/
  ヘルプファイル見るより検索した方が早い気が.
  ここで知ったか振るという手もあるけど. w.
  コマンドラインごみ箱ツール「GB」1.0.1

  181 :名無し~3.EXE:2009/12/02(水) 09:52:53 ID:RwfNPXz0
  DOSっていうかバッチファイルすごいね.
  レジストリ設定ファイルを作るバッチで小技が効いてる.
  ブラウザで開く代わりにインターネットショートカットを作成するというものなんだけど.
  出来立てほやほや置いときますね.
  -- MakeDefaultBrowserSetReg.bat --
  rem host\MakeInternetShortcut.batをデフォルトのブラウザに設定するレジストリファイルを作成します.
  rem パス名の\を\\に置換.
  set VMWInterAppPath=%~dp0host\MakeInternetShortcut.bat
  set VMWInterAppPath=%VMWInterAppPath:\=\\%
  rem レジストリファイル.
  echo Windows Registry Editor Version 5.00 > SetDefaultB.reg
  echo. >> SetDefaultB.reg
  echo [HKEY_CLASSES_ROOT\ftp\shell\open\command] >> SetDefaultB.reg
  echo @="\"%VMWInterAppPath%\" \"%%1\"" >> SetDefaultB.reg
  echo. >> SetDefaultB.reg
  echo [HKEY_CLASSES_ROOT\HTTP\shell\open\command] >> SetDefaultB.reg
  echo @="\"%VMWInterAppPath%\" \"%%1\"" >> SetDefaultB.reg
  echo. >> SetDefaultB.reg
  echo [HKEY_CLASSES_ROOT\https\shell\open\command] >> SetDefaultB.reg
  echo @="\"%VMWInterAppPath%\" \"%%1\"" >> SetDefaultB.reg
  set VMWInterAppPath=
  -- host\MakeInternetShortcut.bat --
  rem ショートカットの作成.
  echo [DEFAULT] > ..\OpenURL.lnk
  echo BASEURL=%1 >> ..\OpenURL.lnk
  echo [InternetShortcut] >> ..\OpenURL.lnk
  echo URL=%1 >> ..\OpenURL.lnk

  182 :名無し~3.EXE:2009/12/02(水) 12:29:50 ID:6qx8dZPq
  拡張子はurlだろが. 死ねよ.

  183 :名無し~3.EXE:2009/12/02(水) 12:46:35 ID:RwfNPXz0
  そうそう.
  URLでした.
  あと, カレントディレクトリをファイルのあるディレクトリを基準に考えてましたが間違っていました.
  ファイルパスにはすべて%~dp0をつけて「%~dp0..\Open.url」とかにしないと駄目でした.
  普通の実行ファイルだとたいてい実行ファイルのある場所がカレントディレクトリになってるからそのつもりで作っちゃった.
  テストで実行するときはエクスプローラーで実行したけど, そんときはその場所がカレントになるから気がつかなかった.

  184 :名無し~3.EXE:2009/12/03(木) 23:27:07 ID:PE65EMUZ
  >reg query "HKEY_LOCAL_MACHINE\SOFTWARE\VMware, Inc.\VMware Tools" /v
  InstallPath | for /f %P in ('find "InstallPath"') do set VMW-IPTEMP=%P
  Toolsがインストールされたパスをレジストリから取得し, 環境変数に入れたかったんだけど, 無理なのかな.
  FINDの結果を一旦ファイルに出力して set /p path=<ファイル名 で実現はできたんだけど,
  最初に書いたコマンドの結果は set VMW-IPTEMP=InstallPath となり, スペースで区切られたところまでしか取得できない.
  確か標準入力は開業もスペース区切りも同一に扱われた気がするけど・・そのせいかな?

  185 :名無し~3.EXE:2009/12/03(木) 23:35:43 ID:8MhzhBSk
  "delims="

  186 :名無し~3.EXE:2009/12/04(金) 00:26:11 ID:/KEnbVNi
  >>185
  ありがとう. 1行取れました.
  reg query "HKEY_LOCAL_MACHINE\SOFTWARE\VMware, Inc.\VMware Tools" /v
  InstallPath | for /f "delims=" %%P in ('find "InstallPath"') do echo %%P
  でも, echo %%P はうまくいくけど, set VMW_IPTEMP="%%P" でやっても, 環境変数には代入されませんでした.
  コマンドラインでもバッチファイルでも同じでした.
  一応コマンドは実行されるんだけど.
  他にこんなのも試したんですが, だめでした.
  find "InstallPath" | set /p VMW_IPTEMP=
  find "InstallPath" | set /p VMW_IPTEMP=<con

  187 :名無し~3.EXE:2009/12/04(金) 01:49:26 ID:d9wXhpuD
  代入はされてる. ただし, 子プロセスの環境変数は親に逆遺伝しない.
  for /f %%P in ('echo AAA') do set XXX=%%P
  echo %XXX%
  echo BBB | for /f %%P in ('echo AAA') do set XXX=%%P
  echo %XXX%
  echo BBB|for /f %%P in ('echo AAA') do set XXX=%%P & call echo %%XXX%%

  188 :名無し~3.EXE:2009/12/04(金) 13:39:21 ID:d9wXhpuD
  echo BBB | set XXX=AAA
  echo %XXX%
  echo BBB | (set XXX=AAA
  call echo %%XXX%%
  )

  189 :名無し~3.EXE:2009/12/04(金) 15:14:22 ID:/KEnbVNi
  なるほど.
  パイプ使った先で環境変数に入れるなら, そこで処理してしまわないと駄目なんですね.
  結局ファイルを経由して set /p オプションでリダイレクトするのが正しかったか.

  190 :名無し~3.EXE:2009/12/04(金) 15:50:40 ID:d9wXhpuD
  for /f %P in ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\VMware, Inc.\VMware
  Tools" /v InstallPath ^| find "InstallPath"') do set VMW-IPTEMP=%P
  echo %VMW-IPTEMP%

  191 :名無し~3.EXE:2009/12/04(金) 18:20:02 ID:/KEnbVNi
  >>190
  パイプ処理まで中に含めるとは思いつきませんでした.
  ありがとうございました.

  192 :名無し~3.EXE:2009/12/04(金) 18:37:12 ID:d9wXhpuD
  echo BBB | (set /p XXX=
  call echo %%XXX%%
  )

  193 :名無し~3.EXE:2009/12/07(月) 14:04:39 ID:Cyo0Qdc6
  cp, mvコマンドとcopy, moveコマンドの微妙な違い:実例とまとめ - 檜山正幸のキマイラ飼育記.
  http://d.hatena.ne.jp/m-hiyama/20081211/1228976433

  194 :名無し~3.EXE:2009/12/22(火) 22:39:16 ID:Wwn6YkO/
  >>5
  これのダウンロード方法が分かりません.

  195 :名無し~3.EXE:2010/01/03(日) 09:23:06 ID:yQMN8uyY
  おはようございます, ちょっとコマンドについて質問させてください.
  IEで, インターネット一時ファイル"のみ"を削除するには,
  どのようなコマンドを打ったらよいのでしょうか?
  rd /s "tempor~1"  だと, クッキーやフォームなども一緒に削除されてしまいます.

  196 :名無し~3.EXE:2010/01/03(日) 13:55:05 ID:xnZ8ujnt
  無いから作れ.

  197 :名無し~3.EXE:2010/01/03(日) 14:53:13 ID:NDYQ1zyW
  >>195
  cleanmgr

  198 :名無し~3.EXE:2010/01/03(日) 15:49:26 ID:yQMN8uyY
  >>197
  おお, できましたサンクスです.
  ただ, cのクリーンアップのチェックは全て外し,
  cleanmgr /d z: /sageset:1
  でセットしておいても,
  cleanmgr /d z: /sagerun:1
  をbatにして実行すると, 目的のzドライブだけではなく, cドライブも毎回空きを計算してしまいます. .
  いい方法ありますか?

  199 :名無し~3.EXE:2010/01/08(金) 15:13:18 ID:wdm81tzo
  RunDll32.exe InetCpl.cpl, ClearMyTracksByProcess 8

  200 :名無し~3.EXE:2010/01/11(月) 12:56:50 ID:g2GiCuw7
  Index of /~piaip/tools/unxutils
  http://www.csie.ntu.edu.tw/~piaip/tools/unxutils/

  201 :名無し~3.EXE:2010/01/11(月) 15:41:27 ID:V3sq9Wpe
  >>200
  残念ながら, 中身は古いのばかりだな.

  202 :名無し~3.EXE:2010/01/26(火) 12:40:48 ID:Aw94STdP
  FOR /f "skip=4 tokens=3" %%A IN ('reg query
  "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User
  Shell Folders" /v Desktop') Do SET desktop=%%A

  203 :名無し~3.EXE:2010/01/26(火) 13:56:10 ID:QnBbXJza
  空白があると駄目だろ?

  204 :名無し~3.EXE:2010/01/26(火) 14:25:18 ID:ZPqGt4/y
  tokens=1, 2, *
  do set desktop=%%C
  って所かな.

  205 :名無し~3.EXE:2010/01/26(火) 18:53:17 ID:9uq8tqJG
  syslogをbat処理する時に困っています.
  [下矢印]で始まる行を直前の行と繋げたいのですが, どうしたら良いでしょうか?
  , 0, LAN -
  sed-1.18+mb1.03で色々試しているのですが, うまくいきません.
  キーワードがあった行と次の行をつなげることは出来たのですが・・・.
  よろしくお願いします.

  206 :名無し~3.EXE:2010/01/26(火) 20:05:57 ID:UyCrvOTu
  空白・2バイト文字があるとアウトだね.

  207 :名無し~3.EXE:2010/01/26(火) 21:59:36 ID:QnBbXJza
  >>205
  各行を改行なしで書く.
  なんとかで始まらないときだけ行頭に改行を書く.
  最後に改行を書く.

  208 :名無し~3.EXE:2010/01/27(水) 12:29:11 ID:aPOmdlOD
  質問お願いします.
  http://www.lifehacker.jp/2009/09/090904firefoxfiremaster.html?
  [上矢印]このソフトを使いたいのですがステップ3まで行き.
  http://securityxploded.com/firemaster.php?
  [上矢印]の配布ページを参考に, サンプルコマンドをコピーして.
      FireMaster.exe -d -f c:\dictfile.txt Firefox_Profile_Path
  などを打ち込んだりするのですが, エラーが出て先に進めません.
  C:\User\****\Links\FireMaster_bin>FireMaster.exe -d -f c:\dictfile.txt
  Firefox_Profile_Path
  [上矢印]このコマンドの打ち方に間違いはないでしょうか?

  209 :名無し~3.EXE:2010/01/27(水) 14:40:18 ID:nXBbHpe6
  >>205
  http://oshiete1.goo.ne.jp/qa3085426.html

  210 :名無し~3.EXE:2010/01/27(水) 17:09:55 ID:nXBbHpe6
  C:\bin>type t.sed
  /.*$/N
  s/\n//
  C:\bin>type log.txt
  A
  , 0, LAN -
  B
  , 0, LAN -
  C
  , 0, LAN -
  C:\bin>sed -f t.sed log.txt
  A, 0, LAN -
  B, 0, LAN -
  C, 0, LAN -
  適当に書いてみた.

  211 :名無し~3.EXE:2010/01/27(水) 19:05:35 ID:YbV7ZS5I
  forでできる.

  212 :名無し~3.EXE:2010/01/27(水) 21:17:47 ID:RwVGimom
  おまいら! sed の使い方教えて下さいm(_ _)m
  http://pc11.2ch.net/test/read.cgi/linux/1067815570/
  sed
  http://pc12.2ch.net/test/read.cgi/unix/1085730992/

  213 :名無し~3.EXE:2010/02/04(木) 03:04:07 ID:bMU9o4Cj
  set sec=%now:~6, 2%
  if %sec% lss 14 set m=14&&goto st
  if %sec% lss 29 set m=29&&goto st
  if %sec% lss 44 set m=44&&goto st
  if %sec% lss 59 set m=59&&goto st
  :st

  214 :名無し~3.EXE:2010/02/04(木) 20:16:27 ID:1NhVEJJl
  now ?

  215 :名無し~3.EXE:2010/02/05(金) 10:42:44 ID:mIxXapaZ
  Console Registry Tool for Windows - version 3.0
  Copyright (C) Microsoft Corp. 1981-2001. All rights reserved
  regコマンドは2000じゃ使えないんか...

  216 :名無し~3.EXE:2010/02/05(金) 12:58:42 ID:FDIFTu0B
  持ってけよ.

  217 :名無し~3.EXE:2010/02/06(土) 11:42:38 ID:uEMTgQVR
  Reg.exeコマンドはNT4の頃からあるよ.
  NT4の頃はResource Kit Toolsで提供されてた. (忘れたけどSupplement 3か4か以降)
  Windows 2000ではSupport Toolsに入ってた.
  [下矢印]でダウンロードできるよ.
  http://www.microsoft.com/downloads/details.aspx?FamilyID=f08d28f3-b835-4847-b810-bb6539362473&DisplayLang=en
  ちなみに引数の文法が結構違ってるから要確認な.

  218 :名無し~3.EXE:2010/02/06(土) 16:51:32 ID:N6DMGysY
  >>204 >>206
  個別に調整するしかないのか? 汎用的に指定できないのかね.

  219 :名無し~3.EXE:2010/03/19(金) 19:45:23 ID:j/kRmZ+3
  スレ立てるまでもない質問はここで 105匹目より誘導されてきました.
  WindowsXPで, タスクの登録を管理者権限を持っている人間が行うとして, タスクをユーザーアカウントを見て実行させるか,
  どうかを判定したいと考えています.
  ・atコマンドで登録 ->コマンドプロンプト上で実行.
  at 15:00 cmd /c if "Guest" equ ^"%USERNAME^%" ( echo hoge )
  で実行するも, 登録はされるのですが,
  1, ダブルコーテーションがはずされてしまうという問題があります.
  2, これを今度はバッチファイル上で実行しようとすると, ダブルコーテーションがはずされた上に,
  ^"%USERNAME^%"の部分が^だけになってしまいます.
  なにか, 解決に向けてヒントなりをいただけないでしょうか, , ,

  220 :名無し~3.EXE:2010/03/19(金) 20:28:55 ID:BHu+ZFPB
  at 15:00 "cmd /v:on /c if \"Guest\" equ \"!USERNAME!\" ( echo hoge )"

  221 :名無し~3.EXE:2010/03/20(土) 02:07:13 ID:2svRwq1H
  >>220 レスありがとうございます. エスケープシーケンス\と, !について教えていただき, 前進することができました.
  レスもらってから, うまくできなかったため, 今も試行錯誤しています.
  (cmd.exeをダブルコーテーションで囲むか, 最初と最後のダブルコーテションをはずすとうまくいきました)
  「ファイル名を指定して実行」
  cmd.exe /v:on /c if \"Guest\" equ \"!USERNAME!\" ( echo hoge )
  はうまく動作しました(ありがとうございます).
  しかし at 15:00 cmd.exe /v:on /c if \"Guest\" equ \"!USERNAME!\" ( echo hoge )
  はうまく動作しません.
  原因を探ったところ, at 15:00 cmd.exe /v:on /c echo \"!USERNAME!\" ^> C:\test.txt
  で確認すると, 実行結果は.
  "!USERNAME!\" がそのまま書き込まれていました.
  上記をうまく解決するため, atに登録した時点で環境変数(?)を開くうまい方法などあれば, ご教授いただければと思います.

  222 :名無し~3.EXE:2010/03/20(土) 22:21:55 ID:lyhs8zMC
  at 15:00 cmd.exe /c echo \"%USERNAME%\" ^> C:\test.txt

  223 :名無し~3.EXE:2010/03/21(日) 03:07:07 ID:F1k/W7Mk
  >>222  レスありがとうございます(なんどもありがとうございます).
  at 15:00 cmd.exe /c echo \"%USERNAME%\" ^> C:\test.txt
  自分の環境だと上記コマンドは  at 数字  で確認すると, すでに登録した段階でユーザー名が展開されてしまいます.
  (コントロールパネル->タスク  at数字のプロパティで確認すると, タスクを登録した段階で環境変数が展開されております, , , )
  at 15:00 cmd.exe /c echo \"%%USERNAME%%\" ^> C:\test.txt
  などもいろいろためしてみたのですが, , , 上記の場合は, C:\test.txtの中身が "%USERNAME%"になってしまいました, , , .
  (/v:on のあるなしに関わらず, , , )
  なにか, 良い方法があると, , , いいのですが, , , .

  224 :名無し~3.EXE:2010/03/21(日) 04:24:52 ID:IG7xyVml
  at 15:00 cmd.exe /c set ^> C:\test.txt

  225 :名無し~3.EXE:2010/03/21(日) 04:29:42 ID:83CPJkNx
  >>223
  事前にbatを作っておいてそれを実行するんじゃダメなんですか?
  [test.cmdの中身]
  if "%USERNAME%" equ "Guest" echo "%USERNAME%" > C:\test.txt
  で, at 15:00 c:\test.cmd
  を実行とか.
  ところで目的は何ですか?
  15:00ぴったりに使用していないと, その実行は明日に持ち越しになっちゃいますが.
  それでも良いんですか?15:00以降に最初に使ったユーザーとかじゃなくて?
  また一回こっきり実行でいいんですか?毎日とかじゃなくて?
  もしユーザーの管理に使いたいなら, ログオンスクリプトとして登録しておいて.
  ユーザーのログオン時を捕まえるのが良いと思うんですが?
  @echo off
  if "%username%"=="xxx" (
  挨拶メッセージを表示.
  コマンド1
  コマンド2
  ) else if "%username%"=="yyy" (
  コマンド3
  ) else if "%username%"=="zzz" (
  コマンド4
  )

  226 :名無し~3.EXE:2010/03/21(日) 15:20:12 ID:IG7xyVml
  at 15:00 cmd.exe /c whoami ^> C:\test.txt

  227 :名無し~3.EXE:2010/03/22(月) 04:11:36 ID:49Z3p/7o
  atのタスクがユーザアカウントでなく, システムアカウントで実行されることを分ってない?

  228 :名無し~3.EXE:2010/03/22(月) 12:14:38 ID:vRxWzlrp
  皆様コメントありがとうございます.
  >>224  レスありがとうございます.
  setの中身を確認して, ようやく自分がアホなことをやっていることがわかりました.
  (素で実行したのと, atで実行したのを比較して, %USERNAME%を確認しました)
  >>225  レスありがとうございます.
  ( >>225  の言うとおり)目的はある時間にAさんなら実行するけど, Bさんは実行しないスクリプトを組みたいと考えています.
  at 15:00っていうのは特に意味はなく, 質問するにしても可能な限りスクリプトを短くしたかったためです.
  自分の環境では, 教えていただいたbat処理は, ユーザーが  ""  になりましたので, 違う手を考えてみます.
  >>226  レスありがとうございます.
  WindowsXP SP2 Support Tool入れてみて実験してみたいと思います.
  >>227  レスありがとうございます.
  システムアカウントが実行するということはなんとなく知っていたのですが, >>224 のsetでようやく理解できました.
  whoamiでログインユーザーがとれるかちょっと実験してみたいと思いますが, , , atコマンドで実行すれば,
  システムアカウントになるのを確認しようと思います.

  229 :名無し~3.EXE:2010/03/22(月) 21:28:49 ID:49Z3p/7o
  at 15:00 cmd /c wmic computersystem get username ^>C:\test.txt

  230 :名無し~3.EXE:2010/03/23(火) 00:57:02 ID:aU5aUsH5
  特定ユーザーでのみタスク実行したいのならatコマンドでなく実行アカウントを指定できるschtasksコマンドを使えば?
  元々atコマンドはNTの互換のために残されている過去の遺物なので.

  231 :名無し~3.EXE:2010/03/23(火) 02:59:35 ID:eS66TQH1
  だめだろきっとパスワードがいるから.

  232 :名無し~3.EXE:2010/03/23(火) 20:19:25 ID:lQF/ybn7
  皆様コメントありがとうございます.
  >>229  レスありがとうございます.
  atでログインユーザー名を確認できました.
  ありがとうございます.
  >>230  レスありがとうございます.
  >>231  が言うように, パスワードが必要なため楽な方法を探しておりました, , , .
  (結果的にみなさまの貴重なお時間を割いていただいておりますが, , , )
  >>231  レスありがとうございます.
  おっしゃるとおりです, , , orz.
  wmicからのパイプ処理?について現在勉強しております.
  少し時間がかかるかもしれませんが, うまく行きましたら報告いたします.

  233 :名無し~3.EXE:2010/03/23(火) 23:57:08 ID:lDYBG9RV
  タスクは無差別にバッチを実行するだけにして, バッチの中でIF文使って.
  %USERNAME%が条件に合った場合だけやりたい処理をする,
  みたいな構成じゃダメなの?

  234 :名無し~3.EXE:2010/03/24(水) 00:45:12 ID:U3N/7+3H
  ごくろうさん.

  235 :名無し~3.EXE:2010/03/25(木) 03:27:06 ID:09J8YNxF
  なんかイタズラの臭いがするなあ.
  教えたのは失敗なんじゃないかな.

  236 :名無し~3.EXE:2010/03/25(木) 17:54:32 ID:16a0LSCJ
  できましたので, 報告します.
  for /F "usebackq skip=1" %%x in (`wmic computersystem get username`) do if /i
  "%%x" equ "%COMPUTERNAME%\%1" ( echo "hoge" )
  >>223  レスありがとうございます.
  先に試しましたが, 自分の環境ですとatで実行すると %USERNAME"  にはなにも入っておりませんでした.
  >>234 レスありがとうございます.
  すべてのレスをくれたかた, ご苦労さまでした.
  >>235 レスありがとうございます.
  イタズラにも使えるでしょうし, 有用なことにも使えるかと思います.

  237 :名無し~3.EXE:2010/03/26(金) 01:21:45 ID:/JmVMDcj
  OSのバージョンを区別するスマートな方法ってないよな.
  MS手抜くなよ.

  238 :名無し~3.EXE:2010/03/26(金) 19:07:54 ID:7vut8Xv7
  ver /?

  239 :名無し~3.EXE:2010/03/26(金) 20:41:17 ID:n80jNEuM
  SET UsrOS1=(不明)
  VER|FIND "Windows">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(WinNT系?:不明)
  VER|FIND "Windows 95">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(Win9x系:95)
  VER|FIND "Windows 95. [Version 4.00.1111]">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(Win9x系:95_OSR2)
  VER|FIND "Windows 98">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(Win9x系:98)
  VER|FIND "Windows 98 [Version 4.10.2222]">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(Win9x系:98_SE)
  VER|FIND "Windows Millennium">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(Win9x系:Me)
  VER|FIND "Windows NT">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(WinNT系:NT)
  VER|FIND "Windows NT Version 4.0">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(WinNT系:NT_4.0)
  VER|FIND "Windows 2000">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(WinNT系:2000)
  VER|FIND "Windows XP">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(WinNT系:XP)
  VER|FIND "Windows [Version 5.2.">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(WinNT系:Server2003)
  VER|FIND "Windows [Version 6.0.">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(WinNT系:Vista)
  VER|FIND "MS-DOS">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(非Win系:MS-DOS)
  VER|FIND "MS-DOS バージョン 5.00">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(非Win系:MS-DOS_5.0(EPSON製98互換機用で確認))
  VER|FIND "MS-DOS Version 6.2">NUL
  IF NOT ERRORLEVEL 1 SET UsrOS1=(非Win系:MS-DOS_6.2(EPSON製98互換機用で確認))

  240 :名無し~3.EXE:2010/03/27(土) 11:06:38 ID:D6Ht2NWP
  >>239
  煽りじゃなくてマジで疑問なんだが x64 と x86 の見分けは?
  ついで言えば IA64 は?

  241 :名無し~3.EXE:2010/03/27(土) 13:00:23 ID:EVIDvLoZ
  jt.exeに関して質問です.
  win7のタスク(windows/system32/tasks)を制御しようとしてますが,
  jt /lj %systemroot%\system32\tasks\(タスク名) /sj SystemRequired = 1
  [TRACE] Loading Job C:\Windows\system32\(タスク名)
  [PERF ] Load took 0 ms
  [FAIL ] IPersistFile::Load hr=0x80041313
  となり, うまく制御できません.
  根本的にやり方まちがってますかね?

  242 :名無し~3.EXE:2010/03/27(土) 15:00:49 ID:4iD/8n0I
  根本的にやり方まちがってるんじゃない?
  タスクスケジューラはVistaで変わったからjtは使えないんじゃないか.
  なんでos標準のschtasksを使わないの?

  243 :名無し~3.EXE:2010/03/27(土) 16:10:46 ID:EVIDvLoZ
  >>242
  ありがとうございます.
  いや, それがschtasksだと, そこまで(スリープからの復帰)制御出来ないんですよ.

  244 :名無し~3.EXE:2010/03/27(土) 16:27:12 ID:4iD/8n0I
  createobject("schedule.service")はどうだろ?

  245 :名無し~3.EXE:2010/03/27(土) 16:37:47 ID:4iD/8n0I
  TaskSettings.WakeToRun Propertyがあるね.

  246 :名無し~3.EXE:2010/03/27(土) 18:03:50 ID:EVIDvLoZ
  スターターの私には難しそうですがいろいろやってみます.

  247 :名無し~3.EXE:2010/03/27(土) 20:43:44 ID:lwojKVA6
  >>240
  PROCESSOR_ARCHITECTURE見ればいいんでない?

  248 :名無し~3.EXE:2010/03/27(土) 23:44:04 ID:KVlY6lKz
  >>247
  なるほど!
  さんくす!!

  249 :名無し~3.EXE:2010/04/11(日) 14:11:54 ID:y90kcftT
  コマンドライン中で純粋に特別な意味を持つキャラクタとしては,
  < > |
  の3つだけでしょうか.
  つまり,
  ECHo ほにゃらら〜〜〜ふにゃらら.
  というように数十文字のテキストを表示するとして,
  〜〜〜の中に入れてはいけない文字が知りたいのです.

  250 :名無し~3.EXE:2010/04/11(日) 14:31:00 ID:6Yi1arZm
  ^

  251 :名無し~3.EXE:2010/04/11(日) 15:58:54 ID:y90kcftT
  >>250
  ヒントをいただいてかなり分かりました.
  まとめると以下のようで正しいでしょうか?
  *コマンドラインで通常の文字と扱われない特殊キャラクタ, およびエスケープ方法.
  @MS-DOSプロンプト(全4種)
  <
  >
  |
  *以上の3種は " (ダブルクオート)で括られた状態なら通常の文字として扱われる.
  % -> %%
  @コマンドプロンプト(全9種)
  < -> ^<
  > -> ^>
  | -> ^|
  & -> ^&
  ( -> ^(
  ) -> ^)
  ^ -> ^^
  *以上の7種は " (ダブルクオート)で括られた状態なら通常の文字として扱われる.
  % -> %%
  " -> ""

  252 :名無し~3.EXE:2010/04/11(日) 16:00:36 ID:mGw8jiZC
  C:\>echo %%
  %%

  253 :名無し~3.EXE:2010/04/11(日) 16:42:14 ID:O2CSi6Ub
  C:\> echo (
  (

  254 :名無し~3.EXE:2010/04/11(日) 16:48:23 ID:y90kcftT
  なんて早さの即答・・・迷い無しですね. ありがとうございます.
  なるほど, コマンドプロンプトでは%%でエスケープ, というのは.
  ウソ情報をつかんできてしまったようです.
  ただし, DOSではこれで正しい.
  すると・・・.
  %windir%と表示したい場合は,
  COMMAND.COM
  echo %%windir%%
  CMD.EXE
  echo ^%windir^%
  ということですね.
  あと,
  " -> ""
  というのもエスケープされてるのかされてないのか分からないですね.
  常識的にはエスケープされてるとは言えないと思いますので, 除外します.
  この考え, 正しいのかな??
  他に何か見落としがありますでしょうか?

  255 :名無し~3.EXE:2010/04/11(日) 16:58:21 ID:y90kcftT
  >>253
  そもそも () の使い方が分からない・・・.
  ECHOで単体なら大丈夫と言うことですね.
  しかし, 使用できない文字, エスケープすべき文字の確認が目的ですので,
  これは前述の通り普通に ^( ^) で良いかと.
  エスケープしなくても大丈夫なパターンを探してるわけじゃないんです.

  256 :名無し~3.EXE:2010/04/11(日) 16:58:30 ID:O2CSi6Ub
  set windir^^=aaa
  echo ^%windir^%

  257 :名無し~3.EXE:2010/04/11(日) 17:01:21 ID:O2CSi6Ub
  echo ^" ^"
  echo " ^"

  258 :名無し~3.EXE:2010/04/11(日) 17:06:11 ID:O2CSi6Ub
  cmd/?|find "特殊文字"

  259 :名無し~3.EXE:2010/04/11(日) 17:10:26 ID:y90kcftT
  >>256
  >>258
  う, 難しい. 勉強してみます.
  >>257
  ありがとうございます.
  今ちょうど,
  echo " | "
  echo ^" | "
  なんてやって確認してたとこでした.
  結論は,
  " -> ^"
  ですね!

  260 :名無し~3.EXE:2010/04/11(日) 18:11:16 ID:y90kcftT
  >>256
  これは分かりません??
  結果は%windir^%にaaaが入ってますよ, と.
  先頭の ^ はどこへ消えたのか?
  %のエスケープが^%でないとしたら, どういうルールなのでしょうか.
  これは自分では答えを出せそうに無いです.
  >>258
  ややこしいですねぇ.
  cmd/?|find "^"
  とか,
  set test=ファイル.
  cmd/?|find "%test%"
  とかやってました.
  シェルとコマンドの仕事の範囲が明確で無いから分かりにくいんですかね.
  もしくはリテラルの定義が明確で無いからか.
  自分が必要としているのはechoだけなんですが,
  >>256の結果は影響がありそうです.
  ぜひ解説していただけないでしょうか.

  261 :名無し~3.EXE:2010/04/11(日) 19:40:55 ID:O2CSi6Ub
  set windir^^=aaa
  echo %windir^%

  262 :名無し~3.EXE:2010/04/11(日) 19:42:41 ID:O2CSi6Ub
  c:\> cmd/?|find "特殊文字"

  263 :名無し~3.EXE:2010/04/11(日) 19:43:49 ID:O2CSi6Ub
  set windir^^=aaa
  set windir

  264 :名無し~3.EXE:2010/04/11(日) 20:00:38 ID:O2CSi6Ub
  http://otn.blogtribe.org/entry-acf7b762f5b92cec6885cca6954bf573.html

  265 :名無し~3.EXE:2010/04/11(日) 20:05:46 ID:O2CSi6Ub
  http://otnx.jp/CMD/%C1%B4%C8%CC/%B9%BD%CA%B8%B2%F2%C0%CF/#j4da5af5

  266 :名無し~3.EXE:2010/04/14(水) 19:28:19 ID:Lfksvlek
  XP及び7でコマンドライン or WSHから関連づけの登録を行うのにどのような方法がありますか?
  標準でインストールされているソフトウェアの影響を受けにくい方法を探しています.
  よろしくお願いします.

  267 :名無し~3.EXE:2010/04/14(水) 19:55:11 ID:zsXaS8Mw
  レジストリ書き換えしかないだろ.

  268 :名無し~3.EXE:2010/04/14(水) 23:42:57 ID:Nbmdm37R
  assoc
  ftype

  269 :名無し~3.EXE:2010/04/16(金) 22:23:00 ID:+WenbQ+F
  英字大文字を小文字に変換するコマンドがないよね.

  270 :名無し~3.EXE:2010/04/16(金) 22:27:45 ID:ATLdufCB
  setがあるだろが  なんとかとsetは使いよう.

  271 :名無し~3.EXE:2010/04/16(金) 23:22:09 ID:IINeE4gJ
  どういうことでござるか?

  272 :名無し~3.EXE:2010/04/17(土) 00:17:11 ID:iUltzkHe
  set x=%x:A=a%

  273 :名無し~3.EXE:2010/04/20(火) 06:21:04 ID:lAJ6JeLK
  コマンドプロンプト初心者です><
  "xxx".拡張子 というファイルをD&Dして, 以下のようなテキストファイルを吐き出すバッチ作りたいのですが.
  [下矢印]テキストファイルの中身[下矢印]
  video = MPEG2Source("xxx".d2v)
  audio = WavSource("xxx".wav)
  AudioDub(video, audio)
  "xxx"の部分にD&Dしたファイルの名前だけを代入して吐き出させるようにするにはどうしたらよいでしょうか><

  274 :名無し~3.EXE:2010/04/20(火) 07:46:44 ID:l+u3QXef
  こりゃー釣りだな.

  275 :名無し~3.EXE:2010/04/20(火) 14:04:59 ID:xb1+R6Ig
  釣りか真性かというと後者の方じゃないかと思うんだが.

  276 :名無し~3.EXE:2010/04/21(水) 00:15:09 ID:tjgMJh/A
  ちょっと調べりゃわかるけど,
  1) バッチパラメータとして, %0〜%9ってのがある.
  2) パラメータには修飾子が使える. %~1, %~n1など.
  3) 表示コマンド echoで出力先を標準出力からファイルにリダイレクト > or >> できる.

  277 :名無し~3.EXE:2010/04/21(水) 03:23:28 ID:vhJZPvun
  >276さん.
  なんとか作成することができました.
  にありがとうございました〜.

  278 :名無し~3.EXE:2010/04/21(水) 04:09:15 ID:tjgMJh/A
  >>269
  @if(0)==(0) echo off
  if "%~1"=="" echo パラメタ1に入力ファイル名(変換元)を指定してください& goto :eof
  if not exist "%~1" echo 指定ファイル"%~f1"が存在しません& goto :eof
  cscript //nologo //e:jscript "%~f0" <"%~1" >output.txt
  goto :eof
  @end
  WScript.Echo(WScript.StdIn.ReadAll().toLowerCase());

  279 :名無し~3.EXE:2010/04/22(木) 17:06:43 ID:KT+yi7rA
  スゲー昔のことで悪いけど.
  >>127
  これの動作を誰か解説してくださいな.

  280 :名無し~3.EXE:2010/04/22(木) 18:14:18 ID:pj2f+ePb
  >>279
  http://otnx.jp/CMD/?%C1%B4%C8%CC%2F%B9%BD%CA%B8%B2%F2%C0%CF#sdbf768f

  281 :名無し~3.EXE:2010/04/22(木) 18:43:13 ID:HvRXw+eF
  >>279
  文字の置換.
  %cd% 中の「\」を「&set cdname=」で置換するとどうなるか.
  c:\aaa\bbb\ccc -> c:&set cdname=aaa&set cdname=bbb&set cdname=ccc
  即ち.
  c:
  set cdname=aaa
  set cdname=bbb
  set cdname=ccc
  個人的にはdos窓を沢山開いてる時の識別用に.
  %CD:\=&title % をよく使う.

  282 :名無し~3.EXE:2010/04/22(木) 18:56:57 ID:KT+yi7rA
  ありがとさん.
  俺が混乱してた理由.
  &で一旦切れると思ってた.
  そのまま置換されてさらに再度評価されるんだね.

  283 :名無し~3.EXE:2010/04/22(木) 22:52:39 ID:pj2f+ePb
  再度評価じゃなくて評価の順序でしょ.

  284 :名無し~3.EXE:2010/04/24(土) 22:30:32 ID:oAoL4N0L
  cmd.exe だと title でウィンドウのタイトルを設定できるけど.
  powershell.exe ではどうすればいい?

  285 :名無し~3.EXE:2010/04/24(土) 22:39:33 ID:OvOv+w/S
  $Host.UI.RawUI.WindowTitle = "title"
  とかそんな感じ.

  286 :名無し~3.EXE:2010/04/24(土) 22:46:57 ID:oAoL4N0L
  あんがと.
  とりあえず.
  function title {$Host.UI.RawUI.WindowTitle = $args[0]}
  としといた.

  287 :名無し~3.EXE:2010/05/11(火) 22:24:59 ID:vyuPZUfc
  powershell.exe だと $Host.UI.RawUI.WindowTitle でウィンドウのタイトルを取得できるけど.
  cmd.exe ではどうすればいい?

  288 :名無し~3.EXE:2010/05/11(火) 23:52:00 ID:d+T9MEpE
  ウィンドウの概念が無いんじゃ・・・.

  289 :名無し~3.EXE:2010/05/12(水) 14:17:51 ID:R0Dj2vpX
  できました.

  290 :名無し~3.EXE:2010/05/21(金) 22:11:25 ID:AhJIB9Qh
  制限ユーザでログオンしてて, 無線LANと有線LANの有効/無効を手軽に切り替えたいです.
  管理者のパスワードは手入力で.
  devcon.exeを入れて[下矢印]のショートカットを作って実行してもうまくいきません.
  %windir%\system32\runas.exe /user:USERNAME "c:\bin\devcon enable
  'PCI\VEN_HOGEHOGE'"
  runasのパスワード入力してもそのまま終了(エラーが出てるだろうけどすぐ消えちゃって確認できない).
  devcon enable
  "PCI\VEN_HOGEHOGE"とすべきところをダブルクォートの入れ子がダメだったのでシングルクォートを使ってみたのが原因だと思う.
  どうすればいいの?
  MakeMeAdmin.cmd(制限ユーザで一時的に管理者権限のコマンドプロンプトが起動できます)でdevcon enable
  "PCI\VEN_HOGEHOGE"としたら期待通りに変更できました.
  なので"PCI\VEN_HOGEHOGE"のハードウエアIDが間違ってるとかではないと思う.
  あと, ショートカットを実行後に(表示だけでも)一時停止みたいに出来ない?
  バッチファイルのpauseみたいなの.
  キーを押さないとウィンドウが閉じないようにしたい.
  XP PRo SP3です.

  291 :名無し~3.EXE:2010/05/21(金) 23:33:43 ID:WdVH3pFc
  runas/?

  292 :名無し~3.EXE:2010/05/21(金) 23:36:05 ID:WdVH3pFc
  あと, cmd/k

  293 :名無し~3.EXE:2010/05/22(土) 01:34:05 ID:iN+rPVH/
  ありがとん.
  runas /? の例のところに.
  > runas /env /user:user@domain.microsoft.com "notepad \"my file.txt\""
  て書いてあったのでダブルクォートの入れ子は使えるってことなのかな?
  でも[下矢印]のをショートカットにしてみたけどやっぱエラーになる.
  cmd.exe /k "%windir%\system32\runas.exe /user:USERNAME "C:\bin\devcon.exe
  enable "PCI\VEN_HOGEHOGE"""
  USERNAME のパスワードを入力してください:
  C:\bin\devcon.exe enable PCI\VEN_14E4 をユーザー "DOMAIN\USER" として開始しています...
  'DEV_HOGE' は, 内部コマンドまたは外部コマンド,
  操作可能なプログラムまたはバッチ ファイルとして認識されていません.
  'HOGE2' は, 内部コマンドまたは外部コマンド,
  操作可能なプログラムまたはバッチ ファイルとして認識されていません.
  'HOGE3""' は, 内部コマンドまたは外部コマンド,
  操作可能なプログラムまたはバッチ ファイルとして認識されていません.

  294 :名無し~3.EXE:2010/05/22(土) 04:25:45 ID:XfHQXv+A
  \"

  295 :名無し~3.EXE:2010/05/22(土) 16:43:25 ID:iN+rPVH/
  ありがと. 節穴だった.
  \でエスケープするのか.
  もう一段深くするのは\\"じゃないの?[下矢印]うまくいかないよ.
  cmd.exe /k "%windir%\system32\runas.exe /user:USERNAME \"C:\bin\devcon.exe
  enable \\"PCI\VEN_HOGEHOGE\\"\""

  296 :名無し~3.EXE:2010/05/22(土) 18:59:02 ID:XSrApt/u
  何も試してないしヘルプすら見てないんだが,
  \がエスケープ文字だというんなら,
  PCI\VEN_HOGEHOGEの中の\とかもエスケープがいりそうな気がする.

  297 :名無し~3.EXE:2010/05/22(土) 19:28:05 ID:iN+rPVH/
  あ, そうか.
  じゃパスのデリミタの\もエスケープしなきゃダメだな.
  もう訳わからんくなってきた.

  298 :名無し~3.EXE:2010/05/22(土) 22:28:42 ID:XfHQXv+A
  CommandLineToArgvW has a special interpretation of backslash characters when
  they are followed by a quotation mark character ("), as follows:
  &#8226;2n backslashes followed by a quotation mark produce n backslashes followed by
  a quotation mark.
  &#8226;(2n) + 1 backslashes followed by a quotation mark again produce n backslashes
  followed by a quotation mark.
  &#8226;n backslashes not followed by a quotation mark simply produce n backslashes.

  299 :名無し~3.EXE:2010/05/22(土) 23:44:12 ID:iN+rPVH/
  トン. また少し賢くなった.
  cmd.exe /k "%windir%\system32\runas.exe /user:USERNAME \"C:\bin\devcon.exe
  enable \\\"PCI\VEN_HOGEHOGE\\\"\""
  でも失敗.
  が, エラー(?)の種類が変わった.
  RUNAS 使用法:
  RUNAS [ [/noprofile | /profile] [/env] [/netonly] ]
  /user:<ユーザー名> プログラム.
  ...略...
  "PCI\VEN_HOGEHOGE"のところに&が入ってた. "PCI\VEN_HOGE&hage"みたいに.
  これ関係あるのかな?
  ダブルクォート中の&は特殊文字として扱われなくてそのままだと思い込んでた.
  後出しでホントに申し訳ない.

  300 :名無し~3.EXE:2010/05/22(土) 23:51:12 ID:RrzNIgQ+
  ^

  301 :名無し~3.EXE:2010/05/22(土) 23:53:45 ID:iN+rPVH/
  cmd.exe /k 外すとうまく行く.
  %windir%\system32\runas.exe /user:USERNAME \"C:\bin\devcon.exe enable
  \"PCI\VEN_HOGE&hage\""
  取りあえず一番目の目的は達成できた.
  けど, もうちょっとがんばってみる.
  runas.exeが引数の解釈が独自だったりするのかな??
  日記に付き合ってくれてありがと.

  302 :名無し~3.EXE:2010/05/23(日) 14:17:02 ID:W2D4uAW/
  runas.exeがMS標準シンタクス.
  cmd.exeが独自解釈.

  303 :名無し~3.EXE:2010/05/24(月) 20:17:20 ID:W/5tifrW
  直前に飛んだラベル名とかサブルーチン名を取得する方法って無いですかね?
  call :sub
  :sub
  echo %~0
  goto :eof
  みたいにやって :sub とか出れば嬉しいんですけど・・・.

  304 :名無し~3.EXE:2010/05/24(月) 20:37:22 ID:U25k7xKb
  %0で出るだろ?

  305 :名無し~3.EXE:2010/05/24(月) 21:02:19 ID:U25k7xKb
  と思ったら出ないね  昔, 出たような気がするが.

  306 :名無し~3.EXE:2010/05/24(月) 21:33:28 ID:U25k7xKb
  こうすれば出てるのが確認できる.
  call :sub
  :sub
  echo %~0
  pause
  goto :eof

  307 :名無し~3.EXE:2010/05/25(火) 00:53:32 ID:cYyyrQH+
  >>306
  あれ?
  何度やっても出なかった・・・と思っていたら.
  echo %~n0
  とやってて本体バッチ名取得してました.
  %~0 ならサブルーチン入るんですね. orz.
  しょうもない質問ですみません.

  308 :名無し~3.EXE:2010/05/28(金) 17:02:23 ID:nj08k/yL
  誘導されてきました.
  以下に該当svchost.exeの再起動を組み込みたいです.
  どう記述すればよいかご教示ください.
  http://www.dotup.org/uploda/www.dotup.org920134.txt

  309 :名無し~3.EXE:2010/05/28(金) 21:38:05 ID:u9g/OIqa
  shutdown /r

  310 :名無し~3.EXE:2010/06/12(土) 00:47:37 ID:Dlxn8xTR
  ちょいと質問ですが, startコマンドの正体って何ですか?
  batch?exe?探したけど見つからない.

  311 :名無し~3.EXE:2010/06/12(土) 01:41:46 ID:Dip7ylrc
  シェルつーかCMD.EXEの内部コマンド.
  dirとかechoとかと一緒.

  312 :名無し~3.EXE:2010/06/12(土) 10:01:00 ID:3fATMNp4
  9x/Me では start.exe だったぞ.

  313 :名無し~3.EXE:2010/06/13(日) 01:37:52 ID:Czl7gJkW
  生き字引だね.

  314 :名無し~3.EXE:2010/06/13(日) 04:23:54 ID:XhOpRdWv
  老害って言うなぁ ><

  315 :名無し~3.EXE:2010/06/13(日) 05:26:28 ID:Rhlj2NIa
  労咳乙.

  316 :名無し~3.EXE:2010/06/16(水) 06:58:54 ID:Oy6d8rq0
  M/B温度, CPU温度, HDD温度を.
  コマンドラインで取得したいです.
  ご存知な方, ご教授ください.

  317 :名無し~3.EXE:2010/06/16(水) 22:38:27 ID:39eX3Vg4
  net send /domain:hogehoge "誰かCPU温度見てきてくんない?"

  318 :名無し~3.EXE:2010/06/17(木) 13:17:59 ID:2Xq5jmQP
  >>317 役立たず.
  このコマンドの構文は次のとおりです:
  NET
  [ ACCOUNTS | COMPUTER | CONFIG | CONTINUE | FILE | GROUP | HELP |
  HELPMSG | LOCALGROUP | PAUSE | PRINT | SESSION | SHARE | START |
  STATISTICS | STOP | TIME | USE | USER | VIEW ]

  319 :名無し~3.EXE:2010/06/17(木) 13:45:18 ID:rA4YN+jF
  >>318
  vista以降はnet send無くなったみたいだな・・・.

  320 :名無し~3.EXE:2010/06/17(木) 13:46:41 ID:rA4YN+jF
  参考.
  http://blogs.technet.com/b/junichia/archive/2010/04/06/3323360.aspx

  321 :名無し~3.EXE:2010/06/18(金) 00:16:20 ID:Lkx8YBO5
  >>318
  そうか?
  有能なパシリを確保すれば無限の可能性を秘めている最強コマンドじゃないか. w.
  Vista以降は >>319 の言うように msg にしないとイカンようではあるけど.

  322 :名無し~3.EXE:2010/06/18(金) 00:29:04 ID:eKBxx8ep
  >>321
  いきなりケース開けられて温度計当てられるのが最強だと思えるってステキだな.

  323 :名無し~3.EXE:2010/06/18(金) 00:35:34 ID:IBhIxhLK
  いや, さすがにパシリにそんなことさせないだろ. w.
  「俺がいない間に H/Wモニターと温度計付けとけ, PC壊したらゆるさん.
    そして定時計測と俺が尋ねた任意の時の情報を即座に知らせろ.
    ついでに茶ぁもってこい」
  パシリなんだからこんな感じだろ.

  324 :名無し~3.EXE:2010/06/18(金) 01:02:58 ID:FRoXhJso
  プログラマの進化を思い出した.

  325 :名無し~3.EXE:2010/06/18(金) 09:45:16 ID:BZUKhFUO
  >>321 ホント役立たず.
  'msg' は, 内部コマンドまたは外部コマンド,
  操作可能なプログラムまたはバッチ ファイルとして認識されていません.

  326 :316:2010/06/18(金) 14:56:24 ID:Czg/EYoB
  やはり無理なのでしょうか?
  wmicコマンドで可能でしょうか?
  wmicコマンドに熟知しているかた,
  よろしくお願い致します.

  327 :名無し~3.EXE:2010/06/18(金) 22:28:50 ID:eKBxx8ep
  snmpって温度とか取れるんじゃないっけ?

  328 :名無し~3.EXE:2010/06/18(金) 23:10:23 ID:WMDQ5xj1
  っけ?という語尾をつけたら2chぽいと評価された時代は.
  5年前に終わりました. まだ気づきませんか?

  329 :名無し~3.EXE:2010/06/18(金) 23:14:33 ID:eKBxx8ep
  そんな時代があったんだ.
  2chにすごく詳しいんですね. 2ch歴何年ですか?

  330 :名無し~3.EXE:2010/06/18(金) 23:23:42 ID:E9Xtjaoh
  しあわせってなんだっけなんだっけ.

  331 :名無し~3.EXE:2010/06/19(土) 00:18:58 ID:f++uISdW
  キッコーマンの醤油は不味くはないが美味いと言う程でもない.

  332 :名無し~3.EXE:2010/06/19(土) 01:20:25 ID:uwOhPTQr
  ソースは2ch.

  333 :316:2010/06/19(土) 08:03:52 ID:Oyfqtbw0
  >>327
  MotherBoard Monitorを使用してsnmpで取れます.
  しかし, MotherBoard Monitorはログインしていなければ取れないのです.

  334 :名無し~3.EXE:2010/06/19(土) 09:38:53 ID:t2I57B/C
  for と dir を組み合わせて空き容量を取得するところまではできたけれど,
  それをMB/GB表示するとこでつまずいた.
  XPなら.

  335 :名無し~3.EXE:2010/06/19(土) 10:00:35 ID:J6JYfJEW
  du.exe 拾ってこい.

  336 :名無し~3.EXE:2010/06/19(土) 12:28:10 ID:t2I57B/C
  for /F "tokens=3" %%s in ('fsutil volume diskfree C:\実況') do echo %%s
  まともに動かなかったのはこのディレクトリ名のせいでした.
  ごめんなさい.

  337 :名無し~3.EXE:2010/06/19(土) 13:43:02 ID:uwOhPTQr
  forのカッコ内の全角文字の解釈, いつになったら直るんだろうなぁ.
  DOS時代のforから生まれ変わって機能拡張したNT4.0SP3の頃からずーっと不調のまま.
  昔より多少は改善してるけど, 未だに手放しで信用できるレベルじゃないから, わざわさ.
  一時ファイルにいったん吐いてからfor /fで読ませるような段取りしてやってる.

  338 :名無し~3.EXE:2010/06/19(土) 13:58:54 ID:Lx2nza/O
  HDDもTB超のこの時代にint32bitまでしか扱えないってのはなかなか辛い.
  外部コマンド無しでHDDの空きをMiB・GiBに計算する方法は無いもんだか.
  俺じゃ%freespace:~0, -6%みたいな次善策しか浮かばん・・・.

  339 :名無し~3.EXE:2010/06/19(土) 14:36:25 ID:DAoYqnz1
  一桁ずつ計算すればいいんじゃねえの?

  340 :名無し~3.EXE:2010/06/19(土) 15:22:20 ID:YGapzfgn
  >>338
  上位桁と下位桁に分けて計算すりゃええじゃないか  小学生の算数だろ.
  >>337
  ご苦労なこって  使い方が下手なだけだろ.

  341 :名無し~3.EXE:2010/06/19(土) 20:03:50 ID:YGapzfgn
  >一桁ずつ計算すればいいんじゃねえの?
  わかったようなこと言ってわかってねーんじゃねえの?

  342 :名無し~3.EXE:2010/06/19(土) 20:43:34 ID:xbB9YwGi
  ねえの?という語尾をつけたらVIPぽいと思われた時代は.
  5年前に終わりました. まだ気づきませんか?

  343 :名無し~3.EXE:2010/06/20(日) 17:49:41 ID:kQIbsBAe
  >>339
  1桁ずつどうやるんだろう.

  344 :名無し~3.EXE:2010/06/20(日) 18:22:06 ID:kQIbsBAe
  せめて4桁ずつでないと難しいんじゃないか.

  345 :名無し~3.EXE:2010/06/20(日) 22:22:56 ID:kOOEfEcy
  質問.
  forの中でgoto使ったらだめとかそういうのは無いですよね?
  gotoのあとで終わっちゃうんです.

  346 :345:2010/06/20(日) 22:23:45 ID:kOOEfEcy
  もちろんforの()内にラベルはあります.

  347 :名無し~3.EXE:2010/06/20(日) 22:53:37 ID:BRn0hbsF
  他の言語でもgotoは帰ってこないような?
  ご希望はcallの拡張機能ではなくて?

  348 :名無し~3.EXE:2010/06/21(月) 00:43:21 ID:8Cfs2MxU
  (
  goto :aaa
  echo aaa
  goto :bbb
  )
  :bbb
  echo bbb
  ってやってみな.

  349 :名無し~3.EXE:2010/06/21(月) 00:44:40 ID:8Cfs2MxU
  ごめ.
  (
  goto :aaa
  goto :bbb
  :aaa
  echo aaa
  )
  :bbb
  echo bbb
  ってやってみな.

  350 :名無し~3.EXE:2010/06/21(月) 01:34:24 ID:+M8NFq+o
  C:\Documents and Settings\azusa>set z=j, k, l
  C:\Documents and Settings\azusa>set z=%z:, =%
  C:\Documents and Settings\azusa>echo %z%
  jkl

  351 :345:2010/06/21(月) 02:20:35 ID:yphIa24T
  >>347
  callでラベルに飛べるんですね〜.
  ところで, 現在末尾に@pause > nulと書いて表示を見てるんですが,
  多分このせい?でキーを押さないと繰り返しを続けてくれないんですよね.
  @pause > nulのほかにウィンドウを閉じない方法は無いですか?
  >>349
  よくわからない;

  352 :名無し~3.EXE:2010/06/21(月) 06:30:42 ID:Bf7wY82x
  そりゃバッチをダブルクリックで実行してるからだろ.
  コマンドプロンプト開いてCUIで実行したら処理終了してもそのまま.

  353 :名無し~3.EXE:2010/06/21(月) 10:49:23 ID:nkKTN5RL
  >>351
  「末尾」がcallされたブロックの一部になっちゃっててるからだろ.
  @echo off
  for %%v in (a b c d e f g) do (call :ex %%v)
  call :ex2
  @pause > nul
  goto :hell
  :ex
  echo %1
  goto :hell
  :ex2
  echo オワタ.
  REM goto :hell ; これはなくても結果は同じ.
  :hell

  354 :名無し~3.EXE:2010/06/21(月) 15:12:26 ID:Bf7wY82x
  ファイル末尾にpause入れるなら サブルーチン抜けたいところでgoto :eof
  eofはラベル不要.
  自分の作ったラベルに飛んだら末尾のpauseに引っかかる.

  355 :名無し~3.EXE:2010/06/21(月) 21:23:31 ID:+M8NFq+o
  for /F "tokens=3" %%s in ('dir %tmp%') do set size=%%s
  set size=%size:, =%
  set /a size=%size%/1024/1024
  echo %size% MiB

  356 :345:2010/06/21(月) 22:30:59 ID:yphIa24T
  >>353
  ああーできました.
  callはどこでもドア〜でforの外と繋がってるんですね.
  :exは:ex2の3行を除く末尾までがブロックてことですか.
  助かりましたありがとう!

  357 :名無し~3.EXE:2010/06/21(月) 22:56:33 ID:Bf7wY82x
  >>355
  %size%が2G超えてなければ文字列としても数値としても動くけど・・・.
  set size=2147483647
  set /a size=%size%/1024/1024
  echo %size% MiB
  2047 MiB
  set size=2147483648
  set /a size=%size%/1024/1024
  echo %size% MiB
  -2048 MiB

  358 :名無し~3.EXE:2010/06/22(火) 01:07:06 ID:eOY9ss6I
  一桁ずつ計算すればいいんじゃねえの?

  359 :名無し~3.EXE:2010/06/22(火) 04:28:52 ID:wV9BOjvz
  >>333
  ああ, そうなんだ.
  じゃあ, プチサービスを作って, そのアプリをサービス化しちゃえばログインしていない状態でも取れるかもよ,
  と書いてここがム板じゃないことに気付いた.
  なんかそういうフリーソフトがあったような気がしなくもないよ>サービス化.

  360 :名無し~3.EXE:2010/06/24(木) 20:03:30 ID:jotKt44m
  >>358
  できるものならやってみろよ.

  361 :名無し~3.EXE:2010/06/25(金) 10:48:42 ID:LxrszcVG
  MiB
  MLB

  362 :名無し~3.EXE:2010/06/25(金) 19:30:46 ID:UanEBa4x
  >>360
  できるだろ  やってみろよ  簡単だよ.

  363 :名無し~3.EXE:2010/06/25(金) 20:22:18 ID:1v/RbT1q
  出来たっぽい.
  @echo off
  set A=214748742140
  set B=1024
  set ans=
  set r=
  :div
  set r=%r%%A:~0, 1%
  set A=%A:~1%
  set /a s=r/%B%
  set /a r=r%%%B%
  set ans=%ans%%s%
  if %r%%A% GEQ %B% goto :div
  echo %ans%%A%
  echo %r%

  364 :名無し~3.EXE:2010/06/25(金) 20:25:30 ID:blfI5Op2
  wmicのツワモノ, いらっしゃいますか?

  365 :名無し~3.EXE:2010/06/25(金) 22:51:12 ID:H19ZoAX4
  >>363
  r<1024の時.
  r/1024=0
  r%1024=r

  366 :名無し~3.EXE:2010/06/26(土) 01:24:49 ID:ZJyYx8uG
  これで大丈夫・・・か?
  @echo on
  set A=1023
  set B=1024
  set ans=$
  set r=
  :div
  set r=%r%%A:~0, 1%
  set A=%A:~1%
  set /a s=r/%B%
  set /a r=r%%%B%
  set ans=%ans%%s%
  set ans=%ans:$0=$%
  if defined A goto :div
  if $%ans% == $$ (echo 0) else echo %ans:~1%
  echo %r%

  367 :名無し~3.EXE:2010/06/26(土) 01:40:36 ID:PZ7p49es
  数値の先頭が0の時8進数と解釈されてバグる.

  368 :名無し~3.EXE:2010/06/26(土) 02:01:46 ID:ZJyYx8uG
  うおぉ.
  set r=0
  :div
  set /a r=%r%*10+%A:~0, 1%

  369 :名無し~3.EXE:2010/06/26(土) 23:23:35 ID:8YnLP4Rl
  ちょっと質問があります.
  Win7でシステム情報(msinfo32)のコンボーネントの"CD-ROM"や"USB"の内容をコマンドラインで.
  outputしてファイルに書き出したいのですが分かりません. (敢えてGUIではなくCUIで)
  どういうコマンドを実行すればいいのか教授してくれれば幸いです.

  370 :名無し~3.EXE:2010/06/26(土) 23:29:16 ID:3iiN+0H6
  msinfo32 /?

  371 :名無し~3.EXE:2010/06/26(土) 23:38:36 ID:8YnLP4Rl
  >>370
  回答ありがとうございます.
  しかしそのコマンドを実行するとGUIが出てくるのです・・たしかXPなら確認出来た気がしますが.

  372 :名無し~3.EXE:2010/06/27(日) 02:00:15 ID:eWryKo38
  >>371
  msinfo32 /categories +ComponentsUSB /report c:\usb.txt
  と「ファイル名を指定して実行」でやってみて,
  特にウインドウは出てこなかったけど, Win7だと出てくるの?

  373 :369:2010/06/27(日) 03:36:24 ID:N7jjxMwC
  >>372
  ありがとうございます.
  ログ出力はされたのですが特定のカテゴリじゃなく全ての情報が書き出されます.
  Win7(Vista)だと特定のカテゴリを出力させるのは無理なんですかね・・.
  >ウィンドウの件.
  msinfo32 /?
  のコマンドなら出てきます.
  教えていただいたコマンドならシステム情報を取得してログ出力ってなりました.
  (ただし上記にも書いてある通り全ての情報が書き出されます)
  ちょっと調べた所Vistaからそうだったみたいです.

  374 :名無し~3.EXE:2010/06/27(日) 20:50:36 ID:9xWXQ4dR
  >>373
  あー確かにWin7だとうまく動作しないっぽいね.
  じゃあPowerShellとか使ってWMIのクラスを叩くくらい?丁度Win7から標準搭載だし.
  ComponentsMultiMediaCDROMの場合なら.
  gwmi Win32_CDROMDrive
  で済むと思うけど.
  ComponentsUSBと同じものを拾うとしたら, Win32_PnPEntityから.
  それっぽい文字列になってるものを選りすぐるとか.
  そういう泥臭いのしかないんじゃないかなぁ.
  gwmi Win32_PnPEntity | ? { $_.Description -match "HID|USB|マウス" }
  しかしなんでmsinfo32の機能縮小したんだろね.

  375 :369:2010/06/28(月) 17:46:44 ID:F78fsBFc
  >>374
  確かに機能縮小は謎ですね・・.
  PowerShellはあまり使った事ありませんが.
  コマンドまで書いていただいたので地道に勉強してみます.
  ありがとうございました.

  376 :名無し~3.EXE:2010/06/30(水) 19:30:37 ID:YR7y5Xjc
  MiB=メンインブラック.
  http://ja.wikipedia.org/wiki/%E3%83%A1%E3%83%B3%E3%83%BB%E3%82%A4%E3%83%B3%E3%83%BB%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF

  377 :名無し~3.EXE:2010/07/01(木) 03:20:44 ID:QN9kIZnS
  メビバイト.

  378 :名無し~3.EXE:2010/07/01(木) 10:28:01 ID:XJLs82t6
  WSHやPowerShellでは何てことないのにコマンドプロンプトからだとかなり手間かかるのに.
  ユーザシェルフォルダーの実パス取得があるな.

  379 :名無し~3.EXE:2010/07/01(木) 15:29:42 ID:MJ7cvx7N
  そんな簡単なことにかなり手間がかかるとは.

  380 :名無し~3.EXE:2010/07/04(日) 19:32:54 ID:Us0ZSBPD
  >>378
  「教えてください」の婉曲話法?

  381 :名無し~3.EXE:2010/07/06(火) 08:16:48 ID:rSqQSwGr
  >378
  VBScriptファイル(WSH)側で実パス取得〜Echoメソッドでコンソール出力し,
  その結果をバッチファイル(コマンドプロンプト)側で環境変数に入れるのが,
  やはり無難だろうね. Windows9x系では使えない方法だが.

  382 :名無し~3.EXE:2010/07/06(火) 20:51:35 ID:/e4Hb8z4
  ファイル更新日時の秒まで表示する方法ってないですか?
  dirも昔に比べればだいぶ機能追加されたのに, これくらいの拡張機能は付けてくれてもいいのに. . .

  383 :名無し~3.EXE:2010/07/06(火) 21:48:04 ID:/FuRxImU
  はい.

  384 :名無し~3.EXE:2010/07/07(水) 03:57:50 ID:U5LqLdYh
  dirに求めるんじゃなくてファイルシステムに求めるもんだからなぁ.

  385 :名無し~3.EXE:2010/07/07(水) 07:48:21 ID:vgLuymmP
  ファイルシステムは秒の情報持ってるだろ.

  386 :名無し~3.EXE:2010/07/07(水) 10:38:35 ID:oGcD6RCh
  FATだと2秒単位だけどな.

  387 :名無し~3.EXE:2010/07/07(水) 10:57:56 ID:Om1IrP0e
  FAT16の場合だろ?

  388 :名無し~3.EXE:2010/07/07(水) 12:52:39 ID:h2MR7EZe
  FAT32は2秒.

  389 :名無し~3.EXE:2010/07/07(水) 13:37:57 ID:t9G7XhUG
  FAT12/16/32は秒の情報を5ビットで持ってるから2秒単位だったな.
  exFATは10ミリ秒単位で秒を記録できるようになったらしいが.

  390 :名無し~3.EXE:2010/07/07(水) 14:54:27 ID:6szdPZ9L
  ファイル更新日時の2秒まで表示する方法ってないですか?
  dirも昔に比べればだいぶ機能追加されたのに, これくらいの拡張機能は付けてくれてもいいのに. . .

  391 :名無し~3.EXE:2010/07/07(水) 15:15:19 ID:xJAkUjN5
  「秒とかバイトとか, 細けえことはどうでもいいんだよ」というのが.
  MSの設計思想じゃないのか?
  エクスプローラでのファイルサイズは, キロバイト単位でしか出ないし.
  何?プロパティ?ファイルが1000個あったらどーすんだ?
  あれが「人に優しいUI」だと思ってるのかね.
  んでもって馬鹿企業は, フリーソフト導入一切禁止とくるからな. w.

  392 :名無し~3.EXE:2010/07/07(水) 20:19:49 ID:h2MR7EZe
  PowerShell なら 0.1 マイクロ秒まで表示できるな.

  393 :名無し~3.EXE:2010/07/07(水) 20:23:57 ID:h2MR7EZe
  でも精度的にはミリ秒までかな.

  394 :名無し~3.EXE:2010/07/07(水) 20:45:40 ID:c7nJp2FA
  そうかPowerShellがあったなぁ.
  ・・・出たての頃インスコしただけで難しそうで即挫折したけどがんばって勉強しようかなぁ. . .

  395 :名無し~3.EXE:2010/07/07(水) 20:57:04 ID:c7nJp2FA
  あと思い出したけど, NTFSのマルチストリームの情報を扱う手段も.
  ぜんぜん提供されないね. エクスプローラとかGUIでもそうだけど.
  いちおうdirでは見れるようになったけど何か中途半端な扱いだし.
  そもそもdirでもエクスプローラでも何でもそうだけど,
  ファイルのサイズとして表示する数字の中に代替ストリームの.
  サイズが含まれてないってすごく変だけど, それすら改善する気は.
  ないのかなぁ. . .

  396 :名無し~3.EXE:2010/07/07(水) 21:08:16 ID:G5zQV+Xi
  パフォーマンスのとてつもない劣化と引換の改善なんか誰がやるか.

  397 :名無し~3.EXE:2010/07/07(水) 21:26:40 ID:c7nJp2FA
  dirで/rの有無で比べるくらいだとそんなに劣化してないっぽいけどねぇ.

  398 :名無し~3.EXE:2010/07/08(木) 01:53:36 ID:VY4uFioD
  cygwin入れといて.
  ls -l --time-style=full-iso

  399 :名無し~3.EXE:2010/07/08(木) 10:21:39 ID:WJ0dgMNJ
  powershellでdirとやっても秒が出ないが, どうやるの?

  400 :名無し~3.EXE:2010/07/08(木) 13:17:45 ID:A4sgn4ig
  パソコンド素人なんですけど, コマンドライン等の勉強したいんですが, いい教科書等ありますか?

  401 :名無し~3.EXE:2010/07/08(木) 15:56:59 ID:YFxuaHp+
  ド素人はなにがやりたくてコマンドラインを使おうと思ったの?

  402 :名無し~3.EXE:2010/07/08(木) 18:40:56 ID:mSeEMGGW
  標準MS-DOSハンドブック.

  403 :名無し~3.EXE:2010/07/08(木) 20:37:56 ID:hO02yzdC
  >>401
  パソコンがド素人ってだけでワークステーションには習熟してるかもしれないじゃないか.

  404 :名無し~3.EXE:2010/07/08(木) 21:08:31 ID:rnHHmOkM
  >>395, 397
  お前リパースポイントと代替データストリーム混同してないか.

  405 :名無し~3.EXE:2010/07/08(木) 22:09:58 ID:9JFP55i9
  >>404が混同してる悪寒.

  406 :名無し~3.EXE:2010/07/09(金) 00:19:41 ID:Iz5FPOV3
  >>399
  ls | select {$_.Name}, {$_.LastWriteTime.ToString("o")}

  407 :名無し~3.EXE:2010/07/09(金) 01:16:52 ID:YBwYJTPj
  >>401-402-403
  何がしたいと言う訳では無いのですが,
  時間に余裕も出て来たので, 何か勉強しようかなと思いまして.
  どうせなら全く分からないものでもしてみようかと.

  408 :名無し~3.EXE:2010/07/13(火) 14:03:52 ID:Idvtsd89
  確かにVista/7だとmountvolコマンドがアクセス権絡みの問題で使い物にならないわ.

  409 :名無し~3.EXE:2010/07/14(水) 00:48:10 ID:18dmiFV+
  >>407
  教科書やドリルみたいなの買うと課題の不毛さに後悔するから.
  技術評論社のポケットリファレンスシリーズみたいな.
  手元に置いてパッと引けるようなのが一冊あると便利.
  でも先にコマンドを使う目的を見つけた方がいいと思うよ.
  目的がないと使い道がないから学んでも頭に入らないと思う.
  「毎日毎日手作業でファイルコピーしてるけど面倒くさくて嫌になった」
    [下矢印]
  「なんか金のかからない方法で自動化したい」
    [下矢印]
  「コピーコマンドを連ねてバッチファイルを作ればできるらしい」
    [下矢印]
  「じゃあまずコピーコマンドってのが何なのか知ろう」
  みたいにさ.

  410 :名無し~3.EXE:2010/07/14(水) 02:32:26 ID:VDWtT12a
  それだと逆引き系のリファレンスgだな.

  411 :名無し~3.EXE:2010/07/14(水) 11:48:41 ID:o241LDmC
  先日環境をXPから7に移したんですが, XPには無くて7にはあるコマンド類または.
  その逆を解説したようなサイトがあれば教えてください.
  別に全コマンドの解説でもかまいません.

  412 :名無し~3.EXE:2010/07/14(水) 12:27:19 ID:o241LDmC
  ちなみにWindows7にはXPにあったntcmds.chmのようなのは無いんでしょうか?

  413 :名無し~3.EXE:2010/07/14(水) 15:15:12 ID:8OLeN+Q5
  >>409
  知りたい機能だけ調べるってやり方だと,
  知ってると便利な機能や小技を見落としたままってことがあるんだよな.

  414 :名無し~3.EXE:2010/07/14(水) 15:38:45 ID:DWnN3+Gm
  >>412
  http://support.microsoft.com/kb/304718/ja
  ここから抜け.

  415 :名無し~3.EXE:2010/07/14(水) 20:50:55 ID:o241LDmC
  >>414
  Win7とは結構違う模様.

  416 :名無し~3.EXE:2010/07/14(水) 22:23:30 ID:khPkUWCA
  たしかに同意.
  今日びのWindowsのコマンドプロンプトの存在意義って, どっちかっつーと.
  なんかニッチな理由とか事情があって使うニッチな手段って感じのものだから,
  具体的な利用目的もなしにゼロから勉強がしたいからって学ぶんであれば,
  VBSとかの高機能で汎用的なスクリプト言語やJavaとかC++とかの開発言語を.
  勉強したほうが使い道広くて楽しいと思う.
  あと, コマンドの世界って, シロート目にはけっこう複雑そうに見えるかもしれないけど.
  それほど奥行きある世界じゃないから, そういう他の言語を触ったことある人なら.
  すぐに使えるようになるし.

  417 :名無し~3.EXE:2010/07/14(水) 22:39:46 ID:DWnN3+Gm
  Windows Command Reference
  http://www.microsoft.com/downloads/details.aspx?familyid=5fb255ff-72da-4b08-a504-1b10266cf72a&displaylang=en

  418 :名無し~3.EXE:2010/07/15(木) 00:24:52 ID:9HG2F3kZ
  俺の時代はこれが評判よかったな.
  http://bookweb.kinokuniya.co.jp/htm/4797306580.html
  当時のこの手の書籍の中では頭抜けてマニアックで面白かった.
  もう内容古いから探して入手するほどの価値ないだろうけど.

  419 :名無し~3.EXE:2010/07/15(木) 00:58:11 ID:+yt3bVbq
  NTナツカシス. w.
  俺もそういうのいっぱい買ったわー.
  >>411
  [スタート]->[ヘルプとサポート]あたりで「リファレンス」で検索すると.
  コマンドラインのリファレンスを呼び出せない?
  XPには標準でそういうのがあるよ.
  無料だし構文や使用例も載っててヒョイと引くのに便利.

  420 :名無し~3.EXE:2010/07/15(木) 14:58:19 ID:8KdjHHcI
  >>411
  http://technet.microsoft.com/en-us/library/cc754340(WS.10).aspx

  421 :名無し~3.EXE:2010/07/28(水) 18:19:36 ID:e7q9P674
  コマンドプロンプトで 「@」 てのは どういう意味, 用法で使いますか.

  422 :名無し~3.EXE:2010/07/28(水) 19:04:26 ID:ZQnjYQxV
  >>421
  ファイル名として使用できる文字です.
  またバッチファイルでコマンドの前に記入すると一時的にコマンドエコーをOFFにできます.
  この機能が実装される前はバッチファイルを実行すると echo off だけは必ず表示されてしまいました.
  また一部のプログラムではレスポンスファイルを指定するために利用されていましたが.
  これは各プログラムの独自仕様にすぎません.

  423 :421 です:2010/07/28(水) 20:05:36 ID:e7q9P674
  >>422
  早速のご回答ありがとうございます.
  ちょっと時間を掛けて理解してみます.

  424 :名無し~3.EXE:2010/07/29(木) 02:33:02 ID:VEGuyEZw
  @@@@@@@@@@@

  425 :名無し~3.EXE:2010/07/29(木) 17:14:29 ID:GRiVPKFE
  コマンドラインでループを見たくない時.
  for /f %i in ('dir /b') do @(echo %i | find "hoge")
  よくこんな風にブロックの前に付けて使う.

  426 :名無し~3.EXE:2010/08/05(木) 18:43:52 ID:IZFsq8v1
  コマンドプロンプトでPATH文字列から最後のフォルダ名のみ取得する方法ないですか?
  例.
  c:\hoge\piyo\fuga -> fuga
  って感じです.
  よろしくお願い致します.

  427 :名無し~3.EXE:2010/08/05(木) 20:29:51 ID:5Vz2vpqJ
  >>426
  >>281

  428 :名無し~3.EXE:2010/08/05(木) 23:12:58 ID:IZFsq8v1
  >>427
  ありがとうございます.
  >>281 難しいですねぇ・・・・.
  理解するまで20分ぐらいかかった気がします・・・.
  hoge\piyo\fuga\
  で&で繋いで連続置き換えした場合.
  hoge\ -> hoge に.
  piyo\ -> piyo に.
  fuga\ -> fuga に.
  それぞれ置き換えられて, それが上書きされ続けるから.
  fuga が最終的な結果として残るんですね・・・.
  Linuxなら.
  $ basename $PWD
  だけでいけるんすけどね・・・. Batは大変ですねぇ・・・.

  429 :名無し~3.EXE:2010/08/05(木) 23:49:15 ID:5Vz2vpqJ
  >>428
  GnuWin32 の basename.exe を使うか PowerShell で.
  (New-Object System.IO.DirectoryInfo c:\hoge\piyo\fuga).Name
  とするかだな.

  430 :名無し~3.EXE:2010/08/06(金) 00:54:06 ID:sHYY4gZ4
  >>429
  いや, わざわざそんな書き方せんでもgi(Get-Item)  使えばいいだろ. w.

  431 :名無し~3.EXE:2010/08/06(金) 08:07:40 ID:UgjC01NQ
  >>430
  存在しないパスだと実行できないでしょ.

  432 :名無し~3.EXE:2010/08/06(金) 14:58:00 ID:JpyntOt0
  >>428
  > hoge\piyo\fuga\
  > で&で繋いで連続置き換えした場合.
  >
  > hoge\ -> hoge に.
  > piyo\ -> piyo に.
  > fuga\ -> fuga に.
  > それぞれ置き換えられて, それが上書きされ続けるから.
  > fuga が最終的な結果として残るんですね・・・.
  そうじゃなくて>>281.

  433 :名無し~3.EXE:2010/08/06(金) 16:04:26 ID:P08HpVjX
  最後に\が付いてるとNGだけどな.

  434 :名無し~3.EXE:2010/08/06(金) 21:37:36 ID:vLVu3Wuc
  >>431
  そこまで求められてるのかわからんが, それでも Split-Path -Leaf 程度でいいと思う.

  435 :名無し~3.EXE:2010/08/19(木) 00:49:29 ID:AKG7vMGF
  おすすめのコマンド教えろ.

  436 :名無し~3.EXE:2010/08/22(日) 22:19:40 ID:SHfyvJzx
  cls
  オヌヌメ.

  437 :名無し~3.EXE:2010/09/08(水) 11:47:09 ID:ExZrz259
  専ブラにタスクトレイに収納はあるが, タスクバーに最小化がないから.
  Alt+Space Nで強引にやるという方法を思いついたんだがどうやって再現すればいいのかな?
  最小化で起動とかじゃなくて現在開いてる専ブラ『を』最小化させたい.

  438 :名無し~3.EXE:2010/09/08(水) 19:50:56 ID:IChAHWQA
  test1.txt
  test2.txt
  test3.txt
  ・.
  ・.
  ・.
  を.
  for %%I in (*.txt) do rename %%I n%%I
  ってやると,
  他は ntest*.txt になるのに, 最初のtest1.txtだけが.
  二度処理されて, nntest1.txtになるんだけど, 何故に?
  ちなみに.
  for %%I in (*.*) do rename %%I n%%I
  だとこれは起きない.

  439 :名無し~3.EXE:2010/09/08(水) 22:10:31 ID:ESa0VeB7
  for %%I in (*.txt) do rename %%I n%%I & sleep -n 10

  440 :名無し~3.EXE:2010/09/08(水) 22:14:09 ID:5DxQlPUb
  >>438
  ならねーよ@Win7x64

  441 :名無し~3.EXE:2010/09/09(木) 17:52:31 ID:C/P/KViw
  >>440
  おや, 汲み取り式便所のカマドウマさん, お久しぶりです.
  すみません,
  atest.txt
  btest.txt
  ctest.txt
  で, もっかい試して下さい.

  442 :名無し~3.EXE:2010/09/12(日) 03:40:50 ID:O8l7L6qY
  >>441
  ならねーよ@FAT

  443 :名無し~3.EXE:2010/09/12(日) 22:37:50 ID:9HrE/Va3
  おや, カメムシさん. こんばんは.
  7の64でお試し下さい.
  バグ見つけるのって, そんなに.
  珍しいのか?

  444 :名無し~3.EXE:2010/09/13(月) 01:41:02 ID:307mnpFn
  誰と戦ってるの?

  445 :名無し~3.EXE:2010/09/14(火) 00:25:01 ID:g2qAWX+s
  >>435
  リファレンスくらい買えよ.
  >>444
  バグに決まってんだろ. w.

  446 :名無し~3.EXE:2010/09/14(火) 03:22:10 ID:OWWZ72hR
  NTFSの仕様だろ.

  447 :名無し~3.EXE:2010/09/14(火) 03:39:20 ID:I0Da5NkL
  これでなった.
  for /l %I in (0, 1, 9) do echo a>>test%Itxt
  for /l %J in (0, 1, 9) do for %I in (*.*) do ren %I %J%I

  448 :名無し~3.EXE:2010/09/15(水) 11:46:31 ID:eJPlDDZ+
  コマンドプロンプトからファイルサーバの認証通すコマンドはないでしょうか?
  すみません, 上手く言葉で伝えられないので, 現状とやりたいことを書きます.
  自端末からは自分のドメインアカウントでアクセスします.
  *(自端末)-->(ファイルサーバ)
  サーバ作業ではサーバのAdministratorでリモート接続しています.
  *(自端末)-->(サーバ)
  サーバ作業でファイルサーバにアクセスする必要が生じたため,
  サーバからファイルサーバへは自分のドメインアカウントでアクセスします.
  *(自端末)-->(サーバ)-->(ファイルサーバ)
  このとき, エクスプローラでファイルサーバを開く場合は,
  ダイアログでユーザ名とパスワードを聞かれるので問題ありません.
  また, そのとき認証した後であれば,
  > dir "\\fileserver\folder"
  で普通にアクセスできるのですが,
  エクスプローラで一旦開いてダイアログで認証した後でないと,
  「ログオン失敗: ユーザー名を認識できないか, またはパスワードが間違っています. 」
  でエラーとなってしまいます.
  コマンド実行時にダイアログ表示でもコマンド上でIDとパスワードを入力でもよいので,
  コマンドからファイルサーバへ認証されたいです.
  以上, よろしくお願いいたします.

  449 :名無し~3.EXE:2010/09/15(水) 11:58:35 ID:LDzuokxr
  net use

  450 :名無し~3.EXE:2010/09/23(木) 12:26:56 ID:ENQspaai
  テキストファイル内を検索し, 特定の文字列を含む行をすべて抽出して別のログファイルに.
  書き出すというバッチ処理をしたいのですが, 書き出す段階で詰まってしまいました.
  「文字列を含む行が一切見つからなければ, 何もしない」
  「文字列を含む行が一つ以上見つかり, かつ書き出し先のログファイルが存在しなければ新規に作成」
  「文字列を含む行が一つ以上見つかり, かつ書き出し先のログファイルが既に存在していれば追記」
  という風に処理したいのですが, 条件分岐をどのように記述すればいいかわかりません.
  知恵を貸してください, お願いします.

  451 :名無し~3.EXE:2010/09/23(木) 13:18:27 ID:KL5j0g2H
  grepの結果をファイルに書き出してサイズが0なら削除でいいんじゃね?

  452 :名無し~3.EXE:2010/09/23(木) 14:27:58 ID:qg7tCsFX
  >> で追記書き出しすればファイルがなくても勝手に新規作成してくれる.
  ファイルがあればもちろん追記.
  条件分岐いらんでしょ.

  453 :名無し~3.EXE:2010/09/23(木) 17:34:11 ID:ENQspaai
  >>451-452
  文字列を含む行が一切見つからず, かつ書き出し先のログファイルが存在しなければ.
  空のログファイルを作成をせずに, そのまま処理を終了したいです.
  やはり一度ログファイルを作成して, ファイルサイズを判定して空なら削除という.
  処理をするしかないですか?
  >> で追記処理を始める前に, findstrで文字列が見つかったかどうかで条件分岐できるのが理想です.

  454 :名無し~3.EXE:2010/09/23(木) 17:44:28 ID:3l4EZa2f
  じゃあそうしろ.

  455 :名無し~3.EXE:2010/09/23(木) 21:35:10 ID:KL5j0g2H
  仕様上, 標準出力をファイルにリダイレクトするなら, 結果が空でもファイルは作られる.
  だからファイルサイズで分岐してサイズが0なら削除すりゃいいと書いた. 結果的に同じになるから.
  対象ディレクトリに一瞬でもファイルが作られるのが嫌なら,
  %tmp%にでも吐きだしてからサイズ判断してコピーすりゃいい.
  それすら嫌なら何らかのスクリプト言語でも使っとけ.

  456 :名無し~3.EXE:2010/09/23(木) 22:08:13 ID:csJcKMrT
  forつかえばいいよ.
  for /f %%i in ('コマンド') do echo %%i>>hoge.txt
  なければつくられないよ.

  457 :名無し~3.EXE:2010/09/23(木) 23:49:49 ID:DcnPYhE5
  俺も一旦tempfileに書き出した後にhitした場合だけlogファイルにリダイレクト(>>)するなり.
  連結するなりした方が良いと思うがどうしてもというのなら,
  OSによってerrorkevelの数値が異なってくるかも知れないが, win2k以降のfindstrだと.
  hitしたか, hitしなかったかは, errorlevel(又は%errorlevel%環境変数も使える)に通知される.
  詳しくは, if /?で.
  rem *** 一発目のfindstrは判定だけして結果は捨てる. hitしたら改めてfindstrをやり直す ***
  findstr >nul
  if errorlevel 1 (
  echo no_hit
  ) else (
  echo hit
  )

  458 :名無し~3.EXE:2010/09/24(金) 21:33:40 ID:3UIxp3Zh
  >>455-457
  ありがとうございます, 一時ファイル出力して結合という方法があることをすっかり見落としてました.
  検索した対象のファイル名+ヒットした各行という形式のログファイルにしたかったので.
  直接出力してファイルサイズ判定は都合が悪かったのですが, この方法なら目的を果たせます.
  重ねてありがとうございます.

  459 :名無し~3.EXE:2010/10/08(金) 09:52:55 ID:uwm9Vwqh
  うーん, 何かのプロセスが掴んでて削除できないファイルがある.
  openfiles /Local on
  して再起動して確認しても誰も掴んでない.
  openfiles /Query /V
  ってひょっとしてサービスプロセスが握ってるのは表示されない?
  具体的にいうと,
  TracサーバのApacheプロセスがlogファイル握ってるのに,
  openfilesで確認できない.
  サービスプロセスのも表示できて且つ強制的にdisconnectさせれるようなコマンドない?

  460 :名無し~3.EXE:2010/10/09(土) 00:51:26 ID:t24JYLHL
  filemon で調べられないんでしたっけ.
  そういう場合, リブートする方が早いことが多いし, 面倒がない.
  apache 数分止まるけど.

  461 :名無し~3.EXE:2010/11/15(月) 11:23:52 ID:cFdTFkqY
  XP以降ではatコマンドでなくschtasksを使うべきと書いているページがあるのですが,
  atでも問題ないのでしょうか?調べて, 結局, GUIのタスクを利用したのですが,
  テキストファイルを関連付けてあるemeditorでなく, システムのメモ帳で開いてしまいます.
  コマンドラインでスケジュールすれば特定のエディターを指定できるのでしょうか?

  462 :名無し~3.EXE:2010/11/15(月) 13:04:04 ID:iSeO6BmP
  好きな方選べばよろし.
  エディタのexeの引数にファイル名を指定すればいいだけ.

  463 :名無し~3.EXE:2010/11/15(月) 16:18:59 ID:B3yLO2jo
  XPはまだ使えるがVista以降はまあ使えんよ.

  464 :名無し~3.EXE:2010/11/15(月) 22:01:26 ID:x9QGtyJG
  ATコマンドで登録したジョブはSYSTEM権限で実行されるので.
  ユーザプロファイルに情報を登録するようなジョブや.
  ネットワーク上の共有フォルダに接続するようなジョブなどの場合.
  かなり面倒くさい細工をしなくちゃならない(一応できなくはない)
  SCHTASKSはジョブの実行者を設定できるので.
  ローカルの単なるユーザでもドメイン管理者アカウントでも.
  好きなユーザの権限で実行できる利点があるが.
  User権限でログインしてる時にSCHTASKSコマンドを実行すると.
  PowerUserやAdministratorなど上位の権限ではジョブを実行できない.
  (ジョブを仕掛けても失敗する)
  XPの出た当初SCHTASKSは管理者アカウントにログオンし直さなくても.
  管理者権限でコマンドやファイルを実行できる方法として挙げられていたが.
  リソキの隅っこに「実はできないんだな(テヘ」と書いてあってムキーッとなった.
  雑談はさておき>>461
  462氏の言わんとしているのは.
      emeditor.exe (ファイル名)
  または.
      (フルパス)\emeditor.exe (ファイル名)
  という指定をする事で目的のファイルをemeditorで開けると言ってくれている.
  ATコマンドで実行する場合は /interactive オプションつけれ.
  そうしないと実行しても自分にゃ見えない.

  465 :名無し~3.EXE:2010/11/16(火) 00:00:16 ID:A8alUq5F
  schtasksでできなくてatを使うしかないってことは何かあったかな?

  466 :名無し~3.EXE:2010/11/16(火) 01:09:01 ID:2nYdeYXU
  Vistaでat/interactiveは使えなくなった.

  467 :名無し~3.EXE:2010/11/16(火) 16:05:31 ID:TDvzZuuK
  どんどん使えない仕様になるな.

  468 :461:2010/11/16(火) 17:20:16 ID:O1xaQ4cs
  >>462 >>464  サンクスです. いけますた.

  469 :名無し~3.EXE:2010/11/23(火) 20:55:37 ID:vYKBvqL/
  CSVファイル中の各フィールドを抽出して一端変数に格納し, それを引数として.
  実行ファイルに渡すという処理をバッチでやろうとしています.
  サンプルとして以下のようなfor文を書きました.
  --------------------------------------------------
  for /F "USEBACKQ tokens=1-6 delims==, " %%A in ("C:\test\hoge.csv") do (
  echo "%%A" "%%B" "%%C" "%%D" "%%E" "%%F"
  hogehoge.exe "%%B" "%%A" "%%D" "%%F" "%%C%%D" "%%E"
  )
  --------------------------------------------------
  CSVファイルの中身が.
  test1, test2, test3, test4, test5, test6
  のように連続して並んでいる場合は, 問題なく変数%%A〜%%Fに順序良く格納されるのですが.
  test1, test2, , test4, test5, test6
  のように間に歯抜けのフィールドがあると, それより後ろのフィールドが繰り上がって.
  "test1" "test2" "test4" "test5" "test6" ""
  のように左詰めで格納されてしまいます. これを.
  "test1" "test2" "" "test4" "test5" "test6"
  といったように, 歯抜けのフィールドはそのまま変数の中身もブランクに.
  もしくは次善策として半角スペースを代わりに格納するようにしたいのですが.
  for文以外の方法も含め, 何かやり方はありますか?

  470 :名無し~3.EXE:2010/11/23(火) 21:28:41 ID:HsWf4XRb
  FOR /L の方が適切なんでない?

  471 :名無し~3.EXE:2010/11/23(火) 21:29:23 ID:HsWf4XRb
  ごめん.
  よく読んでなかった.
  CSXの中身か.

  472 :名無し~3.EXE:2010/11/23(火) 22:54:24 ID:ogLcfvq+
  WSH の方が適切なんでない?

  473 :名無し~3.EXE:2010/11/23(火) 23:08:05 ID:e+Jq/zMX
  テキスト整形が得意 or CSVの読み書きのインターフェイスのあるスクリプト使う方が楽だよ.

  474 :名無し~3.EXE:2010/11/24(水) 02:15:15 ID:9z2PCu2J
  最初から空白を付加したcsvを作るようには出来ないのかな?
  出来ないのなら後から整形すればいい.
  もちろん一旦作業ファイルを作らずとも二重forループで一気に書く方が良いかも知れんが.
  setlocal EnableDelayedExpansion
  @echo off
  echo.>%temp%\tmp.csv
  for /f "usebackq tokens=1* delims=" %%i in ("c:\hoge.csv") do (
  set line=%%i
  set line=!line:, , =, , !
  echo !line! >> %temp%\tmp.csv
  )
  endlocal
  for /f "usebackq tokens=1-6 delims=, " %%i in ("%temp%\tmp.csv") do (
  echo %%i %%j %%k %%l %%m %%n
  )
  rem del %temp%\tmp.csv

  475 :名無し~3.EXE:2010/11/24(水) 02:34:19 ID:9z2PCu2J
  先頭がNULLの場合が抜けていた.
  最初のループ中でecho出力する直前に1行追加.
  if "!line:~0, 1!" equ ", " set line= !line!

  476 :名無し~3.EXE:2010/11/24(水) 02:59:52 ID:9z2PCu2J
  ああーダメだ. 全部やり直し.
  下から3行目は環境変数oに半角スペースを代入してくれ(投稿するときに削られてるだろうから)
  @echo off
  setlocal EnableDelayedExpansion
  echo.>%temp%\tmp.csv
  for /f "usebackq tokens=1* delims=" %%i in ("c:\hoge.csv") do (
  set line=%%i
  set line=!line:, = , !
  for /f "usebackq tokens=1-6 delims=, " %%j in (`echo !line!`) do (
  set j=%%j
  set k=%%k
  set l=%%l
  set m=%%m
  set n=%%n
  set o=%%o
  if "!j!" neq " " set j=!j:~0, -1!
  if "!k!" neq " " set k=!k:~0, -1!
  if "!l!" neq " " set l=!l:~0, -1!
  if "!m!" neq " " set m=!m:~0, -1!
  if "!n!" neq " " set n=!n:~0, -1!
  if "!o!" equ "" set o=
  echo '!j!' '!k!' '!l!' '!m!' '!n!' '!o!'
  )
  )

  477 :名無し~3.EXE:2010/11/24(水) 18:20:36 ID:ISHB697F
  こりゃだめだ.

  478 :名無し~3.EXE:2010/11/24(水) 18:41:39 ID:TgFKsTt0
  "test1", "test2", "", "test4", "test5", "test6"
  みたいなCSVにしときゃ済む話では?

  479 :名無し~3.EXE:2010/11/24(水) 20:39:53 ID:TgFKsTt0
  無理やり前述のフォーマットにしてから読むパターン.
  @echo off
  setlocal enableextensions enabledelayedexpansion
  for /f "usebackq delims=" %%i in ("C:\test\hoge.csv") do (
  set t=%%i
  set t="!t:, =", "!"
  for /f "usebackq tokens=1-6 delims=, " %%a in (`echo !t!`) do echo %%~a, %%~b,
  %%~c, %%~d, %%~e, %%~f
  )

  480 :名無し~3.EXE:2010/11/24(水) 21:56:08 ID:ISHB697F
  a, "b, c", d
  とかでもうまくいくか?

  481 :名無し~3.EXE:2010/11/24(水) 22:00:56 ID:TgFKsTt0
  せめて試してから聞けよ.

  482 :名無し~3.EXE:2010/11/24(水) 22:35:15 ID:w7d1oTak
  >>469です.
  ID:TgFKsTt0さん, その発想はなかったです. >>479の方法ですと歯抜けフィールドは.
  nullとして変数に格納されるので特にいい感じです.
  ID:9z2PCu2Jさんもありがとうございます.
  ですがいずれの場合でも, 遅延環境変数のためCSVのフィールド内に半角の!が.
  含まれていると詰みますね. 含まれる可能性があるかないかは現時点で何とも言えないのですが.
  しかしデリミターで抽出された対象がnullだと, 後ろの対象を繰り上げて変数に格納する.
  というこのバッチの挙動が今一つ腑に落ちないのですが, どういった理由からこのような.
  仕様になったのでしょうか?
  ちなみここのところの長期規制につき, 代理レスを依頼してるためIDが一定しないと思います.

  483 :名無し~3.EXE:2010/11/24(水) 22:40:05 ID:TgFKsTt0
  >>482
  そもそもデフォルトのデリミタである空白で一つ一つ区切られるような仕様だったら.
  えらく使用に困る代物だろ?
  連続した区切り文字は一つの区切りとして考えるのは当然の流れ.

  484 :名無し~3.EXE:2010/11/24(水) 23:08:48 ID:TgFKsTt0
  遅延展開が使えないならこんなのでもいいんじゃないのかね.
  @echo off
  for /f "usebackq delims=" %%i in ("csv.txt") do (
  call :sub %%i
  )
  goto :eof
  :sub
  set t=%*
  set t="%t:, =", "%"
  for /f "usebackq tokens=1-6 delims=, " %%a in (`call echo %%t%%`) do echo
  %%~a, %%~b, %%~c, %%~d, %%~e, %%~f
  goto :eof

  485 :482:2010/11/24(水) 23:51:10 ID:iNcoiXRQ
  >>483-484
  ktkr!!!
  ありがとうございます, おかげさまで望みどおりの動作になりました.
  そういえばこの遅延環境変数回避のテクニック, 自分も以前使ったことがあるのに忘れてました;
  連続した半角スペースが全部デリミタとして機能したら問題だというのは分かりますが.
  繰り上げると今回のCSVのように, 何番目の要素かということが重要な意味を持つ場合に.
  問題になる気がします. つまるところバッチが使われるシーンではそういう例は稀なのでしょうか.
  私は文字列操作の経験があまりないので, 今後お話しいただいた内容を頭の片隅に.
  入れときながら注意していこうと思います, ありがとうございました.

  486 :名無し~3.EXE:2010/11/26(金) 03:25:44 ID:3vgrgtW/
  (`call echo %%t%%`) callは不要.

  487 :名無し~3.EXE:2010/11/28(日) 15:33:50 ID:XlH6ZNHD
  テキストファイルの中身を探索して, 正規表現に「合致した範囲だけ」を抽出する方法ってありますか?
  findstr /r 文字列 パス.
  で正規表現探索は出来るのですが, 出力されるのが行単位なので, さらに各行内の.
  正規表現にマッチした部分まで絞り込んで抽出したいのです.

  488 :名無し~3.EXE:2010/11/28(日) 23:41:54 ID:kjMh0K6B
  つwsh

  489 :名無し~3.EXE:2010/12/13(月) 22:48:34 ID:KFG9s2Ni
  [コラム]Windows XPスマートチューニング (14) 「reg.exe」の使い方を覚える その1 | パソコン | マイコミジャーナル.
  http://journal.mycom.co.jp/column/winxp/014/index.html
  [コラム]Windows XPスマートチューニング (14) 「reg.exe」の使い方を覚える その1 | パソコン | マイコミジャーナル.
  http://journal.mycom.co.jp/column/winxp/014/index.html
  環境変数を埋め込むバッチファイルを作成できるか - Windows XP - 教えて!goo
  http://oshiete.goo.ne.jp/qa/3886755.html
  システム環境変数が保存されない? - Windows XP - 教えて!goo
  http://oshiete.goo.ne.jp/qa/1534071.html
  PATHのリフレッシュ方法はにでしょうか? - Windows系OS - 教えて!goo
  http://oshiete.goo.ne.jp/qa/1939243.html
  教えて!goo[システム環境変数 レジストリ]についての検索結果 ( 約36件中 1〜10件を表示 ) - 教えて!goo
  http://oshiete.goo.ne.jp/search_goo/result/?qatype=qa&st=all&sr=norm&tf=all&good=0&dc=10&type=html&code=utf8&MT=%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E7%92%B0%E5%A2%83%E5%A4%89%E6%95%B0+%E3%83%AC%E3%82%B8%E3%82%B9%E3%83%88%E3%83%AA

  490 :名無し~3.EXE:2010/12/13(月) 23:25:15 ID:EVo3YvrE
  どうでもいいが, 教えて, は最早サーチスパムだよな.

  491 :名無し~3.EXE:2010/12/18(土) 00:31:31 ID:mG6dcAQg
  echo パスを追加.
  reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session
  Manager\Environment" /v path /t reg_sz /d "%path%;c:\bin\uty"

  492 :名無し~3.EXE:2010/12/18(土) 17:34:22 ID:EcM8V9cL
  setx path "%path%;c:\bin\uty" /m

  493 :名無し~3.EXE:2010/12/22(水) 08:46:53 ID:HhLXioMQ
  windows7 64bitではntcmds.chmはどこに行ったんでしょうか.

  494 :名無し~3.EXE:2010/12/22(水) 13:52:27 ID:LoRW5TNX
  無くなった.
  しょうがないから自分で作った.

  495 :名無し~3.EXE:2010/12/22(水) 22:53:09 ID:XaXxiced
  http://technet.microsoft.com/en-us/library/bb490890.aspx

  496 :名無し~3.EXE:2010/12/23(木) 17:29:45 ID:9ROm8nmO
  質問です.
  type 初期化.txt |format G: /FS:FAT32 /V:DATA
  (echo DATA&echo y)|format G: /FS:FAT32 /V:DATA
  上は正常に終了するのに下は.
  ファイル システムの種類は FAT32 です.
  ドライブ G: の現在のボリューム ラベルを入力してください ドライブに無効なボリュー.
  ム ラベルを入力しました.
  となってうまくいきません. 理由を教えてほしいです.
  ただし, 初期化.txtの中身は.
  DATA
  y
  の2行(改行付き)です. お願いします.

  497 :名無し~3.EXE:2010/12/23(木) 19:38:03 ID:5eVdfHFt
  cmd /c "echo DATA&echo y"|format G: /FS:FAT32 /V:DATA

  498 :496:2010/12/23(木) 20:37:42 ID:9ROm8nmO
  >>497
  うまくいきました. cmd /c, 勉強してみます. ありがとうございました.
  聞いてみてよかったです. では.

  499 :名無し~3.EXE:2010/12/23(木) 22:12:25 ID:RnH41D1X
  初心者スレに書いたのですが, なにもレスが無かったので.
  こちらで質問させてください.
  以下のようなschtasksでタスクを作り, その日の01:13だけにR:\test.batを実行させるタスクを作りました.
  SCHTASKS /Create /SC ONCE /TN TESTJOB /TR R:\test.bat /ST 01:13
  R:\test.batがその日の01:13に実行されたのですが,
  タスクはスケジューラーでみると次回実行時刻が空白のまま残っています.
  タスクの実行後自動的にこのタスクを削除する指定はどうやるのでしょうか?
  タスクスケジューラーの設定をみると.
  「タスクの再実行がスケジュールされてない場合に削除されるまでの時間」という設定があって.
  この設定をどうやって, CLIで指定するかです.
  OSはWindows7 Ultimate 64bit

  500 :名無し~3.EXE:2010/12/23(木) 22:41:56 ID:5eVdfHFt
  >>496-497
  勉強するったって, 勉強しても無理だと思うぞ.
  ヒント1
  (echo DATA&echo y)|more>a.txt
  a.txtをメモ帳で開いて, 空白の有無をチェックしてみ.
  ヒント2
  (echo DATA&echo y&echo %%cmdcmdline%%)|more>a.txt
  なぜそうなるかこれで分る.

  501 :名無し~3.EXE:2010/12/23(木) 22:46:12 ID:5eVdfHFt
  >>499
  /?したら/zが目に付いたが?

  502 :名無し~3.EXE:2010/12/23(木) 22:52:20 ID:RnH41D1X
  >>501
  C:\>SCHTASKS /Create /SC ONCE /TN TESTJOB /TR R:\test.bat /ST 23:13 /Z
  エラー: タスク XML に必須の要素または属性が含まれていません.
  (40, 4):EndBoundary:
  C:\>
  /Kとかもやってみたしうまくいかない.

  503 :名無し~3.EXE:2010/12/23(木) 23:00:45 ID:izmRYVGw
  >>496
  こういう方法もあるぞ.
  echo Y|format g: /fs:fat32
  label g:DATA

  504 :496:2010/12/24(金) 00:26:20 ID:Gp00iisX
  >>500
  追加情報ありがとうございます.
  cmd /cを使わないとyだけがformatコマンドに送られるからだめなのと解釈したのですが,
  まちがいでしたか?
  ヒントは実行しましたが, すいません, 理解できませんでした. 難しいです.
  >>503
  レスありがとうございます. ですが, 1行目でエラーが出てしまいます.

  505 :503:2010/12/24(金) 00:51:21 ID:tS5P4SyW
  >>496 = >>504
  ごめん.
  1行目は,
  echo y|format g: (/q) /fs:fat32 /v:
  だった.
  2行目をなくすには.
  echo y|format g: (/q) /fs:fat32 /v:DATA
  だね.
  (Win7のcmd.exeとUSBメモリーで確認した)

  506 :名無し~3.EXE:2010/12/24(金) 00:56:06 ID:rJh8lKs2
  空白を_で表すと.
  DATA_
  y_
  になってるだろ?だからエラーになる.
  2つ目実行したら.
  DATA
  y
  C:\Windows\system32\cmd.exe /S /D /c" ( echo DATA & echo y & echo %cmdcmdline%
  )"
  つまり, パイプの前は(echo DATA&echo y)が( echo DATA & echo y )に編集されてサブシェルで実行されるってこと.

  507 :名無し~3.EXE:2010/12/24(金) 02:53:19 ID:rJh8lKs2
  >>502
  http://social.technet.microsoft.com/Forums/ja-JP/windowsvistaja/thread/9feb5243-1241-47bf-9d4c-0799b592132c/

  508 :名無し~3.EXE:2010/12/24(金) 02:57:38 ID:rJh8lKs2
  http://support.microsoft.com/kb/2004151

  509 :名無し~3.EXE:2010/12/24(金) 21:27:08 ID:Gp00iisX
  >>506
  たびたびありがとうございます. 理解しました!敗因はパイプとリダイレクトでは.
  挙動が違うことに気づかなかったことと, ヒントをコマンドプロンプトから実行した.
  ことです. 結果, こうなってしまって, わけがわからなくなりました.
  DATA_
  y_
  %"cmd.exe" /k "cd D:\TXT"%_
  %cmdcmdline%をググるか, ヒントをバッチで実行すれば済んだのですが.
  なさけないです. 丁寧な説明, ありがとうございます.
  >>505
  確認までしていただいて恐縮です. 情報提供不足でした. 実はGドライブには元から.
  ボリュームラベルがついているのですよ.
  その場合, Formatコマンドはラベルの再入力を求めるので, yだけではエラーになるのです.
  蛇足ですが, コマンドラインはPerlスクリプト内で使用しています. モジュールを組み込む.
  より, qx(コマンドライン)のほうが楽ですので. 筋が悪いですが(^^;)
  アドバイス, ありがとうございます.

  510 :名無し~3.EXE:2010/12/24(金) 22:22:09 ID:rJh8lKs2
  %%があったらバッチ.

  511 :496:2010/12/24(金) 22:52:47 ID:Gp00iisX
  >>510
  覚えておきます.

  512 :名無し~3.EXE:2010/12/26(日) 12:45:43 ID:ciLh5r7B
  SCHTASKS /Create /SC ONCE /TN TESTJOB /TR R:\test.bat /ST 01:13
  ユーザー名・パスワードとZ V1を付けたらうまくいった.
  SCHTASKS /Create /SC ONCE /TN TESTJOB /TR R:\test.bat /ST 01:13 /RU mona /RP
  password /Z /V1

  513 :名無し~3.EXE:2011/01/08(土) 00:25:22 ID:KRZHH0QO
  ドメインユーザのセキュリティタブの項目を追加するコマンドってありますか?

  514 :名無し~3.EXE:2011/01/08(土) 06:09:28 ID:uHaCk9v5
  if not match "%~1" *.txt echo %~1 is not text
  みたいな処理ってどう書けばいいの.

  515 :名無し~3.EXE:2011/01/08(土) 09:36:00 ID:UiJAiM7p
  if not "%~x1" == ".txt" (echo %~1 is not text)

  516 :名無し~3.EXE:2011/01/08(土) 14:51:51 ID:wFF3NM0U
  if /I not "%~x1" == ".txt" echo %~1 is not text

  517 :名無し~3.EXE:2011/01/08(土) 15:27:21 ID:MuSt9ita
  ワイルドカードや正規表現の一致のチェックするコマンドってないんだよな.
  一応検査対象の文字列をファイルに保存してfindstrすれば正規表現の方はできそうだけど.

  518 :名無し~3.EXE:2011/01/08(土) 15:56:23 ID:wFF3NM0U
  (echo %~1)|findstr ".txt$" && echo %~1 is not text

  519 :名無し~3.EXE:2011/01/12(水) 19:09:19 ID:PoyWM9uQ
  batファイルで.
  a.01
  a.02
  a.03
  といったバイナリファイルをまとめてドロップすると.
  copy /b "a.01"+"a.02"+"a.03" "a"
  という処理をさせたい(ファイル名はスペースを含んだりさまざまです)のですがどう書けばいいですか?
  ドロップするファイル群の名前はみんな同じかとか, 連番の拡張子かとかは人間側で判断しようと思っています.
  単純に入力部分にワイルドカードが使えるのかなと思ったのですが駄目でした.
  あとドロップで渡されたときのファイルの順番は必ずしもファイル名の昇順とは限らないんでしょうか.

  520 :名無し~3.EXE:2011/01/12(水) 22:59:55 ID:aRkUDzA8
  これはおまえら(含む俺)が大好きなforと遅延展開を活用して作るのにちょうどいい難易度の課題だな.
  ファイル名に空白文字入るかどうか, とか, 結合する順番は単純に文字列ソート順でいいのかどうか, とか,
  出力先のファイル名どう決めるか, とか, 最大ファイル数あるいは最長パス長どうするか, とか,
  仕様の細かい部分は考えるだけでカウパー出てきたぜ.

  521 :名無し~3.EXE:2011/01/12(水) 23:20:20 ID:NzY94YN0
  >>519
  copy /b + %* %~dpn1

  522 :名無し~3.EXE:2011/01/12(水) 23:24:44 ID:rNDzd7N5
  最大ファイル数とか, どうするかってどうにもならないでしょ.

  523 :名無し~3.EXE:2011/01/13(木) 01:31:36 ID:8DexkebC
  ruby -e "`copy /b #{ARGV.sort.join(' + ')} eroero.avi`" %*

  524 :名無し~3.EXE:2011/01/13(木) 09:44:27 ID:Cb6o+0JX
  for /f "delims=" %%I in ('dir /b /o-n %*') do copy /b + "%%~I" , , "%%~dpnI"

  525 :名無し~3.EXE:2011/01/13(木) 10:46:27 ID:Cb6o+0JX
  copy nul "%~dpn1"
  for /f "delims=" %%I in ('dir /b /o-n %*') do copy /b "%%~dpnI" + "%%~I"
  "%%~dpnI"

  526 :名無し~3.EXE:2011/01/17(月) 20:32:44 ID:cAtwP0h5
  dsquery group -name groupというコマンドを実行して,
  コマンド実行で返ってきた値が入っているか,
  IFで判定したいんですがどうやったらできますか?
  いろいろやってみたんですが, 全然うまくいかない・・・.

  527 :名無し~3.EXE:2011/01/17(月) 20:38:39 ID:Vn6Pawll
  for /f "delims=" %%I in ('dsquery group -name group') do echo %%I

  528 :名無し~3.EXE:2011/01/17(月) 21:26:49 ID:cAtwP0h5
  >527
  いけました!ありがとうございます.
  もう一点質問なんですが, inの中って変数展開できるんでしょうか?
  for /f "delims=" %%I in (dsquery group -name %%temp) do echo %%I
  みたいに記載すると, うまく展開されません.

  529 :名無し~3.EXE:2011/01/19(水) 13:10:47 ID:wn7tagK/
  %temp%

  530 :名無し~3.EXE:2011/02/13(日) 12:38:12 ID:xOI1nq+5
  LAN内のPCやプリンタ, ネットワーク機器のIPアドレスを.
  調べて一覧にするコマンドプロンプトのコマンドはありませんか?
  固定IPかDHCPから割り振られたIPか, わかると更に嬉しいです.

  531 :名無し~3.EXE:2011/02/13(日) 13:24:32 ID:qa6bFQMw
  こういう人がいるからいつまでたってもNetBIOSがなくならない.

  532 :名無し~3.EXE:2011/03/03(木) 05:16:29.94 ID:DEBzw2H3
  あるテキストファイル(hoge.txt)に, 数行の文字列があり, その最後の行に「空白行(改行のみの行)」が含まれています.
  この最後の空白行だけを, コマンドで削除したいんですが, どのようなコマンドになるでしょうか?
  よろしければご教授願います・・・.

  533 :名無し~3.EXE:2011/03/03(木) 06:55:03.72 ID:Ir7qnM+/
  for /f "usebackq delims=:" %%i in (`findstr /r /n "." "hoge.txt"`) do @set
  n=%%i
  (for /f "usebackq tokens=1, * delims=:" %%i in (`findstr /r /n ".*"
  "hoge.txt"`) do @(
  if /i %n% GEQ %%i echo, %%j))>hogehoge.txt

  534 :名無し~3.EXE:2011/03/03(木) 17:03:37.23 ID:yGt/TIu+
  >>532
  sort /+100000 hoge.txt|more +1|sort /+100000 /o hoge.txt

  535 :名無し~3.EXE:2011/03/05(土) 22:32:31.95 ID:oJAp4RiF
  すみません, お伺いしたいのですが,
  とあるスクリプトを毎ログオン時に実行させたいのですが,
  普段使ってるのは管理者権限のないアカウントで,
  そのスクリプトはその管理者権限のないアカウントで.
  ログオンしたときにも, 管理者権限で走らせたいんです.
  また, そのPCを使用している人間に管理者パスワードを知られないようにしたいんです.
  schtasks の onlogon で /ru を使うと, /ru で指定したユーザがログオンしたときにしか.
  スクリプトが走らないと思うんです.
  (今, 実験できる環境がありません. すいません. )
  どのようにすればよろしいでしょうか?
  まことに申し訳ありませんがご教授お願いします.

  536 :名無し~3.EXE:2011/03/05(土) 23:32:58.86 ID:gtOstS9Q
  無理です.
  ログオン時じゃなくて起動時だったらスタートアップスクリプトで出来そうだけど.

  537 :名無し~3.EXE:2011/03/05(土) 23:39:20.92 ID:Gd+QfTap
  タスクスケジューラでできね?

  538 :名無し~3.EXE:2011/03/06(日) 12:41:29.63 ID:+PnaHAZD
  >>535
  schtasksはログオンしてるユーザと同等かそれ以下の権限のアカウントでしか実行できない糞仕様.

  539 :名無し~3.EXE:2011/03/06(日) 12:50:55.62 ID:+PnaHAZD
  >>535
  ついでに.
  レジストリのHKMLのスタートアップ.
  HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
  ここに新しい項目作ってスクリプトを実行するよう登録してみ.
  HKMLなのにログオンしないと走らない糞仕様だから>>535の目的には使えるかもよ.
  ただAdministrator権限じゃなくてSYSTEM権限で実行されるんでそこんとこ留意.

  540 :名無し~3.EXE:2011/03/06(日) 21:09:03.09 ID:+5J+PRQW
  にーさん, にーさん,
  HKLM -> HKLM
  慌てすぎ.

  541 :名無し~3.EXE:2011/03/06(日) 21:11:52.87 ID:fQfubHhk
  >>540

  542 :名無し~3.EXE:2011/03/06(日) 21:25:35.97 ID:vb/ezcOK
  >>540

  543 :名無し~3.EXE:2011/03/06(日) 21:37:47.26 ID:+5J+PRQW
  慌て者はボクだったよ,
  さよなら・・・・・・.

  544 :名無し~3.EXE:2011/03/06(日) 23:42:16.74 ID:JPIvqzw6
  >>543
  指摘ありがと.
  吊ってくる.

  545 :535:2011/03/07(月) 00:55:58.18 ID:QCcxjvdA
  皆様, にありがとうございます.
  >>539さんに教えていただいた方法を試してみたいと思います.

  546 :535:2011/03/07(月) 01:01:48.26 ID:QCcxjvdA
  途中で書き込むボタン押してしまいました・・・・crz
  改めて, 皆様本当に, いろいろ考えていただき,
  ありがとうございました.
  それでは, 失礼いたします.

  547 :名無し~3.EXE:2011/04/24(日) 00:53:46.83 ID:ghmTn2ef
  拡張子を.batにしたいのですが.
  a.txtを作って.
  a.batに名前を変更.
  a.bat.txtとなって拡張子はそのまま.
  となってしまいます.
  めちゃくちゃ初歩的な質問ですみません.
  誰か教えてください.

  548 :名無し~3.EXE:2011/04/24(日) 01:01:17.41 ID:e1cTj/Z7
  >>547
  「登録されている拡張子は表示しない」
  でググれ.

  549 :名無し~3.EXE:2011/04/24(日) 01:04:13.70 ID:ae46KHG2
  ren a.bat.txt a.bat

  550 :名無し~3.EXE:2011/04/24(日) 01:07:33.93 ID:ghmTn2ef
  >>548
  助かった.

  551 :名無し~3.EXE:2011/05/10(火) 22:54:24.51 ID:22nx6PrC
  バッチファイル中の文字置換について質問です.
  与えられた引数を元にした名前のフォルダを作成するバッチファイルを.
  作成したのですが, フォルダの名前に使用できない文字(\/:*?"<>|)が.
  含まれる場合があるので, その部分は適時全角の近似文字に.
  置換してからフォルダを作成しています.
  以下の方法で \/:?"<>| については対処できたのですが, 残りの.
  * (半角アスタリスク)だけはどうしても*(全角アスタリスク)に.
  置換できません. 他と同じように記述すると, 構文エラーになってしまいます.
  * を * に置換する方法はありませんか?よろしくお願いします.
  C:\>sample.bat "dir\/:?<>|"test"
  ==================================================
  @echo off
  setlocal
  set dir_name=%1
  set dir_name=%dir_name:\=\%
  set dir_name=%dir_name:/=/%
  set dir_name=%dir_name::=:%
  set dir_name=%dir_name:?=?%
  set dir_name=%dir_name:<=<%
  set dir_name=%dir_name:>=>%
  set dir_name=%dir_name:|=|%
  set dir_name=%dir_name:"="%
  set dir_name=%dir_name:~1, -1%
  mkdir "C:\%dir_name%"
  ==================================================
  C:\>dir
  2011/05/10 22:45 <DIR> dir\/:?<>|"test

  552 :名無し~3.EXE:2011/05/10(火) 23:47:34.27 ID:BGdDMW0l
  あまりにも表示される情報が多いので, 最初の方の情報が消えてしまいます.
  最初の10行程度でいいので見る方法はないでしょうか?

  553 :名無し~3.EXE:2011/05/11(水) 02:15:03.54 ID:cijUUQbA
  >>551
  set "dir_name=%dir_name:*=*%"
  でもだめ?ためしてないけど.
  >>552
  more

  554 :名無し~3.EXE:2011/05/11(水) 05:54:41.46 ID:cRdfPQu8
  @echo off
  set dir_name=a**b*c***e
  set index=0
  set out=
  :loop
  call set t=%%dir_name:~%index%, 1%%
  if "%t%"=="" goto :end
  if "%t%"=="*" (
  set out=%out%*
  ) else (
  set out=%out%%t%
  )
  set /a index+=1
  goto :loop
  :end
  echo %out%

  555 :名無し~3.EXE:2011/05/11(水) 14:18:14.26 ID:e30TubL/
  555

  556 :551:2011/05/11(水) 23:32:32.40 ID:7phbG/we
  >>553
  ダメみたいです.
  >>554
  多分set系の質問で毎度お世話になっている方だと思いますが, ありがとうございます.
  いつも高度な組み方で舌を巻いているのですが, 今回のcall部分の動作がわかりません.
  callが対象にとれるのは他のバッチファイルか, もしくは同じファイル内のサブルーチン(ラベル)
  だと思っていたのですが, 今回はそのいずれでも無いように見えます.
  一体どういった原理でしょうか?

  557 :名無し~3.EXE:2011/05/12(木) 01:14:34.68 ID:5cpccTMq
  >>556
  多分人違いだし, 回答してる奴は結構人数いると思うし.
  それにそんなに高度な代物じゃないのだが・・・.
  変数展開が2段階でなされるのでenabledelayedexpansionを.
  使わなくても遅延展開が可能になるところがいいのだけど.
  原理とか聞かれると弱い. w.
  経験的に使っててソースとか出せんわ.
  http://otnx.jp/CMD/index.php/call/?%A5%B3%A5%DE%A5%F3%A5%C9%CA%CC/call
  この辺とか見りゃ一応は書いてあるけど, 公式のヘルプとかその手の奴ってあるのかわからん.

  558 :名無し~3.EXE:2011/05/12(木) 14:44:56.86 ID:iMJdLd8m
  >>552
  moreでもいいけど, プロパティで画面バッファを1000〜2000行にしとけば逆スクロールで見られる.

  559 :551:2011/05/12(木) 18:36:53.53 ID:IzWOSOP9
  >>557
  callにこんな使い方があったなんて, 目から鱗です.
  こんな使い方ができるなら, if文の中で()を.
  含むsetコマンドを使うと構文エラーになる.
  恐れがあるのでいちいち外部サブルーチンに.
  callで飛ばしてからsetしてましたが, これでだいぶ.
  スマートに記述できます. ありがとうございます!
  と思ったら, &(半角アンド)も引数で渡される.
  可能性があることを失念してました. orz.
  &は""つきなら変数に格納できるんですが.
  前述の通り, フォルダ名に使用するのでこの方法も使えません.
  再度質問で申し訳ないのですが, 何かうまい方法はありませんか?

  560 :名無し~3.EXE:2011/05/12(木) 19:26:30.09 ID:LErTZijl
  無限に広がるbat以外の選択肢.

  561 :名無し~3.EXE:2011/05/13(金) 01:08:39.71 ID:kUCy/KG/
  badな選択肢やね.

  562 :名無し~3.EXE:2011/05/13(金) 04:45:23.20 ID:oKY0NEqs
  うわぁ・・・・・・>>561

  563 :名無し~3.EXE:2011/05/13(金) 07:57:58.99 ID:JjcdbuQQ
  PowerShell に9割方移行した俺に死角はなかった.

  564 :名無し~3.EXE:2011/05/13(金) 08:14:54.01 ID:dxRHMzGd
  x 死角.
  o 資格.
  このスレ的には. w.

  565 :名無し~3.EXE:2011/05/13(金) 20:51:26.00 ID:NAZVaB87
  俺は人間が丸いから四角はないな. w.

  566 :名無し~3.EXE:2011/05/13(金) 22:22:36.34 ID:KrF4BoQE
  ウニみたなトゲトゲで遠くから見たら丸く見えるだけじゃないの.

  567 :551:2011/05/14(土) 08:11:56.82 ID:vQ4YR2pY
  やっぱりバッチでやるのは無理ですかね. まさかこんなことのせいでで手詰まりになるとは・・.
  今から新しく別のスクリプトやるならPowerShellもPerlもJavaScriptでも手間は変わらないけど, どれがいいんだろう.

  568 :名無し~3.EXE:2011/05/14(土) 14:20:39.32 ID:HQ7w1xFo
  バッチでは無理だと思う.
  そもそもバッチファイルに&以降のパラメタは受け渡されてこないので.
  (コマンドシェルの構文解析で&以前のコマンドと&以降のコマンドの2つに分離されてしまう.
    ということは, &以前のコマンドであるバッチスクリプトからはどうあがいても.
    &以降のコマンドを知るすべは無いと思われる)
  入力方法を変えればいけるけど. (set /pかファイルから入力するとかすれば回避できる)
  JavaScriptがWebページにも応用できて良いんじゃないか?
  ただしWSH(cmd.exeから呼び出す)で使うんなら上記と同じことになるんで別のシェルを用意しないと.
  まあ, 俺は良くは知らないがどのシェル(Perlでも)でも入力に制限がつくんじゃないかな?

  569 :名無し~3.EXE:2011/05/14(土) 14:33:27.36 ID:pQZ75ggQ
  >&は""つきなら変数に格納できるんですが.
  >前述の通り, フォルダ名に使用するのでこの方法も使えません.
  って話が良く分からないけど, ""付けて引数を渡して, フォルダ名は""外して作ればいいんじゃなくて?

  570 :名無し~3.EXE:2011/05/14(土) 15:39:48.37 ID:HQ7w1xFo
  あれ? ""で囲って入力するんなら何がダメなんだろう?
  もしかして>>551と>>554を組み合わせられないの?
  それとも&は小文字にしたいの?
  @echo off
  set dir_name="%~1"
  set dir_name=%dir_name:&=&%
  call :2nd_step %dir_name%
  set out="%out:&=&%"
  echo %out%
  mkdir c:\%out%
  goto :eof
  :2nd_step
  set dir_name=%~1
  set index=0
  set out=
  :loop
  call set t=%%dir_name:~%index%, 1%%
  if "%t%"=="" goto :end
  if "%t%"=="*" (
  set out=%out%*
  ) else (
  set out=%out%%t%
  )
  set /a index+=1
  goto :loop
  :end

  571 :名無し~3.EXE:2011/05/14(土) 21:23:39.65 ID:iN5VGoJk
  &は!の遅延展開つかわんとだめじゃないの?

  572 :名無し~3.EXE:2011/05/15(日) 22:44:32.57 ID:FQFzH4nC
  直前に実行したコマンドの結果ってどっかの変数に入ってないですか?
  ipconfig /all | find "Default Gateway" | find "192.168.11.1"
  が成功してたら処理続行, 成功してなかったら(何も返ってこなかったら)exit
  みたいなバッチを書きたいんですが.

  573 :名無し~3.EXE:2011/05/15(日) 22:50:21.60 ID:CD6nL7GM
  &&
  ||

  574 :名無し~3.EXE:2011/05/15(日) 22:52:33.37 ID:BUUtILe0
  echo %errorlevel%

  575 :572:2011/05/15(日) 22:56:59.06 ID:FQFzH4nC
  あ, 自己解決て書こうとしたら解答いただけてました. w.
  errorlevelで見れました.
  ありがとうございました.

  576 :551:2011/05/17(火) 21:46:05.73 ID:cdAPGdzL
  >>551=559です. 時間をあけてしまってスイマセン.
  パスを""で括るとき, 必ずしも一番前と後ろで括る必要が無いことを初めて知りました.
  C:\>mkdir foo" "bar
  C:\>dir
  2011/05/17 21:25 <DIR> foo bar
  これを使えばできるだろうと思いましたが, どうにもうまくいきません. orz.
  フォルダ名に使えない(\/:*?"<>|)以外は, 極力引数で渡された文字を.
  そのまま引き継ぎたいです.
  なので半角&も, 全角&に変換せずにそのままフォルダ名に使おうと考えています.
  様々な文字が渡される可能性があるので, 他にも半角スペースや()なんかも注意が必要だと思います.
  目的を再度まとめると以下のような感じでしょうか.
  [目的]
  ・sample.bat "文字列" の形で引数が渡されるので, その文字列を使ったフォルダを自動作成するバッチファイル.
  ・フォルダ名に使えない(\/:*?"<>|)については, それぞれ近似の全角記号に置き換える.
  ・上記のダメ文字以外は, 極力元の文字や記号をフォルダ名に反映させる(半角&記号など)
  一応自力で試行錯誤してみて, 以下のようなバッチファイル作ってみたのですが.
  望み通りの動作になりません. 特に"と, &や半角スペースが同時に使われている.
  場合などの処理が難しいです. バッチでうまいことやる方法は無いでしょうか?

  577 :551(分割 1/2):2011/05/17(火) 21:53:30.09 ID:cdAPGdzL
  *注意*
  正しく動作しません, あくまで参考です.
  C:\>C:\sample.bat "h ge|<a>bc"
  ==================================================
  @echo off
  call set char_nam="%~1"
  echo 入力:%char_nam%
  set char_nam=%char_nam:\=\%
  set char_nam=%char_nam:/=/%
  set char_nam=%char_nam::=:%
  set char_nam=%char_nam:?=?%
  set char_nam=%char_nam:<=<%
  set char_nam=%char_nam:>=>%
  set char_nam=%char_nam:|=|%
  set char_nam="%char_nam:"="%"
  set char_nam="%char_nam:~2, -2%"
  set index=0
  set out=

  578 :551(分割 2/2):2011/05/17(火) 21:54:48.47 ID:cdAPGdzL
  :loop
  call set t="%%char_nam:~%index%, 1%%"
  call set t=%%t:"=""%%
  call set t=%%t:~1, -1%%
  if %t%=="""" (
  set out=%out%
  )
  if %t%=="" (
  goto :end
  ) else if %t%=="*" (
  set out=%out%*
  ) else if %t%=="&" (
  set out=%out%"&"
  ) else if %t%==" " (
  set out=%out%" "
  ) else (
  set out=%out%%t:~1, -1%
  )
  echo out:%out%
  set /a index+=1
  goto :loop
  :end
  set out=%out:~2, -2%
  set dir_nam=C:\%out%
  echo ディレクトリ名:%dir_nam%
  mkdir %dir_nam%
  ==================================================

  579 :551:2011/05/17(火) 21:56:11.22 ID:cdAPGdzL
  C:\>dir
  2011/05/17 21:50 <DIR> h ge|<a>bc
  C:\>C:\sample.bat "h ge&<a>bc"
  ( の使い方が誤っています.
  思ったより長くなってしまいました.
  お目汚しすいません.

  580 :名無し~3.EXE:2011/05/18(水) 00:13:34.09 ID:OxvdWdxe
  >>579
  >>570ではどこがダメだったの?
  @echo off
  set dir_name="%~1"
  if %dir_name%=="" echo パラメタを指定してください&goto :eof
  set dir_name=%dir_name:\=\%
  set dir_name=%dir_name:/=/%
  set dir_name=%dir_name::=:%
  set dir_name=%dir_name:?=?%
  set dir_name=%dir_name:<=<%
  set dir_name=%dir_name:>=>%
  set dir_name=%dir_name:|=|%
  set dir_name=%dir_name:&=&のバ カ%
  call :2nd_step %dir_name%
  set out=%out:"="%
  set out="%out:&のバ カ=&%"
  echo %out%
  mkdir c:\%out%
  goto :eof
  :2nd_step
  set dir_name=%~1
  set index=0
  set out=
  :loop
  call set t=%%dir_name:~%index%, 1%%
  if "%t%"=="" exit /b
  if "%t%"=="*" (set out=%out%*) else (set out=%out%%t%)
  set /a index+=1
  goto :loop

  581 :名無し~3.EXE:2011/05/18(水) 03:02:56.72 ID:OxvdWdxe
  そうか"が途中に入ってるとダメなのか.
  さらにいろいろな場合にまずいな.
  順番をちょっと変えて最初の方にもっていけば入力できた場合は多分大丈夫だろう.
  case1: 入力できない場合は対処不可.
  "h ge&"<a" NG
  case 2: パラメタ無しの判定もまずかった.
  "a"b" NG
  case 3: あと, ^<(^>)の入力時もまずい.
  "a^<b" NG
  次にcase1はどうしようもないが, case 2, 3の修正版をあげておく.

  582 :名無し~3.EXE:2011/05/18(水) 03:03:58.42 ID:OxvdWdxe
  @echo off
  set dir_name=%1
  if not defined dir_name echo パラメタを指定してください&goto :eof
  set dir_name=%dir_name:&=&のバ カ%
  set dir_name="%dir_name:"="%"
  set dir_name="%dir_name:~1, -1%"
  set dir_name=%dir_name:\=\%
  set dir_name=%dir_name:/=/%
  set dir_name=%dir_name::=:%
  set dir_name=%dir_name:?=?%
  set dir_name=%dir_name:<=<%
  set dir_name=%dir_name:>=>%
  set dir_name=%dir_name:|=|%
  set dir_name=%dir_name:^=^のバ カ%
  call :2nd_step %dir_name%
  set out="%out:&のバ カ=&%"
  set out=%out:^のバ カ=^%
  echo %out%
  mkdir c:\%out%
  goto :eof
  :2nd_step
  set dir_name=%~1
  set index=0
  set out=
  :loop
  call set t=%%dir_name:~%index%, 1%%
  if "%t%"=="" exit /b
  if "%t%"=="*" (set out=%out%*) else (set out=%out%%t%)
  set /a index+=1
  goto :loop

  583 :名無し~3.EXE:2011/05/18(水) 03:13:38.96 ID:OxvdWdxe
  set dir_name="%dir_name:~1, -1%"
  これ無意味だった.
  さらに全角の"が両端に付くがまずけりゃcall 2nd_stepから帰ってきたあと.
  &と^を半角に戻す前に判定して取っちゃえ.
  ちなみに&と^を一旦別文字列に置き換えてるが, これはおよそ入力しそうにない文字列に.
  しとけば実用上問題ないだろう.

  584 :名無し~3.EXE:2011/05/18(水) 22:55:01.05 ID:+ThlMx5f
  set dir_name=%dir_name:<=<%
  set dir_name=%dir_name:>=>%
  set dir_name=%dir_name:|=|%
  set dir_name=%dir_name:&=&%
  はset "...=..."でエスケープせんとあかんのじゃなかろか.
  set "dir_name=%dir_name:<=<%"

  585 :551:2011/05/19(木) 00:34:36.79 ID:ph4ezJMK
  >>580-583
  ありがとうございます. おかげさまで一応の目途が立ちました.
  流石にあらゆるケースに, バッチだけで対応するのは難しいですね.
  まぁ " 自体の発生頻度は少ない見込みですし, その他 & や | 記号と.
  同時に発生する確率はほとんどないハズなので, 実用上は問題ないと思います.
  それでもダメだった場合は, 潔くあきらめて半角&は全角&に置換するようにします. ちなみに.
  set dir_name="%dir_name:~1, -1%"
  の部分を, 思いつきで.
  set dir_name="%dir_name:~2, -2%"
  に変更したらなぜかうまく両端の全角"が外せました(動作も問題ないように見えます).
  原理は分かりません.
  >>584
  精査してないですが, 試してみたところうちでは正しく動作しなくなりました.

  586 :名無し~3.EXE:2011/05/19(木) 00:59:05.21 ID:ydoAvGEN
  必ず全体を""付きで貰うと条件を固定した場合はそれでもいい.
  set dir_name="%dir_name:~1, -1%"
  これは無意味なステートメントだが, この時点では, dir_name=""〜""の状態となってるので.
  わざと両端の""を全角で残したのにはパラメタが""付きでない場合や"のみの場合も考慮したから.
  例.
  abc"&< "def
  ""
  "
  など.
  なので全角の"をとるのなら>>583でアドバイスしたタイミング(callの直前でもいい)を薦める.
  また無条件に取るんじゃなく全角の"であることをチェックしてから取るように.
  さらに最初に""や"の場合, パラメタなしと判定することも必要になってくる.

  587 :名無し~3.EXE:2011/05/19(木) 01:08:58.94 ID:ydoAvGEN
  あと&を全角にしようとも, そもそもバッチスクリプトにきちんと入力されてこない場合は対処は無理.
  例.
  "abc"&def"
  "abc"<def"

  588 :名無し~3.EXE:2011/05/19(木) 17:32:27.52 ID:ydoAvGEN
  @echo off
  set /p chars=新規フォルダ名を指定してください :
  rem set /p chars=<"parm.txt"
  if not defined chars echo 何か指定してください&goto :eof
  set chars="%chars:"="%"
  if %chars%==""" echo 何か指定してください&goto :eof
  if %chars%=="""" echo 何か指定してください&goto :eof
  if "%chars:~1, 1%"==""" set chars="%chars:~2%
  if "%chars:~-2, 1%"==""" set chars=%chars:~0, -2%"
  set chk_spc_only=%chars: =%
  if %chk_spc_only%=="" echo 何か指定してください&goto :eof
  set chars=%chars:\=\%
  set chars=%chars:/=/%
  set chars=%chars::=:%
  set chars=%chars:?=?%
  set chars=%chars:<=<%
  set chars=%chars:>=>%
  set chars=%chars:|=|%
  set chars=+%chars%
  set out=
  :loop
  set chars="%chars:~2%
  if %chars%=="" set out="%out:"=%"& goto next
  if "%chars:~1, 1%"=="&" set out=%out%"&"& goto loop
  if "%chars:~1, 1%"=="^" set out=%out%"^"& goto loop
  if "%chars:~1, 1%"=="(" set out=%out%"("& goto loop
  if "%chars:~1, 1%"==")" set out=%out%")"& goto loop
  if "%chars:~1, 1%"=="*" (set out=%out%*) else (set out=%out%%chars:~1, 1%)
  goto :loop
  :next
  echo %out%
  mkdir c:\%out%

  589 :名無し~3.EXE:2011/05/19(木) 17:37:49.55 ID:ydoAvGEN
  [上矢印]
  パラメタの受け渡し方を変えると, かなり入力できるようになった.
  ""で括ってなくても, 多分どのような文字列も大丈夫.
  例.
  a&b^|c)>d" <e
  など.

  590 :名無し~3.EXE:2011/05/19(木) 20:04:59.96 ID:awzZy/s4
  WSH使えば簡単だろ?

  591 :名無し~3.EXE:2011/05/19(木) 20:25:40.58 ID:oE2o78vn
  PSのほうが簡単だろ?

  592 :名無し~3.EXE:2011/05/19(木) 23:21:43.83 ID:AHUx1fjJ
  略すな.
  PS って言うと PostScript のことかと思っただろ!!

  593 :名無し~3.EXE:2011/05/20(金) 07:31:35.62 ID:6QTPIQ/I
  (アカウントを)つかいきろう.
  PSN

  594 :名無し~3.EXE:2011/05/21(土) 04:02:40.61 ID:ldRm9oSy
  >>590に言われたので試しにWSHで書いてみた.
  結果から言うと確かに簡単だったが1から勉強した身には結構大変だった. (何時間も掛かった)
  検索してみても, いろんなバージョンのJavaScriptがあって, WSHでなくHTAだったりして頭が混乱したよ.
  以下実行結果(StdInを使ったのでcscriptじゃないと動作しない. wscriptはダメ)
  Z:\>cscript //nologo sample.js <list.txt
  sample: ヌル, 又は空白.(ピリオド)のみは指定できません.
  sample: "com0"は予約文字列です.
  OK. "z:\h ge&<a>bc"
  OK. "z:\a < "bcd" *:&(\)"
  OK. "z:\abc"
  sample: "z:\abc" 既に同名のファイルが存在しています.
  Z:\>echo abc| cscript //nologo sample.js
  sample: "z:\abc" 既に同名のファイルが存在しています.
  Z:\>
  --list.txtの内容--
  ..
  com0 .txt. ..
  h ge&<a>bc
  a < "bcd" *:&(\)
  "abc"
  abc . . .
  ---------------

  595 :名無し~3.EXE:2011/05/21(土) 04:03:26.22 ID:ldRm9oSy
  var drivename = "z:\\";
  var stdin=WScript.StdIn, arg = WScript.arguments;
  var fs = new ActiveXObject("Scripting.FileSystemObject");
  var rc=0;
  while(!stdin.AtEndOfStream) {
  try{
  var out = stdin.ReadLine().replace(/^"|"$/g, "");
  var out = drivename + chk_fname(out.replace(/[.\s]+$/g, ""))
  //後方空白削除(前後空白削除の場合は/^\s+|[.\s]+$/g)
  fs.CreateFolder(out); // 自前でfs.FolderExists(out)で存在チェックしても良い.
  WScript.Echo('OK. "'+out+'"');
  } catch(e) {
  rc=999;
  WScript.StdErr.Write(WScript.ScriptName.replace(/\.[^.]*$/, "") + ": ");
  switch(e) {
  case "E_spc_only" : WScript.StdErr.Write('ヌル, 又は空白.(ピリオド)のみは指定できません\n');break;
  case "E_reserved" : WScript.StdErr.Write('"' + out.replace(/\s*\..*$/, "") +
  '"は予約文字列です\n');break;
  default : WScript.StdErr.Write('"' + out + '" ' + e.description + '\n');
  }
  }
  }
  WScript.Quit(rc);
  function chk_fname(s) {
  var invalid_chars = {'<':'<', '>':'>', '*':'*', '"':'"', '?':'?', '\\':'\',
  '/':'/', '|':'|', ':':':' };
  var reserved_strs = new Array( "CON", "AUX", "NUL", "PRN", "COM[0-4]",
  "LPT[0-3]" );
  if (s.replace(/[. ]/g, "")=="") throw "E_spc_only";
  for (var i in reserved_strs) {
  if (s.replace(/\s*\..*$/, "").replace(new RegExp(reserved_strs[i], "i"),
  "")=="") throw "E_reserved";
  }
  return s.replace(/[|:/<>*"?\\]/g, function (w){return invalid_chars[w];});
  }

  596 :551:2011/05/31(火) 00:09:15.39 ID:mdi5oQEJ
  >>586-589
  またもお返事遅くなすいません, どうもありがとうございます.
  当該機能の部分を本チャンのバッチにマージして, 一週間ほど.
  経過を見てみたのですが, どうにかまともに機能するようになったようです.
  追加で示していただいたset /pを使う方法も, ファイルを経由する.
  やり方であれば選択肢として有り得たのですが, できれば引数で渡したかったので.
  結果として元の方法に, 両端""を対処する処理を加える形で落ち着きました.
  >>587に挙げていただいたようなトラブルは現実的には発生しないと考えています.
  それよりも, ""の扱い方が変わった(両端だけの使い方でなくなった)ので.
  そのために全部手動で修正した作業が大変でした.
  今時PowerShellが動かないOSに新機能を追加するケースはそう無さそうですし.
  DOSブート環境で使える処理を組みたいとかでない限り, バッチファイルを.
  掘り下げて習得していく意義は薄いのかもしれませんね.
  それでも私なんかは, 過去の資産に縛られて泥沼に嵌っていってますが・・・.
  それと, お教えいただいたサンプルコードは他の場所に転載したり.
  アーカイブさせていただいてもよろしいでしょうか?

  597 :名無し~3.EXE:2011/05/31(火) 00:41:01.35 ID:wKPKEtoy
  >>596
  スクリプトコードは何処へなりとも自由に持っていってもらって結構ですよ.
  ちなみにBATでの最終形>>588は両端の"も取るし受け渡されたどの文字列も大丈夫だと思う.
  set /pをパラメタ渡しに変えるだけで良いだろう. (>>587の制限はできるが)
  ちなみに, set /pだとパイプでパラメタ受け渡しができる. (>>595と同様にフィルタ動作をする)
  例  echo "abc"|sample.bat  や  type data.txt|sample.bat
  なお>>595はWSHの習作なんで行儀の悪いことになっていた. まあ使わないとは思うが一応注意を.
  (使ったオブジェクトを開放し忘れてる)
  なお, DOSでのBATは似て非なるものでここで使ったようなテクニックはほぼ全て使えないんだなあ.

  598 :551:2011/06/01(水) 00:00:36.95 ID:AfdclPhS
  >>597
  重ね重ねありがとうございます.
  パイプで渡す場合でも, 引数と同じように>>587の制限が.
  生じてしまうとのことで, かえって割り切れました.
  DOSへの応用範囲も狭いとなると, 後はもう殆ど意地ですね. w.
  コードは今すぐどこかに転載するといった算段ではありませんが.
  今後も活用させていただきます. ありがとうございました.

  599 :名無し~3.EXE:2011/06/05(日) 15:50:03.34 ID:yhEiQsQi
  上記の現在のディレクトリで CMD.EXE を開始しました. UNC はサポートされません.
  UNCパスってなに? うんこ?

  600 :名無し~3.EXE:2011/06/05(日) 16:10:22.82 ID:rXbO9qcf
  ネットワークドライブにマウントしてから使っとけ.
  分かったかウンコ.

  601 :名無し~3.EXE:2011/06/05(日) 16:50:25.39 ID:yhEiQsQi
  ありがとうんこ.

  602 :名無し~3.EXE:2011/06/05(日) 18:39:50.14 ID:Zerct+oF
  おすすめはpushd

  603 :名無し~3.EXE:2011/06/06(月) 01:16:02.61 ID:TdZrxGMI
  pushdしまくったら爆発した.

  604 :名無し~3.EXE:2011/06/06(月) 01:52:29.27 ID:CZbmeqot
  pushd と prompt $P$+$G 併用お勧め.

  605 :名無し~3.EXE:2011/06/08(水) 23:22:22.38 ID:yE/jf+js
  文字コードにUTF-8が使われているテキストがあるとまともに動かないツールばかりだ.

  606 :名無し~3.EXE:2011/06/08(水) 23:27:30.85 ID:fZwxK7EP
  >>605
  君のIDに出てるようにシフトJIS使え.

  607 :名無し~3.EXE:2011/06/10(金) 17:15:48.46 ID:Wxy05tDn
  >>605
  君のIDに出てるようにJScript使え.

  608 :名無し~3.EXE:2011/07/13(水) 13:07:00.93 ID:0zcACgIP
  数百KB〜数MBのファイルが何十GBと大量にあり,
  なんとかこれを高速にコピーする方法は無いかと探しています.
  今はxcopyを使っていますが, もっと良い方法は無いでしょうか?

  609 :名無し~3.EXE:2011/07/13(水) 13:15:44.72 ID:Gf0fORp2
  robocopy

  610 :名無し~3.EXE:2011/07/13(水) 13:54:36.75 ID:CjocHXVI
  >>608
  http://www.google.co.jp/search?source=ig&hl=ja&rlz=&=&q=%E9%AB%98%E9%80%9F+%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB+%E3%82%B3%E3%83%94%E3%83%BC&aq=1cr&aqi=g-r1g-cr1g1g-r1g-m6&aql=&oq=%E9%AB%98%E9%80%9F+%E3%82%B3%E3%83%94%E3%83%BC

  611 :名無し~3.EXE:2011/07/14(木) 01:26:08.50 ID:MBHQqw7l
  xcopyとかrobocopyの/Zスイッチの「再起動可能モード」ってなんなの?
  [下矢印]見ると「再起動可能モード」の他に「バックアップモード」があるというのは分かったけど.
  http://support.microsoft.com/kb/950790/ja
  「バックアップモード」のほうはユーザー権利の「ファイルとディレクトリのバックアップ」や.
  「ファイルとディレクトリの復元」が有効になるってのはなんとなく分かったけど,
  「再起動可能モード」のほうは, ネットワーク経由のコピーのときに有効なモードのようだけど.
  具体的には何なんだか全然よく分かんない. . .

  612 :名無し~3.EXE:2011/08/11(木) 20:17:50.94 ID:z/fkZ+S/
  このスレのえ*いひとにお願いしたいんだけど.
  このバッチがどういう仕組みで動作してるのかアホにもわかるように解説してもらえんですか.
  http://scripting.cocolog-nifty.com/blog/2007/05/tee_0423.html
  とりあえずパイプによる標準入出力について今さらググってみて.
  「バッチへのリダイレクションによるデータ入力は, バッチ内で最初に標準入力を使用するコマンドへの入力となる」
  (http://www.ne.jp/asahi/hishidama/home/tech/windows/bat.html#stdin)
  てことを初めて知って, どうやら9行目のmoreで受け取ってるっぽいなとなんとなく想像してるんだけど.
  それ以外全然理解できないボスケテー.

  613 :名無し~3.EXE:2011/08/13(土) 05:26:29.86 ID:Dj1yFRZf
  えぐいひと?

  614 :612:2011/08/13(土) 21:09:09.70 ID:CYdSlQAp
  *は特定の文字ではなく任意の1文字にマッチする(略.
  などと意味不明なことを言いつつごちゃごちゃやってるうちになんか見えてきたような気がする.
  書き込みアクセスしてるファイルに対して別プロセスで書き込もうとするとエラーになるけど.
  読み込みはできるって仕様になってるのを利用してるってことなのかな.
  しかしこの8・9行目の処理って初心者的に目から鱗すぎる.

  615 :名無し~3.EXE:2011/08/13(土) 22:01:36.02 ID:Dj1yFRZf
  無理筋だな  やめとけ.

  616 :名無し~3.EXE:2011/08/14(日) 16:24:20.80 ID:ihVTTdCj
  バッチが遅いので調べたところ, コマンド全般が遅いことがわかりました.
  C:\temp>prompt $t$s$p$g
  13:37:57.40 C:\>for /l %A in (1, 1, 10)do find 2> nil
  13:38:00.67 C:\>find 2>nil
  13:38:01.01 C:\>find 2>nil
  <略>
  13:38:03.71 C:\>find 2>nil
  13:38:04.04 C:\>
  エラーになるだけのfindコマンドの実行1回あたり0.34秒ほどかかります. dirやdate /tなどは早いのですが.
  findやfcなどの外部コマンドが遅いようです.
  マシンはLenovo X200sでXP SP3です. 低スペックのR51eでは10倍ほど早いので, 遅くなる要因があるものと思います.
  テスト時CPUの負荷などは最低限です. antivirusやfirewallを切ると1秒ほど改善しますが, 大きな要因が他にあると思います.
  原因を調べる方法はありますでしょうか?みなさんのPCではパフォーマンスはいかほどでしょうか?

  617 :名無し~3.EXE:2011/08/14(日) 17:07:33.34 ID:a3JFdokN
  PATHのsystem32より前にネットワークが入ってんじゃね.

  618 :名無し~3.EXE:2011/08/14(日) 17:27:56.09 ID:TBaxWSr7
  >>617
  パスにネットワークドライブはありませんし, フルパス指定でも同様でした.

  619 :名無し~3.EXE:2011/08/15(月) 13:29:15.66 ID:IHWQfMAm
  >>618
  ゴミ見たいの残ってるとか?
  net useでネットワーク共有確認した?

  620 :名無し~3.EXE:2011/08/16(火) 00:03:15.86 ID:BPczii+w
  一度, 実行前に.
  set path=%systemroot%
  を実行してから試してみて欲しい.

  621 :名無し~3.EXE:2011/08/20(土) 14:42:15.09 ID:bFmEIStu
  半角"%"を含んでいるファイル名の処理方法をお聞かせ下さい.
  具体的には, "AABBCC100%.txt"と言うファイルをmoveやren
  しようとしても上手く行きません. ""でパス&ファイル名をくくっても同様です.
  例:D:\test\aabbccdd 100%.txt を F:\DATA\08\へ移動したい.
  +----------------------------------------------------------+
  |D:\test > move /Y "D:\test\aabbccdd 100%.txt" "F:\\DATA\08\"
  |
  |
  |D:\test > move /Y "D:\test\abcde 100\DATA\08\
  |指定されたパスが見つかりません.
  |
  %の箇所で可笑しくなっています. %付きのファイルが沢山有って.
  手作業で%(全角)に変更するのも現実的ではありませんし,
  リネームソフトで変更より, まずは一旦コマンドプロンプトで解決できる.
  方法をお教え下さいませ.

  622 :名無し~3.EXE:2011/08/20(土) 15:02:30.60 ID:eMW2GM3K
  >>621
  「指定されたパスが見つかりません」がtarget側にかかっているように見えるのは気のせい?
  >move /Y "D:\test\aabbccdd 100%.txt" "F:\\DATA\08\"
  move /y "D:\test\aabbccdd 100%.txt" F:\DATA\08\  でもダメですか?
  #手元の環境では二重引用符で括るだけで問題なく動作します.

  623 :名無し~3.EXE:2011/08/20(土) 15:04:39.48 ID:SjWiWNqx
  直接入力なら問題なかったような気がするけど・・・.
  バッチ内なら%%

  624 :名無し~3.EXE:2011/08/20(土) 15:32:36.74 ID:bFmEIStu
  >>622-623
  有り難うございました. 100%%で解決いたしました.
  正規表現のメタキャラみたいな扱いなのでしょうか?
  ほかの文字もあるのか, もう少し勉強し直してきます.
  助かりました.

  625 :622:2011/08/20(土) 15:38:08.00 ID:ZtdU7YRi
  >>624
  あぁ, バッチでの記述だったんだね(>>621では言及されてなかったけど).
  バッチだと%は変数のために予約されているんで, リテラルの%は%%で記述.

  626 :名無し~3.EXE:2011/08/26(金) 09:59:56.85 ID:07hasJ0+
  *落ちたように見えるスレは, ブラウザなどで1回書き込めば.
  スレリストに復活, 専ブラ等でも書き込み可能に.

  627 :名無し~3.EXE:2011/09/19(月) 20:44:45.01 ID:2pOzoyXR
  batファイルにドロップした分を連続で処理できるようになっています.
  これをフォルダ内のファイルを一括で処理するように改造する方法を教えてください.
  @echo off
  SETLOCAL
  SET SPath="D:\ICEECC\ICEECC.exe"
  SET SParam1=c
  SET SParam2=/b1024
  SET SParam3=/r2
  SET SParam4=D:\ECC
  :start
  IF "%~1"=="" GOTo syoriend
  :syori
  %SPath% %SParam1% %SParam2% %SParam3% "%SParam4%\[ECC] %~n1%~x1.ecc"
"%~n1%~x1"
  :next
  SHIFT
  GOTo start
  :syoriend
  rem [下矢印]pause不要なら削除.
  pause
  ENDLOCAL

  628 :名無し~3.EXE:2011/09/19(月) 21:54:35.30 ID:RwWOOKax
  ドロップ.
  for /f %%I in (%*) do %SPath% %SParam1% %SParam2% %SParam3% "%SParam4%\[ECC]
  %%~nxI.ecc" "%%~nxI"
  フォルダ.
  for /f %%I in (*.*) do %SPath% %SParam1% %SParam2% %SParam3% "%SParam4%\[ECC]
  %%~nxI.ecc" "%%~nxI"

  629 :名無し~3.EXE:2011/09/19(月) 21:55:38.52 ID:RwWOOKax
  すまん/fいらん.

  630 :名無し~3.EXE:2011/09/20(火) 18:04:21.52 ID:JCBuRgx6
  >>628
  ばっちり動きました.
  すごい.

  631 :名無し~3.EXE:2011/09/22(木) 15:08:44.24 ID:OBFRVs3h
  schtasksのstで秒単位で指定しても無視されてしまいますが, こんなもの?

  632 :名無し~3.EXE:2011/09/22(木) 15:34:21.37 ID:dDDr9Qq2
  >>631
  そんなもの. GUIのタスクスケジューラでも時分までしか設定できないんだから仕方ないだろ.

  633 :名無し~3.EXE:2011/09/22(木) 18:43:08.33 ID:u20l0LSl
  必要なら中で待てばよい.

  634 :名無し~3.EXE:2011/09/23(金) 15:45:10.63 ID:SWICmH79
  schtasksで表示すると秒まで出るが, 虫されるとは, 指定の仕方が悪いんじゃね.

  635 :名無し~3.EXE:2011/11/09(水) 18:52:01.56 ID:y4E29ing
  コマンドプロンプトのプロパティのレイアウトタグでバッファサイズと画面サイズを指定できますが,
  cmd.exeの起動オプションかバッチファイル内で同等の指定をする方法はあるのでしょうか?
  ご存知の方がいましたら教えて欲しいです. よろしくお願いします.

  636 :名無し~3.EXE:2011/11/09(水) 19:07:40.97 ID:OD6GvI9M
  mode/?

  637 :635:2011/11/09(水) 20:40:15.34 ID:y4E29ing
  >>636
  ありがとうございます. 助かりました.

  638 :名無し~3.EXE:2011/11/12(土) 08:50:42.69 ID:1vH/LxN0
  コマンドプロンプトでtelnetを開始して,
  open ホスト名  80
  って打っても, 2秒ぐらいした後にバグって入力のバーがコマンドプロンプトの左上(最初の位置)に戻るんですが,
  これはバグですか?
  7でやっても別のPCのXPでやってもこうなりました.
  そのままGETコマンドとか打っても受け付けてはくれるんですが, 見にくくてしかたありません.

  639 :名無し~3.EXE:2011/11/12(土) 13:02:43.31 ID:6LWtYEOA
  >>638
  telnetの仕様です.

  640 :名無し~3.EXE:2011/11/18(金) 20:51:02.21 ID:pxVyOoVa
  GNU grep 使っていたが, 日本語はうまくいかないこともあるのを発見.
  こまったアル.
  2.5.1

  641 :名無し~3.EXE:2011/11/18(金) 21:12:14.79 ID:Dyiu+uA+
  yagrepとか.
  http://www.kt.rim.or.jp/~kbk/yagrep/index.html

  642 :名無し~3.EXE:2011/11/18(金) 23:25:45.26 ID:CC6V9VYv
  >>641
  ありがとうございます.
  findstr というツ-ルもあるようですが, たしかどっかに問題があった.

  643 :名無し~3.EXE:2011/11/19(土) 00:05:46.04 ID:zaMlMwTR
  findstrは標準で入ってるやつだよ.

  644 :名無し~3.EXE:2011/11/21(月) 15:00:00.60 ID:ngKnsBjW
  文字列を貼り付けるときにマウスの右クリックでメニューを表示して貼り付けてますが.
  マウスを使わずにキーボードで貼り付けるショートカットってありませんか?

  645 :名無し~3.EXE:2011/11/21(月) 15:12:34.21 ID:lBNK4PnM
  alt+space e p

  646 :名無し~3.EXE:2011/11/23(水) 05:35:55.96 ID:nwtiGPYP
  電波テロ装置の戦争(始)
  魂は幾何学, コピー出来る公安はサリンオウム信者の子供を40歳まで社会から隔離している.
  オウム信者が地方で現在も潜伏している.
  それは新興宗教を配下とする公安(慶應卒T)の仕事だ発案で盗聴器を開発したら霊魂が寄って呼ぶ来た.
  <電波憑依>
  スピリチャル全否定なら江原三輪氏, 高橋佳子大川隆法氏は, 幻聴で強制入院矛盾する日本宗教と精神科.
  <コードレス盗聴>
  2004既に国民20%被害250〜700台数中国工作員3〜7000万円2005ソウルコピー2010ソウルイン医者アカギ絡む<盗聴証拠>
  今年5月に日本の警視庁防課は被害者SDカード15分を保持した有る国民に出せ!!<創価幹部>
  キタオカ1962年東北生は二十代で2人の女性をレイプ殺害して入信した創価本尊はこれだけで潰せる<<<韓国工作員鸛<<<創価公明党.
  <テロ装置>>東芝部品)>>ヤクザ<宗教<同和<<公安<<魂複<<官憲>日本終Googl検索.

  647 :名無し~3.EXE:2011/11/24(木) 02:17:34.51 ID:2V91NEL2
  >>644
  キーボードじゃなくてスマンが.
  プロパティのオプションタブで簡易挿入モードをONにすると.
  マウスの右クリックだけで貼り付けられるよ.

  648 :名無し~3.EXE:2011/11/24(木) 02:19:58.34 ID:2V91NEL2
  [上矢印]「簡易編集モード」の間違い.

  649 :名無し~3.EXE:2011/11/25(金) 00:49:12.77 ID:ujh3KFvf
  隠しフォルダ内のファイルをコマンドでコピーするときってどうやるの?

  650 :名無し~3.EXE:2011/11/25(金) 01:12:14.11 ID:mEbPOXRQ
  おんなじだけど.

  651 :名無し~3.EXE:2011/11/25(金) 02:10:16.55 ID:ujh3KFvf
  xcopy? アクセスできなくない?/H  とか?
  Win7のAPPDATA内のSleipnirお気に入りを別の場所にコピーするバッチ作りたいんだけど・・・.
  xcopy で/Hってやってもダメなんだけど必要なオプションとかある?

  652 :名無し~3.EXE:2011/11/25(金) 02:40:27.85 ID:mEbPOXRQ
  copyでできるが?

  653 :名無し~3.EXE:2011/11/25(金) 02:42:45.10 ID:mEbPOXRQ
  ほら.
  >md aaa
  >echo >aaa\aaaaa
  >attrib +h aaa
  >copy aaa\aaaaa
  1 個のファイルをコピーしました.

  654 :名無し~3.EXE:2011/11/25(金) 02:50:59.27 ID:iDpkqVLx
  俺は使ってないので, Sleipnirお気に入りでググってみたところ.
  C:\Users\<ユーザー名>\AppData\Roaming\Fenrir & Co\Sleipnir
  の下に.
  Favorite.ffv(お気に入り),
  FavoriteGroup.ffg(お気に入りグループ)
  の2つのファイルがあるそうだ.
  xcopy使うまでもなくただのcopyで良いと思うけど,
  問題ありそうなのはフォルダ指定じゃないのか?
  (半角空白があるけど""で括ってないとか)
  一度エラーになったbatをさらしてみたら?

  655 :649:2011/11/27(日) 00:22:34.36 ID:1krBEMlR
  >653, 654
  ありがとう, 出来たよ!
  原因はパスだった.
  隠しフォルダにアクセス出来ないんじゃなくてパスが間違ってた.
  Sleipnir2.*  とSleipnir3はAPPDATA内のパスが違うみたい.

  656 :名無し~3.EXE:2011/12/20(火) 20:10:37.38 ID:kZtmw/od
  Linuxの話だけど, 最近これやってみて激しく感動したんだけど.
  DSAS開発者の部屋:シェルスクリプトで標準入力を加工する際の注意点.
  http://dsas.blog.klab.org/archives/51060184.html
  これと同じことWindowsで実現する方法ってないかなぁ.

  657 :名無し~3.EXE:2011/12/21(水) 15:09:10.69 ID:LATDZEHO
  具体的に要件を言えよ.

  658 :名無し~3.EXE:2012/01/10(火) 09:22:57.61 ID:IzsMUOFe
  MS-DOSとは一体何だったのか.
  http://awabi.2ch.net/test/read.cgi/poverty/1326153783/l50

  659 :名無し~3.EXE:2012/01/20(金) 20:09:35.34 ID:hAB3eePX
  教えてください.
  フォルダ内のすべてのファイルのファイル名を.
  頭三文字を削除したファイル名にリネームしたいのですがどのようにしたらよいでしょうか?
  例.
  リネーム前.
  01_ほげ.txt
  02_hoge.bmp
  リネーム後.
  ほげ.txt
  hoge.bmp

  660 :名無し~3.EXE:2012/01/20(金) 20:32:11.97 ID:UaxaTE60
  for %%i in (*) do (set "x=%%i") & call ren "%%i" "%%x:~3%%"

  661 :名無し~3.EXE:2012/01/20(金) 20:55:17.28 ID:hAB3eePX
  >>660
  ありがとうございます.
  目的の作業が出来ました.
  ただバッチファイルやリネームしたくないファイルもリネームされてしまうので.
  ファイル名の一文字目が数字の場合のみリネームするように改造できますか?

  662 :名無し~3.EXE:2012/01/20(金) 21:20:55.24 ID:UaxaTE60
  for %%i in (0* 1* 2* 3* 4* 5* 6* 7* 8* 9*) do (set "x=%%i") & call ren "%%i"
  "%%x:~3%%"
  for %%i in (??_*) do (set "x=%%i") & call ren "%%i" "%%x:~3%%"

  663 :名無し~3.EXE:2012/01/21(土) 19:02:59.88 ID:BeeQdxoC
  >>662
  ありがとうございました.

  664 :名無し~3.EXE:2012/01/24(火) 03:52:12.29 ID:QJ/7ug6o
  if "%OS%" == "Windows_NT" (
  echo This system is
  echo running on NT technology.
  ) else (
  echo This system is NOT
  echo running on NT technology.
  )
  上記の記述だと問題はないけれど,
  環境変数中に「()」が含まれる場合, エラーになるのだけれど回避する方法はあるのかいな.

  665 :名無し~3.EXE:2012/01/24(火) 14:10:54.54 ID:dHRJwv6C
  エラーにならんぞ.

  666 :名無し~3.EXE:2012/01/24(火) 15:35:45.64 ID:QJ/7ug6o
  間違えた.
  「if...()」で囲まれるブロック中の環境変数に()が含まれる場合だった.

  667 :名無し~3.EXE:2012/01/24(火) 16:16:54.11 ID:4k51VPeE
  ^^付けてあげるとか駄目かな. 比較部分も書き換えなきゃいけなくなるけど.
  それじゃあ困るんだよ !って言われても僕には分かりません.
  set string=^^(ab^^)c
  echo %string%
  if "%~1" == "" (
  if "%string%" == "^(ab^)c" echo equal
  echo %string%
  echo .
  )

  668 :名無し~3.EXE:2012/01/24(火) 16:48:53.45 ID:DUAeQj0m
  ")"でエスケープ.
  または.
  !遅延展開!

  669 :名無し~3.EXE:2012/01/25(水) 01:24:48.79 ID:QAFBVQGR
  ラベルをコールするとか.

  670 :名無し~3.EXE:2012/01/25(水) 02:45:35.27 ID:FwrcBzZe
  ラブコール.

  671 :名無し~3.EXE:2012/01/28(土) 14:19:04.24 ID:PD0QOKOk
  TWEETコマンドを使ってツイートしてるのですが,
  ツイートの改行方法が分かりません.
  winのコマンドで文字列を改行するのはどうしたらいいんでしょうか?

  672 :名無し~3.EXE:2012/01/28(土) 14:45:58.28 ID:Q0fjclzs
  インターネットテンポラリフォルダにあるクッキー以外のファイルを一括で.
  削除したいのですがバッチファイルの記述など教えていただけませんでしょうか?
  ゴミ箱にいれずに直接削除できたら便利なのですが.
  batファイルをファイル名を指定して実行から起動しようと思っています.
  ccleanerなどで削除するのをもっと手軽に出来たらなと思いまして.
  よろしくお願いします.

  673 :名無し~3.EXE:2012/01/28(土) 17:08:29.98 ID:rYMqbgzQ
  ClearMyTracksByProcess

  674 :名無し~3.EXE:2012/01/28(土) 17:29:15.45 ID:Q0fjclzs
  >>673  おぉ  見事に解決しました  ありがとうございました.

  675 :名無し~3.EXE:2012/01/28(土) 23:07:36.02 ID:Q0fjclzs
  >>673  解決はしたんですが  作成したリンクファイルのフルパスを.
  ファイル名を指定して実行する事が出来ない・・.
  .likだからだろうけど  ちょっとだけ残念.

  676 :名無し~3.EXE:2012/01/28(土) 23:12:31.27 ID:rYMqbgzQ
  .lnkを付ければええだろ.

  677 :名無し~3.EXE:2012/01/28(土) 23:22:07.68 ID:Q0fjclzs
  >>676うーん  もしかしてショートカットはデスクトップからうつしたらだめで.
  ファイル名変更もだめなのかな.
  リンクつけるとファイルノプロパティが開いてしまうんです.
  あれ, もしかしてキャッシュのパスかえたからおかしくなったのかも・・.
  ちょっと試行錯誤してきます.

  678 :名無し~3.EXE:2012/01/29(日) 22:31:12.30 ID:TFEJcwTs
  ?

  679 :名無し~3.EXE:2012/02/21(火) 13:09:31.60 ID:0LZ9ETD9
  すいません. 誘導されて来ました.
  WindowsXP質問スレ 212ページ目.
  http://toro.2ch.net/test/read.cgi/win/1323269626/548
  548 :名無し~3.EXE[sage]:2012/02/21(火) 12:11:40.50 ID:0LZ9ETD9
  dosのバッチファイルで「あるコマンド実行後0. 5秒休止」をループで繰り返したいときには.
  どうバッチファイルを記述すればよいのでしょうか?ループの中でコマンドを二回する方法がわかりません.
  また休止コマンドは「ping localhost」を使えと言われたのですが・・.
  FOR %%F IN (*.拡張子) Do コマンド  0. 5秒休止 %%F

  680 :名無し~3.EXE:2012/02/21(火) 13:59:19.42 ID:6vXLOlLc
  1秒以下・1秒以下単位のスリープは不可能. 専用ツールでもあれば別.

  681 :名無し~3.EXE:2012/02/21(火) 14:37:30.15 ID:KhHOee+Y
  Usage: sleep time-to-sleep-in-seconds
  sleep [-m] time-to-sleep-in-milliseconds

  682 :名無し~3.EXE:2012/02/21(火) 14:40:29.46 ID:KhHOee+Y
  使用法: ping [-t] [-a] [-n 要求数] [-l サイズ] [-f] [-i TTL] [-v TOS]
  [-r ホップ数] [-s ホップ数] [[-j ホスト一覧] | [-k ホスト一覧]]
  [-w タイムアウト] [-R] [-S ソースアドレス] [-4] [-6] ターゲット名.
  オプション:
  -n 要求数 送信するエコー要求の数です.
  -w タイムアウト.
  応答を待つタイムアウトの時間 (ミリ秒) です.

  683 :名無し~3.EXE:2012/02/21(火) 15:15:55.79 ID:CXufj1to
  203.0.113.0とか使うのが適当?

  684 :名無し~3.EXE:2012/02/25(土) 23:36:19.58 ID:yy3S+6gu
  >>679
  >>680
  >>681
  Batch file SLEEP Command - Windows XP and DOS
  http://malektips.com/xp_dos_0002.html
  Windows Server 2003 ツール.
  http://technet.microsoft.com/ja-jp/windowsserver/bb405955.aspx
  物が単純なだけに亜種がやたらとあるから適当に検索して片っ端から試すというのもアリかも. w.

  685 :名無し~3.EXE:2012/02/27(月) 01:27:01.87 ID:LCTL9xSY
  slmgr.vbs -dlvってなんすか?

  686 :名無し~3.EXE:2012/02/27(月) 01:31:07.14 ID:QV8Wxsa0
  メモ帳で開いてみれば分かるだろ. w.

  687 :名無し~3.EXE:2012/02/27(月) 01:39:12.05 ID:j7Geg3R6
  >>685
  ライセンス関係だからわかってても答えない.

  688 :名無し~3.EXE:2012/03/15(木) 00:56:50.19 ID:TshG/fxv

  689 :名無し~3.EXE:2012/04/14(土) 20:29:56.42 ID:di3PQnSS
  バッチファイルにドラッグ&ドロップで, ファイル名にスペースのある物を使いたいのですが.
  "でくくっても正常に表示されないのですがどうしたらいいんでしょうか?
  ドラッグ&ドロップしたファイル名  「a  #01.gl」
  echo %1
  echo "%1"
  pause
  C:\>echo C:\a
  C:\a
  C:\>echo "C:\a"
  "C:\a"
  C:\>pause

  690 :名無し~3.EXE:2012/04/14(土) 20:32:04.23 ID:zSF5e4bH
  echo %*
  echo "%*"

  691 :名無し~3.EXE:2012/04/14(土) 20:53:13.51 ID:di3PQnSS
  >>690
  ありがとうございます.
  スペースが, あったり, なかったりする, 複数ファイルを扱うことはできないんでしょうか?

  692 :名無し~3.EXE:2012/04/14(土) 21:14:54.00 ID:sMJPc4ze
  >>691
  D&Dをエクスプローラ以外のファイラーでやってない?
  エクスプローラではスペースあっても""でくくられているので %1 で問題ないのだが.
  ファイラーによってはくくられずにスペースで分割されてしまう.

  693 :名無し~3.EXE:2012/04/14(土) 21:18:50.46 ID:fOvpJLhU
  >>691
  全角スペースじゃなく半角スペースならいけるはず.
  コマンドプロンプトだけじゃなく他のプログラムでも問題を起こす場合があるから.
  ファイル名の全角スペースはできるだけ避けた方が無難かと.

  694 :名無し~3.EXE:2012/04/14(土) 21:43:35.18 ID:di3PQnSS
  %*だと, %~nx1とかも使えないんですね・・.
  >>692
  windows7で普通にドラッグ&ドロップしているだけなんですが・・・.
  >>692
  他のソフト(TvRock)で自動に作られてしまうのでどうしようも・・・.
  自動でスペース消したりする方法とかありますかね?

  695 :名無し~3.EXE:2012/04/14(土) 22:19:03.34 ID:fOvpJLhU
  >>694
  リネームツールを使えば簡単に変更できるはずだけど.
  このスレ的にやるなら[下矢印]こんなん?
  正直あんまり自信ないから.
  もし使うなら空のテキストファイルあたりに同じファイル名を付けて.
  ちゃんとリネームされるかどうか確認してからの方がいいと思う.
  ::実行ディレクトリ内にあるファイル名の全角スペースを半角スペースに置換する.
  ::全角スペースを含むファイルをリネーム処理に送る.
  for /f "delims=" %%a in ('dir /a:-d /b "*  *"') do call :sub "%%a"
  ::終了処理へジャンプ.
  goto :eof
  ::リネーム処理.
  :sub
  set f=%1
  ren %f% %f:  = %
  ::終了処理.
  :eof

  696 :名無し~3.EXE:2012/04/14(土) 23:53:29.20 ID:di3PQnSS
  >>695
  いけそうです. ありがとうございました.

  697 :名無し~3.EXE:2012/04/14(土) 23:53:31.02 ID:zSF5e4bH
  なことせんでも半角スペースのあるフォルダに置いてそこからD&Dすればオッケーよ.

  698 :名無し~3.EXE:2012/04/15(日) 01:15:17.41 ID:JtiIA/U/
  引数って, 全角スペースでも区切られるのかぁ.
  長年コマンドプロンプト使ってるつもりだったけどぜんぜん気付いてなかった.
  勉強になった.

  699 :名無し~3.EXE:2012/04/15(日) 01:18:57.23 ID:WF4W96cn
  仕様じゃないよ単なるバグよ直らんけど.

  700 :名無し~3.EXE:2012/04/17(火) 00:54:04.23 ID:FGe60Pe5
  いったん半角スペースのあるフォルダにおいて, でもいいので.
  ファイル名の全角スペースと半角スペースをアンダーバーに変えたいのですが,
  バッチファイルにD&Dだけで,
  しているのですが, 以下を2回かけるしかないのでしょうか?
  2つの条件でrenや, renした後のものを確認できますか?
  (2つとも可能なのでしたらやり方も教えていただけるとありがたいです. )
  for %%a in (%*) do call :sub %%a
  goto :eof
  :sub
  set f=%~nx1
  echo %f%
  ren "%f%" "%f: =_%"
  ren "%f%" "%f:  =_%"
  :eof

  701 :名無し~3.EXE:2012/04/17(火) 05:10:55.09 ID:Gava50qZ
  そうだね.

  702 :名無し~3.EXE:2012/04/17(火) 05:21:09.19 ID:rxVaCTrW
  全部置換した名前を生成後, 最後にrenじゃダメなのか?
  一応, 半角スペースのフォルダに置かなくても以下のようにすれば大丈夫じゃないかな?
  @echo off
  set pname=%*
  if not defined pname echo ファイル名を指定してください&pause&&goto :eof
  set pname="%pname:"=%"
  call :sub %pname%
  echo 置換:^<%r%^> %pname% ===^> %fname%
  rem if %r% equ ON if exist %dir%%fname% echo 既存ファイルがあって置換できない.
  ren %pname% %fname%
  pause
  goto :eof
  :sub
  set dir="%~dp1"
  set f="%~nx1"
  set fname=%f: =_%
  set fname=%fname:  =_%
  if %f% neq %fname% (set r=ON) else (set r=OFF)
  goto :eof

  703 :名無し~3.EXE:2012/04/17(火) 10:36:12.10 ID:3+X2uaPe
  よくあることだが, 半角スペースがあるとわかりきってるのに.
  ""でくくらないとボロボロだろそれ.

  704 :名無し~3.EXE:2012/04/17(火) 16:05:55.18 ID:BY2k4WaO
  >>703
  そもそもの原因は「全角スペースに対して自動的に""が付加されない」ことにある.
  変数をそのままくくっちゃうと, 全角スペースだけの場合は正常に動くけど.
  半角スペースを含んでいる場合は「""C:\ho ge\ho  ge.avi""」となって失敗する.
  >>702では一旦「"」を置換処理で除去してからくくってるみたいだから.
  どのケースでも問題なく動くと思う.

  705 :名無し~3.EXE:2012/04/17(火) 17:29:35.38 ID:rxVaCTrW
  >>703
  一応簡単にはテストしてアップしたわけだからボロボロってほどでも無いと思いたいが,
  ダメなケースってどういう場合だろ?

  706 :名無し~3.EXE:2012/04/17(火) 18:01:16.92 ID:FGe60Pe5
  >>702
  ありがとうございます.
  どう置換しているのかあまりよくわかってないですが, 複数ファイルをまとめてD&Dするなら,
  フォルダ名に半角スペース入れて, こんな感じでしょうか?
  @echo off
  for %%a in (%*) do call :suba %%a
  :suba
  set pname=%*
  if not defined pname echo ファイル名を指定してください&pause&&goto :eof
  set pname="%pname:"=%"
  call :sub %pname%
  echo 置換:^<%r%^> %pname% ===^> %fname%
  rem if %r% equ ON if exist %dir%%fname% echo 既存ファイルがあって置換できない.
  ren %pname% %fname%
  pause
  goto :eof
  :sub
  set dir="%~dp1"
  set f="%~nx1"
  set fname=%f: =_%
  set fname=%fname:  =_%
  if %f% neq %fname% (set r=ON) else (set r=OFF)
  goto :eof

  707 :名無し~3.EXE:2012/04/17(火) 20:13:43.12 ID:BY2k4WaO
  >>706
  「%*」って全ての引数を表示するって意味だから, 複数ファイルをD&Dすると.
  それら全てが1つのファイル扱いになって失敗すると思う.
  ていうか, 「call :suba %%a」じゃ:subaに渡す時にスペースのところで分割される.

  708 :名無し~3.EXE:2012/04/17(火) 22:14:25.59 ID:rxVaCTrW
  半角スペースのあるフォルダでないとダメって言ってる理由がわかった.
  BAT環境にファイル名が正常に渡ってこない場合があることを忘れてたよ.
  俺も>>586(以降の一連のレス)で忠告したことがあったのに, 自分自身がそれに引っかかっちゃった. orz.
  (例 a  b&c.txtとか)
  >>706
  半角スペースを含むフォルダを指定するとして.
  for %%a in (%*) do call :suba %%a
  を.
  for /r %1 %%a in (*) do call :suba %%a
  pause
  goto :eof
  に変えて, 下にあるpauseを取れば一応は動作と思うが, 半角スペースを含む場合なら.
  無駄なことをしてるので自分で考えて改造してよ.
  さらにパラメタがフォルダかどうかチェックすればもっといい.
  (ルートでない場合, "c:\hoge"なら"c:\hoge\."が存在するかどうか)

  709 :名無し~3.EXE:2012/04/17(火) 23:00:24.68 ID:rxVaCTrW
  フォルダ名じゃなくて複数ファイルのD&Dなら, 次のような感じで.
  :loop
  for %%a in (%1) do call :suba %%a
  shift
  if exist %1 goto loop

  710 :名無し~3.EXE:2012/04/17(火) 23:04:17.20 ID:rxVaCTrW
  いやfor文の変わりに単に, call :suba %1
  でいいや.

  711 :名無し~3.EXE:2012/04/17(火) 23:32:06.75 ID:Gava50qZ
  なにやってんだかあほか.

  712 :名無し~3.EXE:2012/04/19(木) 22:06:34.90 ID:7S6I67D2
  コマンドラインで漢字交じりの文をローマ字変換したいのだけど.
  kakasiを使ってみたら「ん」の後に母音が来ると「ん」が「n'」に変換されてしまうので困っている.
  元文が「'かんおん'」というような''で囲まれた文なので中身に「'」が入るのは困る.
  平仮名だけなら簡単に事前置換等で対応できそうだけど, 漢字の読みがそうなる時がある・・・.
  総計10GB位のテキストなので手作業なんて非現実的なにかいい方法はないだろうか?

  713 :名無し~3.EXE:2012/04/19(木) 22:13:34.44 ID:4MPi1VgC
  >>712
  元文の「'」を絶対に一致しない文字に置き換えるのが無難のような気がする.

  714 :名無し~3.EXE:2012/04/20(金) 12:49:16.86 ID:gxdpXMXl
  やっぱりそれしかないか・・・.
  ちょっと誤爆が怖いけど.

  715 :名無し~3.EXE:2012/04/28(土) 21:20:23.05 ID:krL2uB3+
  お前らがアスペっていうのは昔から聞いてたけどほんとなんだな.
  この流れはどうみても「ラーメンは何味が好き?」だろ.
  こんなこともわからないとかやっぱりアスペだなお前ら.

  716 :名無し~3.EXE:2012/04/28(土) 21:59:29.20 ID:BWKqevXj
  誤爆か遅レスか知らんがこれほど天唾乙と言えるレスもないな.

  717 :名無し~3.EXE:2012/05/02(水) 03:47:39.01 ID:wQplHjdm
  「a+b.txt」というファイル名をバッチファイルで記述するときはどうやるのでしょうか?
  +をエスケープ文字で回避すると思うのですが. .
  copy C:\a+b.txt C:\

  718 :名無し~3.EXE:2012/05/02(水) 03:52:22.88 ID:wQplHjdm
  > copy C:\a+b.txt C:\
  ディレクトリーを変えないといけなかった. copy C:\a+b.txt C:\d
  コピーじゃなくてファイル移動だと           move C:\a+b.txt C:\d
  でうまくいくのですが.

  719 :名無し~3.EXE:2012/05/02(水) 03:59:09.31 ID:wQplHjdm
  copy C:\"a+b.txt" C:\d
  で出来ました.

  720 :名無し~3.EXE:2012/05/02(水) 12:32:25.76 ID:wxWeUOsq
  cmd/?
  引用符が必要な特別な文字は次のとおりです:
  <スペース>
  &()[]{}^=;!'+, `~

  721 :名無し~3.EXE:2012/05/13(日) 17:19:57.01 ID:gmM8szhr
  コマンドプロンプトについての質問なんですが, 日本語入力をON, OFFするコマンドはありませんか?
  バッチファイルに書き込んで使いたいと思っています.

  722 :名無し~3.EXE:2012/05/13(日) 19:41:47.52 ID:pSaSucf4
  createobject("wscript.shell").sendkeys "%{kanji}"

  723 :名無し~3.EXE:2012/05/13(日) 22:11:56.36 ID:gmM8szhr
  >>722
  .NETの関数でしょうか.
  VBSファイルを作ってバッチファイルから呼び出してみましたがうまくいきませんでした.
  どうやって使えばいいのですか?

  724 :名無し~3.EXE:2012/05/14(月) 18:50:06.18 ID:yob5yN8B
  VBAのsendkeysかWin32APIのkeybd_eventを使うんだな.

  725 :名無し~3.EXE:2012/05/15(火) 10:11:19.08 ID:4YpaanVg
  WindowsXP Homeを使っています.
  ネットワークドライブを使うとき, 起動ごとにパスワードを聞かれます.
  netコマンドでどうにかなりませんか?

  726 :名無し~3.EXE:2012/05/15(火) 11:19:37.48 ID:1F1dODdR
  NET HELP USE
  http://ja.lmgtfy.com/?q=NET+USE+%E3%83%91%E3%82%B9%E3%83%AF%E3%83%BC%E3%83%89

  727 :名無し~3.EXE:2012/05/27(日) 11:15:46.97 ID:Zi/Qv7V4
  test.txtが.
  aaa
  bbb
  ccc
  という内容の時に.
  cmd /v:on
  for /F %i in ('type test.txt') do @set s=!s!%i
  echo %s%
  とやると.
  !s!aaabbbccc
  と改行が削除された状態で表示されますが, 最初の!s!を入れないようにすることは出来ないのでしょうか?

  728 :名無し~3.EXE:2012/05/27(日) 11:45:01.45 ID:b9LKc8gV
  for /F %i in ('type test.txt') do @if defined s (set s=!s!%i) else (set s=%i)

  729 :名無し~3.EXE:2012/05/27(日) 12:39:19.38 ID:Zi/Qv7V4
  >>728
  出来ました. ありがとございます!
  しかしこのような即レスをされる方がゴロゴロいるなんて, ここは梁山泊みたいなスレですね・・・.

  730 :名無し~3.EXE:2012/05/27(日) 15:28:02.07 ID:MxmPa/21
  set s=s
  for /F %i in ('type test.txt') do @set s=!s!%i
  set s=!s:~1!

  731 :名無し~3.EXE:2012/05/27(日) 23:06:41.74 ID:kVOsxa3X
  「梁山泊」は反社会的なゴロツキのアジトみたいな意味に受け取られる.
  理由は反社会的なゴロツキが自分達のアジトを「梁山泊」と命名したがる傾向にあるからだ.
  誉める時の喩えにはあまり使わない方がいい.

  732 :名無し~3.EXE:2012/05/30(水) 02:24:38.12 ID:dp2m2SV7
  >>731
  ?
  そうともいえないような気が. つ水滸伝.

  733 :名無し~3.EXE:2012/05/30(水) 11:11:48.31 ID:hY90iCOi
  触るなよ.

  734 :名無し~3.EXE:2012/05/31(木) 07:24:36.12 ID:GKrgWqBq
  環境変数の遅延展開を使いこなす山賊のアジトはここですか?

  735 :名無し~3.EXE:2012/06/01(金) 20:38:18.63 ID:ucWPdBkw
  ファイル作成の仕方について教えてください.
  (1.)ipconfig > tmp.txt
  (2.)tmp.txtを開き, 一行目Windows IP Configurationをコピー.
  (3.)tmp.txtをWindows IP Configuration.txtに変更.
  この例としてipconfigを挙げました.
  現状(2.)(3.)を手動でやっているのですが, (1.)〜(3.)の流れをコマンドで実行したいです.

  736 :名無し~3.EXE:2012/06/01(金) 21:09:07.19 ID:UDzrrlMD
  コマンドの出力結果の1行目の文字列をファイル名にしたいってこと?

  737 :名無し~3.EXE:2012/06/01(金) 21:23:46.81 ID:ucWPdBkw
  >>736  そう  言葉足らずすまん.

  738 :名無し~3.EXE:2012/06/01(金) 21:34:31.84 ID:UDzrrlMD
  ipconfig>tmp.txt
  for /f "delims=" %i in (tmp.txt) do if exist tmp.txt rename tmp.txt "%i.txt"
  ・・・これだと厳密には, コマンドの出力結果の1行目というより, ファイル名として使える文字列の行のうち, 最初の行の文字列にリネームされるけど.

  739 :名無し~3.EXE:2012/06/01(金) 21:51:25.22 ID:UDzrrlMD
  あと, >>738だと, 文字列の先頭3文字以内に「?」があると, 「?」が元ファイル名「tmp」のどれか1文字に置換されちゃうかも.

  740 :名無し~3.EXE:2012/06/01(金) 22:41:04.81 ID:YUcQN8Lb
  >>738
  XPだとエラーになってしまう.
  ipconfigの出力が変だからなので普通のファイルならいけるだろうけど.

  741 :名無し~3.EXE:2012/06/01(金) 22:49:37.12 ID:ucWPdBkw
  >>738
  できましたー  ありがとうございmす.
  300行ぐらいあるtxtなので全行にわたって処理が流れますが, 運用上問題ありません.
  また, 一行目に日本語が入ってるので, 出力したファイルが文字化けしてしまいますが,
  対策もしくは運用回避できそう.

  742 :名無し~3.EXE:2012/06/01(金) 22:57:18.26 ID:ucWPdBkw
  >>740ごめんなさい.
  ipconfigは一行目が空白?半角スペース?で2行目にWindows〜でした.
  例として適さなかったですね.

  743 :名無し~3.EXE:2012/06/01(金) 23:01:59.01 ID:YUcQN8Lb
  いや, 一行につき, 改行コードが0Aのと0D0Aのと二つ付いてそれでダメなんだけど.

  744 :名無し~3.EXE:2012/06/01(金) 23:03:34.46 ID:YUcQN8Lb
  0Dと0D0Aの二つの訂正.

  745 :名無し~3.EXE:2012/06/01(金) 23:36:15.95 ID:UDzrrlMD
  >>738は見ての通り, すごく乱暴なロジックだから, 使うとき気をつけてね.
  もし1行目の文字列.txtってファイル名が既存だったら2行目の文字列のファイル名になるし,
  ファイルの中身によっては>>739とか>>740さんみたいに意図しない結果になるかも.
  何千行, 何万行あっても延々とif exist 〜ってやり続けるからCPU食いまくったりするかもしれないし,
  全行の処理が終わる前に, たまたま誰か別のプログラムがtmp.txtってファイルを作って.
  それも何か変な名前にリネームしちゃったりすることもあるかも.

  746 :名無し~3.EXE:2012/06/02(土) 09:50:03.21 ID:0AyYZJnd
  1行目だけで良いなら.
  set /p nanika=<tmp.txt
  も場合によっては便利では.

  747 :729:2012/06/02(土) 17:15:21.15 ID:s4AwXJTk
  >>731
  サンデーのケンイチって漫画の読みすぎです. すみません. w.
  ところでまた質問があるのですが・・・.
  例えば「テンプレ.txt」の内容が.
  商品コード:@ID  商品名:@商品名.
  内容量:@容量 ml 小売価格:@価格 円.
  で, 「10001.csv」の内容が.
  @ID, 10001
  @商品名, スコッチ.
  @容量, 700
  @価格, 1200
  である時に「テンプレ.txt」の内容を.
  商品コード:10001  商品名:スコッチ.
  内容量:700 ml 小売価格:1200 円.
  のように書き換えて「10001.txt」に出力したいのですが, どのように記述したらよいでしょうか?
  あまりにも複雑で検討もつきません・・・. WSHとかでも大丈夫です.

  748 :名無し~3.EXE:2012/06/02(土) 17:47:45.16 ID:GYAfnnxQ
  素直に他の言語使え.

  749 :名無し~3.EXE:2012/06/02(土) 23:26:55.07 ID:8eYCkWb2
  >>747
  csvの内容が4つまでで簡単なエラーチェックしかしてないが, 以下を参考に.
  @echo off
  set target_dir=%~dp0
  set c=0
  for /f "tokens=1, 2 delims=, " %%i in (1001.csv) do (
  call :sub1 %%i %%j
  )
  call :create_rep_bat
  type nul>"%target_dir%%data0%.txt" 2>nul
  if not exist "%target_dir%%data0%.txt" goto :error
  for /f "delims=" %%i in (テンプレ.txt) do (
  call rep.bat %%i
  )
  goto :end
  :sub1
  set name%c%=%1
  set data%c%=%2
  set /a c += 1
  goto :eof

  750 :名無し~3.EXE:2012/06/02(土) 23:27:18.76 ID:8eYCkWb2
  :create_rep_bat
  if %c%==0 goto :eof
  echo @echo off> rep.bat
  echo set line=%%*>> rep.bat
  echo set line0=%%line:%name0%=%data0%%%>> rep.bat
  if %c%==1 goto :eof
  echo set line0=%%line0:%name1%=%data1%%%>> rep.bat
  if %c%==2 goto :eof
  echo set line0=%%line0:%name2%=%data2%%%>> rep.bat
  if %c%==3 goto :eof
  echo set line0=%%line0:%name3%=%data3%%%>> rep.bat
  if %c% gtr 4 goto :error
  echo if "%%line0%%" neq "%%line%%" echo %%line0%%^>^>
  %target_dir%%data0%.txt>> rep.bat
  goto :eof
  :error
  echo エラーだよ [count=%c% filename=%data0%.txt]
  :end
  del rep.bat>>nul
  goto :eof

  751 :名無し~3.EXE:2012/06/15(金) 23:27:35.99 ID:CSUU/bWD
  >>746ありがとうございます.
  set /p nanika=<tmp.txt
  rename tmp.txt %nanika%.txt
  これで>>738さんの方法と同様かつシンプルに動作しました.
  またアドバイスいただきたくてきたのですが,
  一行目に日本語文字があり上記のコマンドでファイル名をセットすると文字化けすることが.
  解決できずにいるのですが何か方法はありますか.

  752 :名無し~3.EXE:2012/06/16(土) 15:31:10.29 ID:8ul3taaL
  「c:\data」というフォルダを丸ごとバックアップするために.
  xcopy c:\data c:\data_bak\ /e /d /y
  というコマンドを定期的に実行しているのですが,
  このコマンドだと2回目以降のバックアップは差分バックアップで高速なのはいいのですが,
  「c:\data」から削除されたファイルが「c:\data_bak」に残ってしまいます.
  2つのフォルダの内容を同一にする方法はないでしょうか?

  753 :752:2012/06/16(土) 15:58:41.91 ID:8ul3taaL
  robocopyで出来ました. お騒がせしました.

  754 :名無し~3.EXE:2012/06/19(火) 21:58:40.28 ID:hGKihNyx
  テキストファイルの内容を書き換えて1行1レコードにしたいのですが, 例えば.
  [Name]あああ.
  [Age]10
  [Tel]1111-1111
  [Name]いいい.
  [Age]20
  [Tel]2222-2222
  [Name]ううう.
  [Age]30
  [Tel]3333-3333
  という内容のテキストファイル(Kaiin.txt)を.
  [Name]あああ [Age]10 [Tel]1111-1111
  [Name]いいい [Age]20 [Tel]2222-2222
  [Name]ううう [Age]30 [Tel]3333-3333
  のように1行1レコードに書き換えることはできるのでしょうか?
  ちなみにレコードは[Name]から始まることは確実なのですが,
  情報は3項目とは限らず, あるレコードには[E-Mail]という4つ目の項目があったりします.
  「delims=[Name]」とか色々やってみたのですが, 改行の扱い方がよくわかりませんでした・・・.

  755 :名無し~3.EXE:2012/06/19(火) 22:29:39.46 ID:h3brGujL
  type hoge.txt|tr -d \r|tr -d \n|sed "s/\[Name\]/\n[Name]/g"

  756 :名無し~3.EXE:2012/06/19(火) 23:22:20.00 ID:+q6zg+OS
  >>754
  setlocal ENABLEDELAYEDEXPANSION
  del Kaiin_fix.txt
  for /f "delims==" %%A in (Kaiin.txt) do (
  set t=%%A
  if "!t:~0, 6!" == "[Name]" (
  if not "!r!" == "" (
  echo !r!>>Kaiin_fix.txt
  )
  set r=%%A
  ) else (
  set r=!r!%%A
  )
  echo !r!
  )
  echo %r%>>Kaiin_fix.txt

  757 :名無し~3.EXE:2012/06/19(火) 23:27:36.15 ID:hGKihNyx
  >>755
  実行したら.
  'tr' は, 内部コマンドまたは外部コマンド,
  操作可能なプログラムまたはバッチ ファイルとして認識されていません.
  というメッセージが出てしまいました.
  うちのPCが古い(WinXP-Home)からでしょうか?

  758 :名無し~3.EXE:2012/06/19(火) 23:32:14.25 ID:hGKihNyx
  >>756
  そのまんまバッチファイルに保存して実行したら一発でうまく行きました〜!(>_<)
  本当にありがとうございます. 明日仕事で使うので助かりました!

  759 :名無し~3.EXE:2012/06/23(土) 00:15:06.65 ID:CNQPEC6l
  echoの直後にスペースも開けずにピリオドやセミコロンつける書き方あるけどあれってなんの意味があるの?

  760 :名無し~3.EXE:2012/06/23(土) 00:20:03.67 ID:4yKGjq8H
  一行開けたい時に使う.

  761 :名無し~3.EXE:2012/06/23(土) 00:32:22.36 ID:CNQPEC6l
  >>760
  いや前スレのレスNo.223に.
  for /F "tokens=1* delims=" %i in ('ipconfig /all') do @(echo.%i)>>IPconfig.txt
  みたいな記述があるんだが, ここのechoの直後にあるピリオドは何か意味があるのかなと思ったんだ.

  762 :名無し~3.EXE:2012/06/23(土) 06:13:03.01 ID:RDDqRHw0
  . は 半角スペースの意味.
  echo (半角スペース)を入れても.
  echo は on ですとか表示されるだけだから.

  763 :名無し~3.EXE:2012/06/23(土) 06:27:49.29 ID:IUrYg+zg
  %i は空文字列の場合がある, から.

  764 :名無し~3.EXE:2012/06/23(土) 06:40:25.24 ID:yaSGhGdy
  >>761
  読み込むテキストで空行の場合, %iは空となって, echo %iだとechoと展開されちゃうのでね.
  まあカッコで括ってるのには別段意味は無いと思われるけど.

  765 :761:2012/06/23(土) 10:04:48.19 ID:CNQPEC6l
  みなさんありがとう.
  試しに.
  for /F "tokens=1* delims=" %i in ('ipconfig /all') do @(echo.%i)
  ってやると.
  'echo.' は, 内部コマンドまたは外部コマンド,
  操作可能なプログラムまたはバッチ ファイルとして認識されていません.
  ってエラーが大量に表示され,
  for /F "tokens=1* delims=" %i in ('ipconfig /all') do @(echo;%i)
  ってやるとipconfig /allってやった時と同じ結果が表示される.
  コマンドのバージョンの違い?と思ってググったら環境によって使える記号が違うんですね. [下矢印]
  http://www.k-tanaka.net/windows/cmd/echo.html
  お騒がせしました.

  766 :名無し~3.EXE:2012/06/23(土) 20:42:06.86 ID:bc/3DJjo
  echo>echo
  echo.
  echo;
  ってやってみるとわかるよ.

  767 :名無し~3.EXE:2012/07/07(土) 13:09:27.69 ID:Kdkcgn1U
  DOS上でHDD1からHDD2に.
  xcopy を使ってシステムファイルをコピーしようと思います.
  USBメモリにDOS起動ディスクを作成して,
  DOSを起動してみたんですが,
  他のハードディスクのルートやそのディレクトリに移動できません.
  コマンドプロンプトで練習したようにうまくいかない・・・.
  ------------------------
  cd D:\
  cd E:\
  cd F:\
  無効なデバイスです.
  ------------------------
  と言われます.

  768 :名無し~3.EXE:2012/07/07(土) 13:36:34.02 ID:X0UV7FVl
  ・NTFS
  ・cdはドライブ移動コマンドじゃない.

  769 :名無し~3.EXE:2012/07/07(土) 16:22:54.53 ID:Kdkcgn1U
  NTFSはダメなんですか?
  きょうび, Windows XP以降は全部NTFSじゃないですか・・・・.
  じゃあ, どうやってDOS起動ディスクで.
  HDDのファイルをサルベッジするんですか.

  770 :名無し~3.EXE:2012/07/07(土) 16:35:26.06 ID:wZwUCNN4
  そういう用途だとWindowsPEじゃね?
  http://toro.2ch.net/test/read.cgi/win/1257735910/

  771 :名無し~3.EXE:2012/07/07(土) 17:13:02.96 ID:q+2kH2In
  以前SysinternalsでNTFS読めるドライバだしてたと思う.
  シェアだったような気もするが.

  772 :名無し~3.EXE:2012/07/07(土) 18:50:21.48 ID:X0UV7FVl
  >>769
  だからDOSなんて今日日使わない.

  773 :名無し~3.EXE:2012/07/07(土) 19:12:39.56 ID:Uxfb91hh
  そういう用途ならCDブートLinux使えばいい.
  Knoppixが有名だけどUbuntuもライブCDになってる.

  774 :名無し~3.EXE:2012/07/07(土) 20:56:46.46 ID:iWZr4r4v
  >>767
  cd /d D:\
  じゃないの?

  775 :名無し~3.EXE:2012/07/08(日) 01:19:51.59 ID:QfHoCOig
  もう関係ないけど.
  cd の/dオプションはDOSには無い.

  776 :名無し~3.EXE:2012/07/08(日) 18:16:56.79 ID:t735AZ9f
  >>770-775
  そうなのかー,
  PC自作してから10年くらい離れてたから.
  ぜんぜんわからんわー.

  777 :名無し~3.EXE:2012/07/08(日) 18:51:00.67 ID:t905MSPd
  10年前なら今と大して変わらんダロ.

  778 :名無し~3.EXE:2012/07/08(日) 19:01:58.26 ID:NciOzAkD
  Windows 95の頃からロングファイルネームの問題があったから,
  DOSの起動ディスクで起動してxcopyでシステムファイルのバックアップって出来なかったからなぁ.

  779 :名無し~3.EXE:2012/07/17(火) 10:35:54.06 ID:08QP62d3
  コマンドラインで, 引数の文字列に & を入れたいときは.
  どうしたらよいでしょうか.

  780 :名無し~3.EXE:2012/07/17(火) 16:34:51.25 ID:Fe4D8PGu
  ^&

  781 :名無し~3.EXE:2012/07/17(火) 19:01:32.92 ID:08QP62d3
  >>780
  ありがとう.
  できました.

  782 :名無し~3.EXE:2012/07/18(水) 00:33:55.68 ID:RoO3HiQY
  findstrでは文字コードがUTF8のテキストファイル内の全角文字を検索することは出来ないのでしょうか?

  783 :名無し~3.EXE:2012/07/18(水) 21:35:12.64 ID:26J7ozK/
  chcpでutf8にするか1252にするかすれば?

  784 :名無し~3.EXE:2012/07/18(水) 22:30:13.61 ID:b8oEzIqp
  >>770
  こういう情報って何の本で仕入れるんですか?
  Windows PE  っていう言葉自体を知らなかったです.
  ファイル救出?とかWindowsトラブル?
  とかそういうタイトルの書籍を読んだらいいですか?

  785 :名無し~3.EXE:2012/07/19(木) 00:49:38.11 ID:ZGZWnbQ/
  >>767そのドライブレター確認したOSとDOS起動ディスクが認識してるドライブレターは同じ?

  786 :名無し~3.EXE:2012/07/19(木) 01:03:52.98 ID:KDsuWFVb
  >>783
  chcp 1252
  を実行してからUTF8のテキストファイルをfidstrで検索してみましたが.
  検索結果のうち全角文字については文字化けしてしまい正しく表示されませんでした.
  というかそもそもchcp 1252を実行するとコマンドラインから全角文字が.
  入力できなくなりました.

  787 :名無し~3.EXE:2012/07/21(土) 01:20:14.02 ID:Pv4An8kW
  1252はutf8じゃなかんべ.

  788 :名無し~3.EXE:2012/07/21(土) 01:21:55.75 ID:Pv4An8kW
  ふつうaかbかというときはaはbじゃなかんべ.

  789 :名無し~3.EXE:2012/07/26(木) 11:29:20.04 ID:CcmXux6t
  バッチファイル作成のIF EXIST構文について質問です.
  IF EXIST F:\hoge\hogehoge\nul GOTo Label1
  このように, 指定したディレクトリが存在すればラベルにジャンプするようなことがしたいです.
  上記のようなパス名なら問題ないのですが,
  ディレクトリにスペースが入る場合は正常に動作しないです. (Documents And Settingsとか)
  通常のパス名指定のように, ""で囲う方法も駄目でした.
  うまく指定する方法があったら教えてください.

  790 :789:2012/07/26(木) 11:39:55.62 ID:CcmXux6t
  自己解決しました.

  791 :名無し~3.EXE:2012/07/26(木) 12:15:55.40 ID:NBWaatDv
  普通に有効だろ?

  792 :名無し~3.EXE:2012/07/29(日) 02:50:13.97 ID:qn0K8bH6
  職場でコマンドに詳しい人が「forとcallを併用すれば遅延展開と同じことできるよ」みたいなこと言ってたんですが, どういう意味なのでしょうか?
  ググっても全然意味がわかりません・・・.

  793 :名無し~3.EXE:2012/07/29(日) 03:30:43.23 ID:2GL95aL2
  http://d.hatena.ne.jp/jak-san/20090308/1236501217

  794 :名無し~3.EXE:2012/07/29(日) 21:28:24.02 ID:qn0K8bH6
  >>793
  サンキューです!
  echoの前にcallつけるだけでいいんですね.
  (1ループ毎のサブプローシージャ呼び出しみたいに展開されてるのだろうか?)
  ありがとうございました.

  795 :名無し~3.EXE:2012/07/30(月) 18:10:42.48 ID:66D8ZD+S
  Evalみたいなもんだ.

  796 :名無し~3.EXE:2012/08/01(水) 23:30:17.13 ID:XL3CDQvv
  Evalな.

  797 :名無し~3.EXE:2012/08/02(木) 10:56:18.68 ID:TB/SN1Sj
  Evalかよ.

  798 :名無し~3.EXE:2012/08/05(日) 00:25:05.66 ID:/6Pk7K3z
  テキストファイルが1つあるのですが, これの改行を全部取り除いて1行にしてしまうコマンドってありますか?

  799 :名無し~3.EXE:2012/08/05(日) 01:02:49.74 ID:dHLUEPcS
  1コマンドはない.
  nコマンドで作れる.

  800 :名無し~3.EXE:2012/08/05(日) 03:03:12.64 ID:/6Pk7K3z
  >>799
  nコマンドでよいのでお願いします!

  801 :名無し~3.EXE:2012/08/05(日) 15:53:14.73 ID:dHLUEPcS
  @echo off
  (for /f "delims=" %%I (テキストファイル) do set /p dummy=%%I) > 新テキストファイル.

  802 :名無し~3.EXE:2012/08/05(日) 19:24:46.32 ID:/6Pk7K3z
  >>801
  ありがとうございます!
  色々試行錯誤して以下のようにしたら1行で出来ました.
  (for /f "delims=" %%i in ('type in.txt') do @set /p dummy=%%i<nul) > out.txt
  ところで「%%」を「%」にしてバッチファイルではなく直接コマンドプロンプトから入力すると.
  set文の実行内容がいちいちタイトルバーに表示されてパフォーマンスがものすごく落ちますね.
  これってどうにもならないのでしょうか?まあバッチファイルでやればいいのですが, 若干面倒なので・・・.

  803 :名無し~3.EXE:2012/08/06(月) 21:22:45.57 ID:LV5EBWGS
  cmd /c (for /f "delims=" %i in ('type in.txt') do @set /p dummy=%i<nul) >
  out.txt

  804 :名無し~3.EXE:2012/08/06(月) 23:35:59.38 ID:ZB+nrifm
  >>803
  ありがとうございます.
  教えていただいたものをコマンドプロンプトに入力して実行すると.
  「指定されたファイルが見つかりません. 」というエラーになります・・・.
  [下矢印]のように色々変えて試しましたがやはり同じエラーになりました.
  何か原因がおわかりになるでしょうか?
  cmd /c (for /f "delims=" %i in ('type in.txt') do @set /p dummy=%i<nul) >
  out.txt
  cmd /c (for /f "delims=" %i in (type c:\in.txt) do @set /p dummy=%i<nul) >
  c:\out.txt
  cmd /c (for /f "delims=" %i in ('type c:\in.txt') do @set /p dummy=%i<nul) >
  c:\out.txt
  cmd /c (for /f "delims=" %i in ("type c:\in.txt") do @set /p dummy=%i<nul) >
  c:\out.txt
  cmd /c (for /f "usebackq delims=" %i in (`type c:\in.txt`) do @set /p
  dummy=%i<nul) > c:\out.txt
  cmd /c (for /f "delims=" %i in (c:\in.txt) do @set /p dummy=%i<nul) >
  c:\out.txt
  cmd /c (for /f "delims=" %i in ('c:\in.txt') do @set /p dummy=%i<nul) >
  c:\out.txt
  cmd /c (for /f "delims=" %i in ("c:\in.txt") do @set /p dummy=%i<nul) >
  c:\out.txt
  cmd /c (for /f "usebackq delims=" %i in (`c:\in.txt`) do @set /p dummy=%i<nul)
  > c:\out.txt

  805 :名無し~3.EXE:2012/08/06(月) 23:39:57.54 ID:ZB+nrifm
  ちなみに.
  cmd /c "type in.txt" > out.txt
  と入力するとin.txtと同一内容のout.txtが作成されるので.
  in.txtはきちんと存在しています.

  806 :名無し~3.EXE:2012/08/07(火) 00:16:01.54 ID:1JXfprE0
  cmd /c for /f "delims=" %i in ('type in.txt') do @set /p dummy=%i<nul >
out.txt

  807 :805:2012/08/07(火) 00:53:51.87 ID:ouQbeSLg
  >>806
  括弧取ればいいだけでしたか・・・. orz.
  助かりました. どうもありがとうございます.

  808 :名無し~3.EXE:2012/08/07(火) 18:52:29.28 ID:1JXfprE0
  ごめんね確認しないで書いてるもんで.

  809 :805:2012/08/09(木) 00:46:01.43 ID:CvGiPjbA
  >>808
  いえいえ見返りもないのにレス頂けただけでもありがたいです.
  お手数をお掛けしてすみませんでした.

  810 :名無し~3.EXE:2012/08/09(木) 23:20:20.95 ID:LDsLhA1c
  こんなところでこんな質問していいのかわかりませんけど・・・.
  コマンドプロンプトでNICの正常性を確認したい場合  どんなコマンドを使えばいいんでしょうか.
  systeminfoコマンドのみででわかるものなんでしょうか.

  811 :名無し~3.EXE:2012/08/10(金) 02:22:05.79 ID:HJMCAmsV
  ping 127.0.0.1

  812 :名無し~3.EXE:2012/08/10(金) 02:39:13.81 ID:MvUs+0Zv
  >>811
  TP線抜いたりデバイスマネージャでNIC無効にして試してみて.

  813 :名無し~3.EXE:2012/08/11(土) 03:24:44.46 ID:TBiUViGB
  テキストファイルを長さゼロの行, 又はスペース・タブ以外の文字が無い行を除外して表示させることは出来るのでしょうか?
  以下のようなコマンドを考えましたが, これだと長さゼロの行は除外されるのですが, タブしか無い行が表示されてしまいます・・・.
  findstr "[^]" test.txt

  814 :名無し~3.EXE:2012/08/11(土) 17:29:27.41 ID:EPp283Gd
  findstr /v "[ \t]*"

  815 :名無し~3.EXE:2012/08/11(土) 21:07:12.33 ID:TBiUViGB
  >>814
  やってみましたが, スペース1個だけの行もタブ1個だけの行も表示されてしまいます・・・.

  816 :名無し~3.EXE:2012/08/11(土) 21:40:10.32 ID:TBiUViGB
  色々試したら[下矢印]でスペースだけの行も非表示にすることが出来ました.
  findstr "[^]" test.txt | findstr /v /c:" "
  タブの非表示方法は見つけられませんでした・・・.

  817 :名無し~3.EXE:2012/08/12(日) 06:09:25.77 ID:yViiJIGe
  cmd /f

  818 :名無し~3.EXE:2012/08/12(日) 08:26:12.28 ID:mofPEIWX
  @if (0)==(0) echo off
  cscript //nologo /e:jscript "%~f0" <test.txt
  goto :eof
  @end
  var stdin=WScript.StdIn;
  while(!stdin.AtEndOfStream) {
  var data=stdin.ReadLine();
  if (!data.match(/^[ \t]*$/)) WScript.StdOut.WriteLine(data);
  };

  819 :816:2012/08/12(日) 22:27:36.56 ID:dDRqHhz6
  >>818
  それでばっちりうまくいきました. ありがとうございます!
  一応[下矢印]のようにしたら希望に近い動作にはなったのですが,
  これだと内容のある行のタブも全てなくなってしまうという欠点があったので助かりました.
  コマンドラインはタブの扱いは苦手なようですね・・・.
  more /t0 /s test.txt | findstr "[^]"

  820 :名無し~3.EXE:2012/08/12(日) 22:34:42.16 ID:dDRqHhz6
  あれ?
  今やり直して見たら[下矢印]でうまくいくような気が・・・.
  more /s test.txt | findstr "[^]"

  821 :820:2012/08/13(月) 00:28:40.47 ID:CN/4Vl7Y
  たびたびすみません. やはり>>820のやり方だとダメですね.
  結果をテキストファイルに出力してみるとタブが全て複数個のスペースに変換されていました.

  822 :名無し~3.EXE:2012/08/14(火) 15:36:46.82 ID:Q2YR48hU
  findstr /r /c:"[^ ]" test.txt
                  [上矢印]^空白タブ.

  823 :名無し~3.EXE:2012/08/14(火) 16:38:53.22 ID:4sKSLfuZ
  それ, バッチファイルからでないと動作せんだろ?
  それとも拡張機能だとかをオフにすればコンソールから叩けるのか?

  824 :名無し~3.EXE:2012/08/14(火) 17:56:36.34 ID:Q2YR48hU
  あほだな. w.
  more|cmd

  825 :名無し~3.EXE:2012/08/14(火) 18:03:55.06 ID:Q2YR48hU
  ちがった.
  type con|cmd

  826 :名無し~3.EXE:2012/08/14(火) 22:11:42.18 ID:4sKSLfuZ
  >>825
  それって「cmd /f:off」と意味同じ?
  どうでもいいけど「cmd /f:off」と「cmd /f:on」ってどちらかを一度でも実行すると.
  ファイル名のタブ補完機能が無効になってタブが入力できるようになるけど,
  コマンドプロンプトを起動しなおさない限り有効に戻せなくなるね.
  (「cmd /f:on」を実行してもタブ補完機能が有効にならず相変わらずタブが入力できる状態のまま)
  これって仕様?

  827 :名無し~3.EXE:2012/08/15(水) 02:10:50.26 ID:jfc8bPaK
  たぶんバグなんだろう, もはや仕様ってことになるんだろうと思う.
  けれども, ファイル名フォルダ名入力の補完機能は一応ちゃんと切り替わってるようだよ.
  ([Ctrl]+[D], [Ctrl]+[F])
  cmdの新たなインスタンスを作成しネストした場合, 親アプリケーションの環境を継承する.
  ことにはなっているが, パラメタを指定した場合, 全く同じというわけではないようだ.
  個人的には, [Tab]の補完はレジストリ参照だから/fオプションが指定されて.
  一旦リセットした時にその部分までリセットされちゃって引き継ぐことを忘れちゃっているんだろう.
  (/fじゃない別のオプションだとちゃんと引き継がれてるから)
  あと, 子インスタンスを終了して親インスタンスに戻るにはexitコマンドを使う.
  cmd /f:on
  の後, exitとやってやれば親に戻ってこられる.
  当然ながら子インスタンスの環境は破棄されるので子インスタンスで設定した環境変数は継承されない.
  (setlocal/endlocalと同じだと思えばいい)
  ただ, 親インスタンスに戻ってきても[Tab]での補完は無効になっちゃうのは何故なのか分からない.
  (誰かこの辺の動作を教えて下され)
  最後に.
  type con|cmdを使うのは俺はどうかと思う.
  なぜこんなのを使うのかその理由が聞きたい.
  動作的には, con特殊ファイルの内容をパイプすることになるわけだが.
  エコー機能をoffにしないと(cmd /q), タイプした文字(つまりconファイルの中身に相当する)
  がそのまま表示されちゃうし, いろいろと不都合が発生しそうだ.
  (exitで戻れるが存在しないファイルに書き込もうとしたとかエラーが出るし,
    exitじゃなくて, [Ctrl]+[C]で中止しちゃえばこのエラーは見なくて済むけど.
    for /?でヘルプを見ようとしたら. . . 固まっちゃったぞ)
  なお環境はXPでのことだから7なら違うのかも知れんけど.

  828 :名無し~3.EXE:2012/08/15(水) 11:14:15.44 ID:cz6Z7lt0
  for /f "delims=N" %I in ('cmd /u /c echo 三') do findstr /r /c:"[^ %tab%]"
  test.txt

  829 :名無し~3.EXE:2012/08/15(水) 11:15:39.48 ID:cz6Z7lt0
  ミス.
  for /f "delims=N" %I in ('cmd /u /c echo 三') do findstr /r /c:"[^ %I]"
test.txt

  830 :名無し~3.EXE:2012/08/15(水) 15:23:00.34 ID:2oHUuuJs
  >>826-827
  あほだな. w.

  831 :名無し~3.EXE:2012/08/15(水) 19:35:42.22 ID:JYYBD8eL
  >>829
  UNICODEの「三」はANSIでは「<TAB>+N」な訳か. すごい妙技だな. w.

  832 :名無し~3.EXE:2012/08/16(木) 01:09:37.35 ID:YlGbHwUX
  dir c:\windows\*2.txt /s/b
  とかやると拡張子が「txta」のものも表示されたり, 8.3形式側のファイル名で合致するものも表示されたりしますが,
  みなさんはいちいち.
  dir c:\windows\*2.txt /s/b | findstr "2\.txt$"
  とかやってるんでしょうか?
  とても面倒です. 何かもっと簡単な方法があれば教えて下さい.

  833 :名無し~3.EXE:2012/08/16(木) 18:35:48.35 ID:4Tkwha3H
  なし.

  834 :名無し~3.EXE:2012/08/17(金) 00:38:32.55 ID:QE8a/5Ie
  http://answers.microsoft.com/en-us/windows/forum/windows_7-files/wild-card-problem-on-windows-7/29c29674-4a3a-4bd8-b49d-5995dc972645

  835 :名無し~3.EXE:2012/08/18(土) 00:56:56.99 ID:Ch+wdkb1
  >>834
  CH12_0047.txtの8.3形式はCH3013~1.TXTだから.
  「del /q CH30*.txt」を実行するとCH12_0047.txtも消えちまうのか. 震えが止まらんな.

  836 :名無し~3.EXE:2012/08/18(土) 02:53:05.88 ID:GAss6Xsd
  つ  http://www.atmarkit.co.jp/fwin2k/win2ktips/1200disable83/disable83.html
  いい加減8.3名の自動生成機能はデフォルトOffでいいと思うんだけどなぁ.

  837 :名無し~3.EXE:2012/08/18(土) 08:07:23.69 ID:PsqJnwYm
  DELとか大昔から8.3の影響を受ける筆頭だろ.
  http://support.microsoft.com/kb/164351/ja
  喜べ少年. 君の願いは, ようやく叶う.
  8からはシステム以外はフォーマット時既定Offだ.

  838 :名無し~3.EXE:2012/08/18(土) 14:53:15.41 ID:kdSIi1cP
  del *.xls
  てやれば.
  *.xlsx
  も消してくれるわな.

  839 :名無し~3.EXE:2012/08/18(土) 16:56:03.80 ID:Ch+wdkb1
  >>836-837
  なるほど, 有名な話なんですね.
  >>838
  1.abc
  1.abcde
  123456789012345678901234567890.abc
  123456789012345678901234567890.abcde
  という4つのファイルがあって「del ????????.abc」ってやると全部消える. w.
  8.3形式のこと知らないと1番目のファイルだけ消えると考えちゃいそうだけど.
  これって最初はワイルドカード使った時だけの問題かと思ってたけどそうじゃないんだね.
  ただ単にファイルは2つの名前を持ってるというだけのことか.
  それにも関わらずMSはオフィスとかVisualStudioとかで3バイト以上の拡張子をバンバン使って.
  この問題を複雑化させてるね・・・.

  840 :名無し~3.EXE:2012/08/25(土) 13:49:21.52 ID:kquHFYQI
  Litst1.csv(商品コード, 商品名)-----
  100, 商品1
  200, 商品2
  300, 商品3
  400, 商品4
  Litst2.csv(商品コード, 価格)-----
  100, 5000
  200, 10000
  400, 20000
  Litst3.csv(商品コード, 商品名, 価格)-----
  100, 商品1, 5000
  200, 商品2, 10000
  300, 商品3,
  400, 商品4, 20000
  Litst1.csvとLitst2.csvからLitst3.csvを作ることは出来ますか?
  Litst1.csvには全ての商品が載っていますが, Litst2.csvには値段の無い商品(試供品など)は載っていません.
  2つとも商品コード順になっています.
  今は価格改定がある度にエクセルにインポートして手作業で編集しているのですごく不便です・・・.

  841 :名無し~3.EXE:2012/08/25(土) 13:59:07.75 ID:Bv8AIAN8
  エクセルの表ならコマンドラインでわざわざやらんでもエクセルの関数使えばいいだろ.
  升目のある表だけのソフトじゃないんだからさ・・・.

  842 :名無し~3.EXE:2012/08/28(火) 02:05:54.99 ID:GPomH5RQ
  >>840
  俺はコマンドライン知らんが, 原始的な方法としてはlist1とlist2を結合してソートして.
  正規表現置換で整形してしまえばいいんじゃね.
  list3で管理するようにして, 必要に応じてlist1やlist2を吐くようにするのが根本的な.
  解決だろうけど.

  843 :名無し~3.EXE:2012/08/28(火) 02:25:06.93 ID:TeyoM5/G
  エクセルにはこういうことに使うためにあるVLOOKUPっていう便利な関数があるんです.

  844 :840:2012/08/28(火) 06:56:55.52 ID:8ve8hln+
  本当はエクセルなんて使いたくないんです.
  最終的にはcsvにしたいだけなので.
  バッチコマンドでどうにかならないでしょうか?

  845 :名無し~3.EXE:2012/08/28(火) 07:43:11.60 ID:GPomH5RQ
  >>843
  vlookupって集計用じゃなかったっけ.
  list1とlist2からvlookupでlist3を作成. list3の表自体を直接修正はできないので結果を.
  csvで出力してから修正. 修正後のデータをexcelで読み込んで, list1とlist2の形で出力.
  てことになるのか?

  846 :名無し~3.EXE:2012/08/28(火) 10:51:40.75 ID:WUzBuKO2
  @echo off
  (for /f "tokens=1, 2* delims=, " %%I in (list1.csv) do (set /p=%%I, %%J, <nul
  for /f "tokens=2 delims=, " %%K in ('set /p"=^%%I, "^<nul^|findstr /r /g:/
  list2.csv') do set /p=%%K<nul
  echo;))>list3.csv

  847 :名無し~3.EXE:2012/08/28(火) 17:41:06.22 ID:5XZE6qYu
  やめとけ.
  powershellなら簡単にできるぞ(たぶん)
  そっちで聞け.

  848 :名無し~3.EXE:2012/08/28(火) 21:38:10.86 ID:8ve8hln+
  >>846
  ありがとうございます!上手くlist3.csvが作成されました.
  教えて頂いたバッチは1行目以外は全く理解不能で謎の呪文にしか見えませんけど・・・(笑)
  今のところ項目が増える予定はないのでこのままで問題ないです.
  本当にありがとうございました.

  849 :名無し~3.EXE:2012/08/28(火) 21:42:51.66 ID:8ve8hln+
  >>845
  私にはやり方の手順がうまくイメージ出来ないです.
  でも今後のためにvlooupという関数については調べて見ますね.

  850 :名無し~3.EXE:2012/08/29(水) 07:47:33.60 ID:wUW1UYub
  しかしなんでわざわざよりによって最も不向きなWindowsコマンドスクリプトで.
  こんな処理をさせなくてはならんのか.

  851 :名無し~3.EXE:2012/08/29(水) 13:12:43.09 ID:CZ9foUYv
  商品名や価格にカンマが入っているとすべてが崩壊.

  852 :名無し~3.EXE:2012/08/29(水) 14:24:45.26 ID:klObh3Z5
  まぞだな.

  853 :名無し~3.EXE:2012/09/06(木) 23:53:51.54 ID:VegFW4+R
  UTF8のテキストファイルをShift-JISに変換して保存することは出来ますか?

  854 :名無し~3.EXE:2012/09/07(金) 00:25:04.88 ID:FvKPD0bJ
  powershell なら余裕だが cmd だと難しいな.

  855 :名無し~3.EXE:2012/09/07(金) 00:27:48.12 ID:F0SzUMZ9
  http://scripting.cocolog-nifty.com/blog/2008/12/cmdexeunicodeut.html

  856 :名無し~3.EXE:2012/09/07(金) 01:35:37.10 ID:lUJO4jIl
  難しいな.

  857 :853:2012/09/07(金) 21:44:49.77 ID:JTeClmc8
  >>855
  ありがとうございます. 試しにメモ帳を開いて「あああいいいううう」と入力してファイル名をutf8.txt,
  文字コードをUTF8として保存し, 以下のスクリプトを実行しました.
  set f1=utf8.txt
  set f2=sjis.txt
  set t=tmp.txt
  start /min /wait cmd /c chcp.com 65001 ^& ^( set /p x="--"^<nul ^& cmd /u /c
  type %f1% ^) ^>%t%
  start /min /wait cmd /c chcp.com 932 ^& cmd /c type %t% ^>%f2%
  作成されたsjis.txtを開いて見ると文字コードはSJISになっているのですが,
  内容が「?あああいいいううう」となって先頭に「?」がついてしまいました.
  なぜなんでしょう?どなたか原因をご存知ないでしょうか?
  ちなみに4行目で文字コードをUTF8からUnicodeに変換し, 5行目でUnicodeからSJISに変換しています.

  858 :名無し~3.EXE:2012/09/07(金) 23:20:00.95 ID:lUJO4jIl
  utf8にbomがあるんじゃねーか.
  start /min /wait cmd /c chcp.com 65001 ^& ^( cmd /u /c type %f1% ^) ^>%t%
  でやってみ.

  859 :857:2012/09/08(土) 12:29:57.18 ID:zYwdbrke
  >>858
  ありがとうございます. bomなんて知りませんでした. (昔ゲーセンでやった「1942」というシューティングゲームが思い浮かびましたw)
  つまり私が>>857に書いたのはbom無し用であり, bomを付加してしまっているのですね.
  そしてメモ帳はUTF8で保存するとbomを付加する仕様なのでダブったbomが「?」と表示されてしまうと.
  おかげでコマンドでUTF8->SJIS変換が出来るようになりました. ありがとうございます.

  860 :857:2012/09/08(土) 16:12:45.33 ID:zYwdbrke
  ちなみに5行目は.
  type %t% >%f2%
  でもよいみたいです.

  861 :名無し~3.EXE:2012/09/08(土) 21:41:52.24 ID:zYwdbrke
  すみません, また質問なんですが, bomってコマンドプロンプト上からキーボードで入力できるのでしょうか?
  >>857の「set /p x="--"」の部分なんですが, キーボードでは厳しいですか?

  862 :名無し~3.EXE:2012/09/08(土) 22:37:39.77 ID:7MfyrgNJ
  alt+テンキー255
  alt+テンキー254

  863 :名無し~3.EXE:2012/09/15(土) 14:46:41.47 ID:C3uVNsum
  バッチ中に一時ファイル用としてramdiskを作れるようなの無いですかね?

  864 :名無し~3.EXE:2012/09/15(土) 15:55:32.98 ID:AGBRDVCI
  環境変数で代替しろ.

  865 :名無し~3.EXE:2012/09/15(土) 16:07:52.70 ID:C3uVNsum
  環境変数で代替?どういうこっちゃ.
  バッチで画像処理するツールの為の数十MBの.
  作成削除書き換えが頻繁な一時ファイル置き場が.
  欲しいわけなんだけど.

  866 :名無し~3.EXE:2012/09/15(土) 16:40:53.96 ID:tpqmeZ3C
  >>865
  環境変数には8KB弱の文字列を入れることができるから.
  と書こうと思ったが数十MBか. 面白い展開だな.
  /Eオプションでどこまで広げられるか, で決まるな.

  867 :名無し~3.EXE:2012/09/15(土) 16:46:17.14 ID:C3uVNsum
  ぶっちゃけディスクアクセスを減らしたい. あとフラグメント防止も兼ねて.

  868 :名無し~3.EXE:2012/09/15(土) 17:03:06.51 ID:YXJaFKtd
  気持ちはわかる.

  869 :名無し~3.EXE:2012/09/16(日) 00:45:05.49 ID:93bKjq9K
  一時的じゃなくて恒久的にRAMDISKを作成しておくのはダメなのか?

  870 :名無し~3.EXE:2012/09/17(月) 20:55:12.13 ID:H96X9x8A
  恒久的なのはメモリの無駄遣いなんだよなぁ・・・.

  871 :cmd:2012/09/17(月) 22:36:52.59 ID:EwsykKiH
  Windows 7
  超初心者です. レジストリの設定の進み方を教えてください.
  HKEY_CLASSES_ROOT\.bat\ShellNewです.

  872 :cmd:2012/09/17(月) 22:52:35.61 ID:EwsykKiH
  HKEY_CLASSES_ROOTから\.bat\ShellNewに進みたいのですが, ツリーが多く長いので探せません.

  873 :名無し~3.EXE:2012/09/17(月) 23:03:09.80 ID:H96X9x8A
  思い切りスレ違いでその名前って・・・釣り?

  874 :名無し~3.EXE:2012/09/17(月) 23:40:59.58 ID:NsVU8IOn
  そもそもこのスレ住人は, 日本語かコマンドで説明してもらえないと理解できません.

  875 :名無し~3.EXE:2012/09/17(月) 23:51:10.97 ID:s1iKQ0X9
  >>870
  スワップ可能な奴無かったっけ?

  876 :名無し~3.EXE:2012/09/18(火) 10:49:12.05 ID:Lu9E39xv
  [環境]
  OS:windows vista business SP2 64bit
  上記OSに付属しているコマンドプロンプトで, 以下の処理をさせたいと考えています.
  [やりたい事]
  複数ファイル(128文字程度の日本語ファイル名)の, サイズゼロのダミーファイルを.
  作成するバッチファイルを作りたいと考えています.
  [詰まっている事]
  以下のコマンドで, ディレクトリ配下の全ファイル名の取得とダミーファイルの作成は.
  出来る事まで調べられたのですが, これらをどう組み合わせればいいのかが判りま.
  せんでした.
  ディレクトリ配下のファイル名取得:dir /b
  サイズゼロのダミーファイルの作成:fsutil file createnew <ディレクトリパス\ファイル名> 0
  パイプを使ってファイル名のデータを受け渡しをすれば良いと思うのですが(あるいは.
  それをファイル数分ループさせる?), コマンドラインでそれを実現する能力が今の.
  自分にはありませんでした.
  上記につきまして, ご教示いただければ幸いです.

  877 :名無し~3.EXE:2012/09/18(火) 11:49:17.63 ID:qz0uSmZ2
  type nul > ファイル名.

  878 :名無し~3.EXE:2012/09/18(火) 12:00:29.89 ID:QAVt4hR4
  RoboCopy /CREATE

  879 :名無し~3.EXE:2012/09/18(火) 12:50:32.58 ID:Lu9E39xv
  回答ありがとうございました.
  手元で試したところ, robocopy /CREATE で簡易に意図通りの動作をさせる事ができました.
  こちらを使用させていただきます.
  五月雨な質問になって申しわけありませんが, もう一点質問させてください.
  「サイズが0でないファイルのみを別ディレクトリにコピー or 移動させる方法」は.
  有りますでしょうか.
  copyやmoveコマンドのオプションを調べてみましたが, さすがにこのような機能は.
  無い様で, googleセンセに問い合わせても解決できておりません.
  お手数ですがよろしくおねがいいたします.
  # やりたい事は, 実体のあるファイルとダミーファイルが混在しているディレクトリから.
  # 実体のあるファイルを取り出したい( =about= ダミーファイルを削除したい)となります.

  880 :名無し~3.EXE:2012/09/18(火) 13:31:44.13 ID:QAVt4hR4
  RoboCopy /MIN:1 /MOV

  881 :名無し~3.EXE:2012/09/19(水) 10:00:56.59 ID:qVAVC3Ft
  御礼が遅くなりましたが, 意図したとおりの動作をするスクリプトを作れました.
  ご教示ありがとうございました.

  882 :名無し~3.EXE:2012/09/19(水) 10:06:04.12 ID:wpt28jIu
  スクリプト中の処理が失敗したらそこでスクリプト自体が終了するような事って出来ます?
  bashで言うところのset -sのような.

  883 :名無し~3.EXE:2012/09/19(水) 11:28:59.26 ID:7P9VvtCj
  -e じゃね?

  884 :名無し~3.EXE:2012/09/21(金) 18:25:37.32 ID:8hwoTWoP
  各行 || exit /b
  各行 || goto :eof

  885 :名無し~3.EXE:2012/09/29(土) 01:18:09.31 ID:vfDPP9ja
  1
  3
  6
  7
  10
  って内容のテキストファイルを.
  1
  3
  6
  7
  10
  に書き換えることって出来る?

  886 :名無し~3.EXE:2012/09/29(土) 01:31:05.01 ID:vfDPP9ja
  すみません, 間違えてたのでもう一度書きます.
  1, AAA, あああ, 111
  3, BBB, いいい, 222
  6, CCC, ううう, 333
  7, DDD, えええ, 444
  10, EEE, おおお, 555
  という内容のテキストファイルを.
  1, AAA, あああ, 111
  3, BBB, いいい, 222
  6, CCC, ううう, 333
  7, DDD, えええ, 444
  10, EEE, おおお, 555
  に書き換えることは出来ますでしょうか?
  つまりカンマで区切られた最初の項目で番号がとんでいるところに改行を入れたいのです.

  887 :名無し~3.EXE:2012/09/29(土) 03:08:46.28 ID:8NAnYJ1b
  確実にデータがその形式でかつ昇順だとすれば.
  @echo off
  set cnt=2
  for /f "tokens=* delims=, " %%I in (list.txt) do (
  call :insert_lines %%I
  echo. %%I
  set /a cnt+=1
  )
  goto :eof
  :insert_lines
  for /l %%s in (%cnt%, 1, %1) do @echo.&set /a cnt+=1
  goto :eof

  888 :名無し~3.EXE:2012/09/29(土) 03:11:12.01 ID:8NAnYJ1b
  訂正.
  @echo off
  set cnt=2
  for /f "tokens=*" %%I in (list.txt) do (
  call :insert_lines %%I
  echo %%I
  set /a cnt+=1
  )
  goto :eof
  :insert_lines
  for /l %%s in (%cnt%, 1, %1) do @echo.&set /a cnt+=1
  goto :eof

  889 :886:2012/10/02(火) 02:14:43.47 ID:O1uaudI+
  >>887-888
  返事が遅れてすみません.
  うまくいきました. ありがとうございます!
  スクリプトまで書いて頂いて申し訳ないです.

  890 :名無し~3.EXE:2012/10/07(日) 00:44:58.40 ID:2YgTPdV8
  父がデジカメを趣味にしていて, 撮った写真をパソコンに保存しています.
  それでパソコンが壊れた時に備えて定期的にUSBメモリにバックアップしたいと頼まれました.
  バックアップ対象のフォルダは決まっているので「robocopy c:\aaa g:\aaa /mir」というコマンドで出来そうなのですが,
  例えばUSBメモリの挿し忘れや, USBメモリのドライブレターがずれた時などに備えて.
  USBメモリのドライブ直下に「abcxyz.txt」などというファイルを作り, ドライブ直下にこのファイルが.
  存在するドライブがある場合のみそのドライブにコピーを行い, そういうドライブが無い場合は.
  「USBメモリが挿入されていません」とメッセージを出してバッチを終了させるようにしたいのです.
  そこで「AからZまでをループさせてうんたらかんたら・・・」で出来そうだなと思ったのですが,
  実現方法が全然わかりません(^^;)
  Forコマンドとか使えばいいんでしょうか?
  ちなみにUSBメモリは大容量なので容量不足の心配はありません.

  891 :名無し~3.EXE:2012/10/07(日) 01:03:20.68 ID:2YgTPdV8
  すみません, 追記です.
  今調べたら父のパソコンは「Windows XP Home」で, robocopyコマンドが無いようです.
  いきなり詰んでしまいました・・・(T_T)

  892 :名無し~3.EXE:2012/10/07(日) 01:44:09.71 ID:FSAsTUzK
  >>891
  つWindows Server 2003 Resource Kit Tools
  http://www.microsoft.com/downloads/details.aspx?FamilyID=9d467a69-57ff-4ae7-96ee-b18c4790cffd&DisplayLang=en&displaylang=en

  893 :名無し~3.EXE:2012/10/07(日) 06:22:23.05 ID:rwc8PvCC
  >>890
  そういうのは素直にGUI付きのバックアップツールを使った方が楽だと思われ.
  バッチだとパス指定ミスってても気付きにくいから.
  いざ壊れて復元しようと思ったらバックアップできてなかった!
  なんてことにもなりかねないし.

  894 :名無し~3.EXE:2012/10/07(日) 23:25:12.89 ID:2YgTPdV8
  >>892
  ありがとうございます. おかげでrobocopyが使えるようになりました.
  一応今日丸一日費やしてなんとか自力で作ってみました.
  非常に冗長ですが, 一応動きました. w.
  (ちなみにドライブAを指定すると変な動きをしたのでAは省きました)
  -------------------------------------------------------
  @echo off
  set drv=
  if exist b:\abcxyz.txt set drv=b
  if exist c:\abcxyz.txt set drv=c
  if exist d:\abcxyz.txt set drv=d
  if exist e:\abcxyz.txt set drv=e
  if exist f:\abcxyz.txt set drv=f
  if exist g:\abcxyz.txt set drv=g
  if exist h:\abcxyz.txt set drv=h
  if exist i:\abcxyz.txt set drv=i
  if exist j:\abcxyz.txt set drv=j
  if exist k:\abcxyz.txt set drv=k
  if exist l:\abcxyz.txt set drv=l
  if exist m:\abcxyz.txt set drv=m
  if exist n:\abcxyz.txt set drv=n
  if exist o:\abcxyz.txt set drv=o
  if exist p:\abcxyz.txt set drv=p
  続く〜.

  895 :名無し~3.EXE:2012/10/07(日) 23:26:04.52 ID:2YgTPdV8
  〜続き.
  if exist q:\abcxyz.txt set drv=q
  if exist r:\abcxyz.txt set drv=r
  if exist s:\abcxyz.txt set drv=s
  if exist t:\abcxyz.txt set drv=t
  if exist u:\abcxyz.txt set drv=u
  if exist v:\abcxyz.txt set drv=v
  if exist w:\abcxyz.txt set drv=w
  if exist x:\abcxyz.txt set drv=x
  if exist y:\abcxyz.txt set drv=y
  if exist z:\abcxyz.txt set drv=z
  if not defined drv echo USBメモリが差し込まれていません. 差し込んでからもう1度実行して下さい. & set /p a=&
  goto :eof
  robocopy c:\aaa %drv%:\aaa /mir
  echo.
  echo.
  if %errorlevel% gtr 1 echo バックアップが失敗しました. もう1度やり直して下さい. & set /p a=& goto :eof
  echo バックアップが完了しました. 何かキーを押して下さい. & set /p a=

  896 :名無し~3.EXE:2012/10/07(日) 23:41:37.90 ID:EgqJ6nAm
  if文をforで回すなら.
  for %%a in (b c d e f g h i j k l m n o p q r s t u v w x y z) do if exist
  %%a:\abcxyz.txt set drv=%%a

  897 :名無し~3.EXE:2012/10/08(月) 09:09:23.58 ID:V+aCKgEx
  そういう機能があるバックアップソフト使えよ.

  898 :894:2012/10/08(月) 11:52:03.09 ID:IznETznk
  >>896
  めちゃくちゃ短くなりました. ありがとうございます!

  899 :名無し~3.EXE:2012/10/08(月) 22:33:49.79 ID:19eXqaKh
  ちょっと話が逸れるけど.
  USBメモリじゃなくてUSBマルチメモリリーダライタでSDカードを刺した場合に.
  同じことをやるとカードを刺してないドライブの場合にエラーのメッセージボックスが.
  開いてそこでbatが一時停止してしまった.
  (Windows - ディスクがありません  Exception Processing Message c0000013)
  そこで, カードを刺してないドライブの場合を回避出来ないかとチャレンジしてみた.
  するとdiskpartコマンドでvolume一覧が取得できることが分かった(管理者権限が必要)
  (ただ, XPの場合) Volume一覧でTypeが"リムーバプ(pu)ル"になってるのはバグだな.
  for /f "skip=9 tokens=3, 4" %%a in ('echo list volume^|diskpart') do if "%%b"
  neq "リムーバプル" if exist %%a:\abcxyz.txt set drv=%%a

  900 :名無し~3.EXE:2012/10/09(火) 12:02:10.16 ID:dP495pbP
  diskpart に echo で単発コマンドを渡すのはなんとなくキモイな・・・・・・.
  diskpart は exit で終わっておきたいから, 手間でも /s でスクリプトを.
  渡してやったほうが落ち着く.
  個人的な感想でスマン.
  あと, 「リムーバブル」の表示が化けるならそれはそのPCの問題.
  普通は化けたりしない.

  901 :名無し~3.EXE:2012/10/09(火) 12:56:19.55 ID:jW+kkYmn
  いや, diskpart.exeにpuで書かれてるんだよ.

  902 :名無し~3.EXE:2012/10/09(火) 12:59:14.47 ID:Hm3MktIb
  そういう誤字は多いな, XP

  903 :名無し~3.EXE:2012/10/09(火) 14:57:11.01 ID:dP495pbP
  >>901
  ああぁ, 把握した, ブ であるべきが プ になっているってことか,
  pu で化けているってことかと勘違いした, すまん.

  904 :名無し~3.EXE:2012/10/15(月) 11:32:15.30 ID:X31E4nYu
  お知恵をお借りいたしたく.
  OS:
  windows vista 64bit
  やりたい事:
  キーワードが列挙されているリストAがあります.
  任意のファイルBが入力された場合, そのファイルBのファイル名とリストAのキーワードを比較して,
  ファイル名にキーワードが含まれていた場合に処理Cを実行するような処理を作ろうとしています.
  その処理の中の「ファイル名にキーワードが含まれているか」の判定文の書き方がわかりません.
  この部分, どのようにすれば良いでしょうか?
  させたい処理の例:
  リストAの記述.
  hoge[aaa]
  hoge[bbb]
  hoge[CCC]
  ファイルBのファイル名.
  hoge[aaa]20120101.txt
  バッチ例:
  setlocal enabledelayedexpansion
  for /f "delims=" %%A in (リストA) do (
  if (ファイル名にキーワードが含まれているかの判定) (
  真の処理.
  )
  )
  上記例だと, リストAの1行目の文字列はファイルBのファイル名に含まれる為に"真の処理"が実施され,
  リストAの2〜3行目の文字列はファイル名に含まれない為に何も実施されないのが, 期待値となります.

  905 :名無し~3.EXE:2012/10/15(月) 15:46:43.39 ID:X31E4nYu
  ggrセンセと先達の知恵で解決できました.
  ご協力ありがとうございました.
  ---
  echo ファイル名 | find "リストから取ってきた文字列" > NULL
  IF NOT ERRORLEVEL 1 (
  真の処理.
  )

  906 :名無し~3.EXE:2012/10/17(水) 20:08:15.90 ID:LmUXH1h4
  OS:windows7 64bit
  ファイル名を変数に入れ, その変数で示されるファイルのサイズが.
  ゼロかどうかで処理を分岐させるバッチを作ろうとしていますが,
  上手くいきません.
  set F=z:\aaa
  if %~zF==0 goto SIZE_ZERO
  :SIZE_ZERO
  〜.
  上記を実行すると"バッチ パラメータの置き換えで, パス演算子の.
  次の使用法は無効です.有効な形式については, CALL /? または FOR
  /? と入力してください. "と表示されますが, ヘルプを見ても具体的.
  にどうすべきなのかが分かりませんでした.
  解決方法をご教示ください.

  907 :名無し~3.EXE:2012/10/17(水) 20:47:36.91 ID:ecr2oTC9
  CALLを使うとこんな感じ.
  set F=z:\aaa
  call :CHECK_ZERo %F%
  goto :eof
  :CHECK_ZERO
  if %~z1%==0 goto SIZE_ZERO
  goto :eof
  :SIZE_ZERO
  〜.
  FORを使うとこんな感じ.
  set F=z:\aaa
  for %%a in (%F%) do if %%~za==0 goto SIZE_ZERO

  908 :名無し~3.EXE:2012/10/17(水) 22:55:31.49 ID:LmUXH1h4
  出来ました. ありがとうございます.
  一度別の変数に入れなおしてから比較するのですね・・・.

  909 :名無し~3.EXE:2012/10/17(水) 23:54:17.08 ID:VR4de62Z
  >>908
  普通の環境変数には修飾子が使えないわけで. . . (別変数に入れなおしてもダメ)
  修飾子が使えるのは, バッチパラメタとfor参照変数だけ.

  910 :名無し~3.EXE:2012/10/19(金) 22:40:18.23 ID:c1DsyCzz
  誤 for参照変数.
  正 for変数参照.

  911 :名無し~3.EXE:2012/10/20(土) 22:43:24.14 ID:TBgnsXGG

  912 :名無し~3.EXE:2012/10/20(土) 22:44:27.52 ID:duQLcIVJ

  913 :名無し~3.EXE:2012/10/28(日) 01:58:19.19 ID:OsymH7ca
  一行にセミコロンがいくつかあるテキストファイルをセミコロンを改行に置き換えたい.
  バッチファイル作ってみたがちゃんと動作しない.
  行途中のセミコロンが削除され, 最後のセミコロンだけLFに置き換わる.
  たすけて.
  ====test_inpput.txt====
  AAA; BBB; CCC;
  DDD; EEE;
  =====作ってみたバッチファイル==============
  @echo off
  set output=test_output.txt
  type nul >%output%
  setlocal ENABLEDELAYEDEXPANSION
  for /f "delims=" %%A in (test_input, txt) do (
  set line=%%A
  echo !line:;=!LF!>>%output%
  )
  endlocal

  914 :名無し~3.EXE:2012/10/28(日) 10:11:47.16 ID:PvXRJQzF
  @if (0)==(0) echo off
  cscript.exe //nologo //e:jscript "%~f0" < test_inpput.txt
  goto :EOF
  @end
  WScript.Echo(WScript.StdIn.ReadAll().replace(/;/g, "\r\n"));

  915 :名無し~3.EXE:2012/10/28(日) 11:29:51.10 ID:OsymH7ca
  >>914 それに出力ファイル指定すればできました!
  ありがとうございます(_ _)

  916 :名無し~3.EXE:2012/10/28(日) 12:27:58.34 ID:eAz3CEDu
  同じ内容を書くなら, きっと俺も>>913のように書くな・・・.
  >>913の何が悪いのか, ご教授頂ければ幸いです.

  917 :名無し~3.EXE:2012/10/28(日) 13:22:58.62 ID:IveMoZwI
  見てすぐわかる.
  !line:;=!LF!
  これは変数の置換 !line:;=! と 文字列 LF! だから.

  918 :名無し~3.EXE:2012/10/28(日) 13:40:10.16 ID:IveMoZwI
  setlocal enableextensions enabledelayedexpansion
  set out=out.txt
  type nul>%out%
  set LF=^
  rem 改行抜かさない事.
  for /f "delims=" %%i in (in.txt) do call :sub "%%~i"
  goto :eof
  :sub
  set line=%~1
  echo %line:;=!LF!%>>%out%
  goto :eof

  919 :名無し~3.EXE:2012/10/28(日) 21:35:58.53 ID:PvXRJQzF
  変数が展開されるし特殊文字でおかしくなる.
  ちゃんとやると面倒.

  920 :名無し~3.EXE:2012/10/28(日) 22:15:53.53 ID:IveMoZwI
  まあね. 文字列扱うならバッチに拘ることはない.

  921 :名無し~3.EXE:2012/10/29(月) 01:19:15.44 ID:RWLMA0hX
  丸投げですみませんがどのように記述すればよいのか教えてください.
  以下のようなinput.txtをoutput.txtのように変換したいと思っています.
  output.txtはエクセルで読み込む事を想定しています.
  input.txtは{}で括った2段階の階層構造となっています.
  ({, や}, のコンマはinput.txtを作る段階で付随してしまいました)
  また, "見出し", "値"という形式で並んでおり,
  見出しのTITLE, SUBTITLE, AAA, BBB, CCC, DDDは完全に固定された文字列ですが,
  値のtest1, test2, aa, dddなどは数値だったり文字列だったりします.
  以下のサンプルのinput.txtファイルは2つのTITLEを持ちますが,
  ファイルによってはTITLEが3つ以上ある場合もあります.
  まずはTITLE〜TITELの直前まで1つのtxtファイルとして切り出してみようとして,
  くじけてしまいました. . .

  922 :名無し~3.EXE:2012/10/29(月) 01:21:21.77 ID:RWLMA0hX
  ===input.txt=========================
  {,
  TITLE, test1
  SUBTITLE, test2
  {,
  AAA, aa
  BBB, bb
  CCC, CC
  },
  {,
  DDD, ddd
  },
  },
  {,
  TITLE, test3
  SUBTITLE, test4
  {,
  AAA, aaaa
  DDD, dddd
  },
  },
  ======================================
  ===output.txt======================
  TITLE, SUBTITLE, AAA, BBB, CCC, DDD
  test1, test2, aa, bb, cc,
  test1, test2, , , , ddd
  test3, test4, aaaa, , , dddd
  ====================================

  923 :名無し~3.EXE:2012/10/29(月) 04:13:33.09 ID:lS8S2JMX
  @if (0)==(0) echo off
  cscript.exe //nologo //e:jscript "%~f0" < input.txt > output.txt
  goto :EOF
  @end
  n=['TITLE', 'SUBTITLE', 'AAA', 'BBB', 'CCC', 'DDD'];v={};s=0;
  for (i=0;i<n.length;i++) v[n[i]]='';
  WScript.Echo(n);
  while (!WScript.StdIn.AtEndOfLine){
  line=WScript.StdIn.ReadLine().split(', ');
  switch(line[0]){
  case '{' : s++; break;
  case '}' : if(s--==2){
  for (i=0, tmp=[];i<n.length;i++) tmp.push(v[n[i]]);
  WScript.Echo(tmp);
  for (i=2;i<n.length;i++) v[n[i]]=''}; break;
  default: v[line[0]]=line[1]; break;
  }}

  924 :名無し~3.EXE:2012/10/29(月) 08:25:21.47 ID:EqDA/2Wi
  スペースとか特殊文字とかがあるとダメになるけど, batコマンドだけでやるなら.
  @echo off
  set index=0&set t0=
  for /f "tokens=1, 2 delims=, " %%a in (input.txt) do if "%%b" neq "" call :sub
  %%a %%b
  set t=%t1%&for /l %%a in (2, 1, %index%) do call set t=%%t%%, %%t%%a%%
  echo %t%
  set nest=0&set k1=&set k2=&for /l %%a in (1, 1, %index%) do set d%%a=
  for /f "tokens=1, 2 delims=, " %%a in (input.txt) do call :next %%a %%b
  goto :eof
  :sub
  set hit=-1&for /l %%s in (0, 1, %index%) do call :sub2 %%s %1 %%t%%s%%
  if %hit% neq -1 set d%hit%=%2&call set k%nest%=%%k%nest%%% %hit%&goto:eof
  set /a index+=1
  set t%index%=%1
  goto :eof
  :sub2
  if "%2"=="%3" set hit=%1
  goto :eof
  :next
  if %1 equ { set /a nest+=1&set disp=on&goto :eof
  if %1 neq } call :sub %*&goto :eof
  if %disp%==off goto :next2
  set d=%d1%&for /l %%c in (2, 1, %index%) do call set d=%%d%%, %%d%%c%%
  echo %d%
  :next2
  call :del %%k%nest%%%&set /a nest-=1&set disp=off&goto :eof
  :del
  (for %%c in (%*) do set d%%c=)&set k%nest%=&goto :eof

  925 :921:2012/10/30(火) 00:59:08.31 ID:1w0mYBgn
  >>923>>924お二人ともありがとうございました.
  >>923
  WHSは理解が乏しいですが, C言語のように配列を使えるのは読み易いですね.
  実際に組み込んでみたところ, ほぼ思い通りの動作が実現できました.
  見出しの"SUBTITLE"が階層の1層目にも2層目にもあり, 出力では1層目の値に2層目の値が入ってしまいました.
  前段階のinput.txtを出力するときに, 区別つけることで回避できそうです.
  >>924
  データ構造の情報提供不足でした.
  "値"にはスペースやコロン, 全角文字を含むものもありました.
  実際に組み込んでみたところ, ループから抜け出せない&出力をどこに挿入していいかわかりませんでした.
  batだけでできるのはすごい魅力的です.

  926 :名無し~3.EXE:2012/10/30(火) 18:51:58.81 ID:mmNicCA8
  ディスクトップみたい.

  927 :名無し~3.EXE:2012/10/31(水) 07:09:17.72 ID:LodykZFr
  >>925
  修正版を作ってみた(但し, input.txtはSJISコードのファイルとする)
  使える記号やSJIS漢字に制限はなし(スペース!#$&'()^<>^?_~|=%\@[]+*;:./" は大丈夫)
  各層ごとに項目チェックするようにした.
  (1層目と2層目の両方に同じTITLEがあっても別物として取り扱う)
  bat中に出力ファイル名を記述するようにした.
  なお参考までに, あるbatの標準出力(画面表示)をファイルに書き出すには.
  test.bat>output.txt
  のようにしてファイルにリダイレクトすればよい.
  仕様が不明だけど,
  1層目の項目データに抜けがあった場合, 当ブロックだけの項目とし前のブロックの項目は引き継がない.
  1層目だけで2層目が無い場合もデータは出力する.
  もし万一2層目のデータ中にカンマが存在したらカンマは削除する(例 10, 000 -> 10000)
  なお, 3層目以降があっても構わないが, 変数(k3, n3, k4, n4等)を初期化してないので同じ環境上2度目以降の実行は動作保証されない.

  928 :名無し~3.EXE:2012/10/31(水) 07:09:50.00 ID:LodykZFr
  @echo off
  set INPUT_FILE="input.txt"
  set OUTPUT_FILE="output.txt"
  set INPUT_TMP=tmp_in.tmp
  set OUTPUT_TMP=tmp_out.tmp
  (for /f "usebackq tokens=*" %%a in (%INPUT_FILE%) do set data=%%a&call
  :conv)>%INPUT_TMP%
  call :main %INPUT_TMP%>%OUTPUT_TMP%
  (for /f "usebackq tokens=*" %%a in (%OUTPUT_TMP%) do set data=%%a&call
  :reconv)>%OUTPUT_FILE%
  del %INPUT_TMP% %OUTPUT_TMP%
  goto :eof
  :conv
  set data="%data:"=鳬"%"
  set data=%data:^=鳬^%
  set data=%data:&=鳬&%
  set data=%data:|=鳬|%
  set data=%data:<=鳬<%
  set data=%data:>=鳬>%
  call :conv_ex
  echo %data:"=%
  goto :eof
  :conv_ex
  rem もしデータ中に", "があったら削除する.
  for /f "tokens=1* delims=, " %%a in (%data%) do set data1=%%a&set data2=%%b
  if defined data2 set data2=%data2:, =%
  set data=%data1%, %data2%
  goto :eof

  929 :名無し~3.EXE:2012/10/31(水) 07:10:34.77 ID:LodykZFr
  :reconv
  set data="%data:鳬<=^<%"
  set data=%data:鳬>=^>%
  set data=%data:鳬|=^|%
  set data=%data:鳬&=^&%
  set data=%data:鳬^=^^%
  set data=%data:鳬"="%
  echo %data:~1, -1%
  goto :eof
  :main
  set index=0&set nest=0&set nest_max=0&set t0=++dummy++&set k1=&set k2=&set
  n1=&set n2=
  for /f "usebackq tokens=1* delims=, " %%a in (%*) do set data1=%%a&set
  data2=%%b&call :sub
  set t=&for /l %%a in (1, 1, %nest_max%) do call :sub_make_title %%a
  echo %t:~1%
  set nest=0&set k0=&for /l %%a in (1, 1, %index%) do set d%%a=
  for /f "usebackq tokens=1* delims=, " %%a in (%*) do set data1=%%a&set
  data2=%%b&call :next
  goto :eof
  :sub_make_title
  call set forlist=%%n%1%%
  for %%b in (%forlist%) do call set t=%%t%%, %%t%%b%%
  goto :eof

  930 :名無し~3.EXE:2012/10/31(水) 07:11:30.21 ID:LodykZFr
  :sub
  if "%data1%" == "{" set /a nest+=1&goto :eof
  if "%data1%" == "}" set /a nest-=1&goto :eof
  if %nest% gtr %nest_max% set nest_max=%nest%
  set hit=-1
  call set forlist=%%n%nest%%%
  for %%s in (%forlist%) do call :sub2 %%s "%%t%%s%%"
  if %hit% neq -1 set d%hit%=%data2%&call set k%nest%=%%k%nest%%% %hit%&goto:eof
  set /a index+=1
  set t%index%=%data1%
  call set n%nest%=%%n%nest%%% %index%
  goto :eof
  :sub2
  if "%data1%" equ %2 set hit=%1
  goto :eof
  :next
  if "%data1%" equ "{" set /a nest+=1&set disp=on&goto :eof
  if "%data1%" neq "}" call :sub&goto :eof
  if %disp%==off goto :next2
  set data=%d1%&for /l %%c in (2, 1, %index%) do call set data=%%data%%,
%%d%%c%%
  echo %data%
  :next2
  call :del %%k%nest%%%&set /a nest-=1&set disp=off
  goto :eof
  :del
  (for %%c in (%*) do set d%%c=)&set k%nest%=
  goto :eof

  931 :名無し~3.EXE:2012/11/03(土) 15:52:11.59 ID:lDmefxUU
  バッチでやるもんじゃない.

  932 :名無し~3.EXE:2012/11/03(土) 16:29:56.47 ID:lDmefxUU
  バッチで無理するとばっちい.

  933 :名無し~3.EXE:2012/11/05(月) 11:32:29.64 ID:K4UsPEae
  馬鹿なこと言ってんなよ.
  こっちにとばっちりくるだろ.

  934 :名無し~3.EXE:2012/11/05(月) 22:08:14.30 ID:+/36/XSe
  正論だな.

  935 :名無し~3.EXE:2012/11/06(火) 12:11:39.99 ID:hC6Puyhu
  >>934 <-馬鹿.

  936 :名無し~3.EXE:2012/11/06(火) 16:38:16.05 ID:6BctWnle
  ん?
  そか!
  力作のバッチを褒めて欲しかったのか?
  褒めてやろうか?
  ご苦労.
  お疲れ.

  937 :名無し~3.EXE:2012/11/07(水) 16:45:53.93 ID:ehtnocP9
  10行以上のバッチは見る気がしないな.

  938 :名無し~3.EXE:2012/11/08(木) 00:39:53.44 ID:HS6Vpnnz
  私はすごいと思ってます.

  939 :名無し~3.EXE:2012/11/08(木) 00:50:59.01 ID:YeWMHax9
  なにがすごいんだ?
  どうせ碌でもないものしかできないのにか?

  940 :名無し~3.EXE:2012/11/08(木) 15:12:11.74 ID:R+u8GS3O
  >>940
  自分の実力でモノを量るクセは直した方がいいぞ.

  941 :名無し~3.EXE:2012/11/08(木) 15:15:29.82 ID:7dLwXUk/
  何それ自戒?

  942 :名無し~3.EXE:2012/11/08(木) 15:15:59.04 ID:9yFk4XNl
  >>940

  943 :名無し~3.EXE:2012/11/08(木) 15:23:28.66 ID:p5LJOvHc
  ここで貶してる奴って嫉妬?

  944 :名無し~3.EXE:2012/11/08(木) 17:25:35.09 ID:YeWMHax9
  wshで作れば完全なものが何分の一かの行数でできるわ.

  945 :名無し~3.EXE:2012/11/08(木) 17:33:56.89 ID:9yFk4XNl
  ココはツールの優劣を語るスレではないという認識だけど?

  946 :名無し~3.EXE:2012/11/08(木) 17:36:51.31 ID:p5LJOvHc
  >>944
  それってほとんど無意味な貶しに見えるね.
  ここはBATメインなスレなんだからBATでも出来るって所に意味を見出すべきだろう.

  947 :名無し~3.EXE:2012/11/08(木) 17:48:51.89 ID:p5LJOvHc
  それより, その程度の理由で文句つけてたなんて驚きだ.
  もっとちゃんとした理由でもあるのかと思ってた.
  例えば, こうやればもっとスマートにできるのに不細工だなあ程度の理由はあると思ってたよ.

  948 :名無し~3.EXE:2012/11/08(木) 18:53:23.35 ID:bkdEOyUb
  質問させてください. OSはXPです.
  ラムディスクをzドライブにしております.
  スタートアップでアプリを起動する最後にスクリプトやバッチなどで.
  G:\FREESOFT\X-Iron_22.0.1250.0_rev10のフォルダをZのルートにコピーし.
  それが完了したらイロンを起動するというものがほしいのですが.
  こちらで作成お願いしても良いのでしょうか?
  もし可能でしたらよろしくお願い申し上げます.

  949 :名無し~3.EXE:2012/11/08(木) 19:52:12.97 ID:g182hW4Z
  作成代行じゃねーんだ少しは勉強しろ.

  950 :名無し~3.EXE:2012/11/08(木) 19:54:37.95 ID:YeWMHax9
  ムロンだめ.

  951 :名無し~3.EXE:2012/11/09(金) 23:01:38.92 ID:dRxZaYUJ
  なるほど異論は許さぬと.

  952 :名無し~3.EXE:2012/11/09(金) 23:33:47.50 ID:VFC2+eP3
  面白い「質問」がきたなあ. w.

  953 :名無し~3.EXE:2012/11/10(土) 02:04:23.79 ID:6pisMDUN
  あいやーん.

  954 :名無し~3.EXE:2012/11/10(土) 21:40:54.01 ID:FQM4B6z9
  >>952
  > もし可能でしたらよろしくお願い申し上げます.
  これが質問なんだろう. 答えはNoだ!

  955 :名無し~3.EXE:2012/11/10(土) 22:58:00.24 ID:6pisMDUN
  質問はこっちだろ?
  >こちらで作成お願いしても良いのでしょうか?

  956 :名無し~3.EXE:2012/11/11(日) 23:23:32.29 ID:9j20zI4s
  スマホでカーネルパニック発生して起動しなくなった・・・.
  セーフモードでコマンドラインとかも無いし, 不便やね.

  957 :名無し~3.EXE:2012/12/03(月) 05:04:41.37 ID:088uiTfb
  robocopyコマンドのログ出しと画面表示を両方させる.
  /TEEっていうスイッチ.
  いったいどういう略称なんでしょうか.
  気になってしょうがないです.

  958 :名無し~3.EXE:2012/12/03(月) 05:33:31.28 ID:kAKag1QB
  大昔からUNIXのコマンドにteeというものがあり, そこから来てる.
  DOSにもこの機能が要望する人は多かったので, unixライクな拡張コマンドにも入っていた.
  teeとは, Tの字のこと(あまりにもそのままだけど)
  Tの字のように, 1つの流れを2つに分岐させることから, teeというコマンドが生まれた.
  Tの字, T字管, T継手.
  T字路のこともT-junctionと言う.

  959 :名無し~3.EXE:2012/12/03(月) 10:53:23.44 ID:088uiTfb
  >>958
  ありがとうございます, すっきりしました!
  素で「へぇ〜」っていったの久しぶりです. w.

  960 :名無し~3.EXE:2012/12/04(火) 23:03:06.10 ID:CTYNT5Fy
  ファイル内の文字列は置換ってどうやんの?
  sed的なコマンドはないの.

  961 :名無し~3.EXE:2012/12/04(火) 23:09:25.45 ID:rtnan1w9
  無い.
  ていうか文字列をそのまま扱うコマンドが無いね.
  ダメ文字がありすぎる.

  962 :名無し~3.EXE:2012/12/05(水) 01:41:00.13 ID:vNr/y6Dq
  powershellコマンドがあるよ.

  963 :名無し~3.EXE:2012/12/08(土) 10:21:39.61 ID:svQLhPUI
  のっとりってどうやんの?
  直でくれや.

  964 :名無し~3.EXE:2012/12/08(土) 16:16:14.95 ID:ZJqkoRzO
  @echo このPCは, のっとられました.

  965 :名無し~3.EXE:2012/12/09(日) 14:23:32.80 ID:1TWkJChs
  まさしく車輪の再発明・・・.
  http://gigazine.net/news/20121208-batchrun/

  966 :名無し~3.EXE:2012/12/09(日) 14:45:56.07 ID:Q2o6OmwZ
  >>965
  モダンアプリなら売れてた.

  967 :名無し~3.EXE:2012/12/09(日) 17:36:58.01 ID:o+15KfEi
  >>965
  出来損ないのJP1みたいなもんか? w.

  968 :名無し~3.EXE:2012/12/09(日) 18:18:48.33 ID:sbtIqpkJ
  それは, さすがに JP1 に失礼だよ. (w.

  969 :名無し~3.EXE:2012/12/10(月) 07:46:42.38 ID:MFFn8ImV
  ついったでは大絶賛されてるね.

  970 :名無し~3.EXE:2012/12/10(月) 09:42:23.69 ID:3eTX4nia
  >>965
  コマンドラインを使わず, GUIでぽいぽい出来るから便利だよ.

  971 :名無し~3.EXE:2012/12/10(月) 13:37:19.73 ID:qJCnufuf
  バッチでファイル一括処理する時は,
  ちょっとしたアホなミスで大切なファイルが全て消滅って危険性と隣り合わせだけど.
  そのツールならそういう危険性は無いのかな?

  972 :名無し~3.EXE:2012/12/10(月) 15:06:09.57 ID:vc6LY9aY
  if exist ("%ProgramFiles(x86)%\Windows Resource
  Kits\Tools\sleep.exe"|%CD%\sleep.exe) goto ROBOCOPY else goto ERROR
  if existで「〜または・・・にsleep.exeが存在する場合」ってどう書くんでしょうか.
  これだと[|]の使い方が誤っています, とエラー.
  [OR]もだめでした.

  973 :名無し~3.EXE:2012/12/10(月) 16:04:06.88 ID:Hf3SyY1J
  無い事菊名.

  974 :名無し~3.EXE:2012/12/10(月) 17:26:17.50 ID:J59/mjBu
  and も or も概念が存在しない.

  975 :名無し~3.EXE:2012/12/10(月) 19:21:36.08 ID:Hf3SyY1J
  AND
  if if
  OR
  if
  if

  976 :名無し~3.EXE:2012/12/11(火) 01:09:07.71 ID:ikUC2pmd
  パスが通ってるなら.
  sleep /? 1>nul 2>&1
  if not errorlevel 1 なにか.
  ところでリソースキットの sleep って 「/? 」, それとも 「--hekp」 ?

  977 :名無し~3.EXE:2012/12/11(火) 01:09:59.33 ID:ikUC2pmd
  hekp ってw ずれた. w.

  978 :名無し~3.EXE:2012/12/11(火) 11:14:15.90 ID:iTnFE6UV
  「神様ヘクプ!」

  979 :名無し~3.EXE:2012/12/11(火) 13:54:14.48 ID:PWqhlQxJ
  論理をひっくり返して.
  if not exist A if not exist B goto skipped
  echo どっちかはあるよ〜.
  :skipped
  が素直かね.

  980 :979:2012/12/11(火) 13:54:55.42 ID:PWqhlQxJ
  って>>975に書いてあった.

  981 :名無し~3.EXE:2012/12/11(火) 14:43:23.79 ID:KvXiuy4m

  982 :名無し~3.EXE:2012/12/11(火) 19:55:12.52 ID:xDIPN8gf

  983 :名無し~3.EXE:2012/12/11(火) 20:33:02.27 ID:3r7Viost

  984 :名無し~3.EXE:2012/12/11(火) 21:15:56.44 ID:/69yJCZA
  次スレは?

  985 :972:2012/12/11(火) 21:47:44.17 ID:AbjQndC8
  >>973-979
  返答ありがとうございます.
  robocopyのミラーリングである程度のミス防止になると思い.
  存在すればsleepで30秒待たせて警告文をゆっくり読ませてrobocopy
  という処理をしたいと思ってました.
  ただ, 自分自身にpingを30回打つやりかたのほうが.
  インストールされてるかの確認も要らないようなので.
  そちらにすることにしました.

  986 :名無し~3.EXE:2012/12/11(火) 22:15:17.81 ID:pvUSCTT7
  ちなみにVista以降なら標準でtimeoutコマンドがあってsleep代わりに使える.

  987 :名無し~3.EXE:2012/12/12(水) 02:20:06.68 ID:7zfp6XE0

  988 :名無し~3.EXE:2012/12/12(水) 02:50:10.43 ID:0buqHTd7

  989 :名無し~3.EXE:2012/12/12(水) 02:55:06.72 ID:2SM3fnDv

  990 :名無し~3.EXE:2012/12/12(水) 02:59:47.55 ID:vcH66JUQ

  991 :名無し~3.EXE:2012/12/12(水) 03:01:46.18 ID:N/Av3Drc

  992 :名無し~3.EXE:2012/12/12(水) 04:06:37.86 ID:yrlmbhP4

  993 :名無し~3.EXE:2012/12/12(水) 05:23:57.82 ID:q1m7DpRa
  次スレは?

  994 :名無し~3.EXE:2012/12/12(水) 06:32:11.47 ID:41pAq6zE

  995 :名無し~3.EXE:2012/12/12(水) 07:23:00.46 ID:JRs5u4VM
  次スレ.
  初心者〜管理者まで必読!コマンドライン(DOS Pt.9)
  http://toro.2ch.net/test/read.cgi/win/1355264457/

  996 :名無し~3.EXE:2012/12/12(水) 08:04:10.24 ID:DRWyusVI

  997 :名無し~3.EXE:2012/12/12(水) 19:33:00.41 ID:Tjug4RWz

  998 :名無し~3.EXE:2012/12/12(水) 19:35:44.37 ID:Tjug4RWz

  999 :名無し~3.EXE:2012/12/12(水) 19:37:52.79 ID:Tjug4RWz

  1000 :名無し~3.EXE:2012/12/12(水) 19:44:22.51 ID:Tjug4RWz

  1001 :1001:Over 1000 Thread
  このスレッドは1000を超えました.
  もう書けないので, 新しいスレッドを立ててくださいです. . .

269 KB [ 2ちゃんねる 3億PV/日をささえる レンタルサーバー \877/2TB/100Mbps]
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 05.0.7.9 2010/05/24 アクチョン仮面 *
FOx * DSO(Dynamic Shared Object)


_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/