トップページ > プログラム > 2016年11月16日 > tgJZOdTt

書き込み順位&時間帯一覧

8 位/187 ID中時間01234567891011121314151617181920212223Total
書き込み数0000101000000000100010004



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
【.cmd】 バッチファイルスクリプト %11 【.bat】©2ch.net

書き込みレス一覧

【.cmd】 バッチファイルスクリプト %11 【.bat】©2ch.net
749 :デフォルトの名無しさん[sage]:2016/11/16(水) 04:24:03.14 ID:tgJZOdTt
dir /ad /b /s "abc"
サブディレクトリ含め"abc"フォルダのパスを列挙したかったんだけど
子に"abc"がある時と無い時で挙動が全く変わる
子に"abc"が無ければ望み通りの結果になるけど
子に"abc"があるとそこで dir /ad /b /s されて全てのディレクトリが列挙される
"*abc"だと"zabc"も出て来るし
"*\abc"や"C:\TEST\*\abc"は構文error
if exist "abc" で例外処理しないとダメ?
何かサクッと出来る方法があるならお願いします
【.cmd】 バッチファイルスクリプト %11 【.bat】©2ch.net
751 :デフォルトの名無しさん[sage]:2016/11/16(水) 06:28:47.52 ID:tgJZOdTt
>>750
それやると何故かカレントディレクトリは C:\TESTなのに (echo %cd% で確認)
ドライブ全体から検索してるのか C:\Users や C:\Program Files 配下の abcディレクトリまで表示されるんだけど Win10
【.cmd】 バッチファイルスクリプト %11 【.bat】©2ch.net
753 :デフォルトの名無しさん[sage]:2016/11/16(水) 16:58:26.02 ID:tgJZOdTt
>>752
dir /ad /b /s | findstr /r "\\abc$"
これで行けそうかな。ありがとう


/s スイッチの時フルパスで無ければ強制的にディレクトリ名orファイル名と見做してくれればいいのに
子にあると対象パスの省略形と見なし、無ければ検索するディレクトリ&ファイル名になるとか罠もいいところだわ
dir /ad /b /s "\abc"
これだとカレントディレクトリが無視されてドライブ全体?からabcフォルダが検索されるんだけど理由が分かる人が居たら教えて下さい
【.cmd】 バッチファイルスクリプト %11 【.bat】©2ch.net
756 :デフォルトの名無しさん[sage]:2016/11/16(水) 20:36:19.30 ID:tgJZOdTt
dir /ad /b /s | findstr /r "\\%name%$"
てな場合nameの末尾にスペースが入ると意図した結果にならず
dir /ad /b /s | findstr /e "\%name%" で解決出来ました

>>753
for /r とif での方が間違いが無さそうですね。ありがとう
"\abc" は、まず dir /ad /b /s "C:\abc" とドライブ省略形の対象ディレクトリと見做して
対象が無ければ検索するディレクトリ名&ファイル名として扱われている感じなのかな


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。