アプリ版:「スタンプのみでお礼する」機能のリリースについて

windows7のコマンドでファイルを検索したいのですが、
調べてみると下記のようなコマンドで調べれるとの事でした。

dir /s /b ***

しかしこれではカレントディレクトリからしか調べる事ができず不十分です。
全てのドライブからこのファイルを検索したいというコマンドを探しております。

unixでいえば find / -name *** のようなものです。

windows7のコマンドプロンプトではこのような事はできないのでしょうか。

A 回答 (2件)

>find / -name *** のようなものです



そもそも、OSの違いをちゃんと理解していれば、こんな質問にはならないはずなんですけどね・・・・

No1さんの回答だと、たぶん理解できないのではないかと。find でも同じですが、パスを指定しているので、そこからの検索になります。指定しないと、カレントフォルダー配下になります。

dir コマンドも同じです。引数にパスを指定すれば言いだけの話です。まあ、例をあげておきましょう。

>dir c:\ d:\ e::\

>for /r %a in ()

>forfiles /?

などたくさんあります。
http://technet.microsoft.com/ja-jp/library/cc772 …

等をみましょう。また、これらのコマンド組み合わせるの常套手段でしょう。

別なものでは、

http://search.yahoo.co.jp/search?b=1&n=10&ei=UTF …

から

http://technet.microsoft.com/en-us/library/cc758 …

などをみれば wmic コマンドでのやり方がでています。つまり、

WMIC DATAFILE WHERE "PATH=

など where句を使えば、拾ってこれます。

http://technet.microsoft.com/en-us/library/cc739 …

など上から順番にみてゆけば、達成方法がいくつもあり、状況にあわせて、チョイスしながら、つかうことになります。

>全てのドライブからこのファイルを検索

UNIXにはドライブと言う概念がありません。論理デバイスをマウントうする形になり、どこにマウントされるかが問題になりますが、Windowsは、その倫理デバイスが、論理ドライブと言う概念にとって代わったことになり、それにあわせた方法論を展開すべきことです。例えば、そのマシンで有効になっている(マウントされている)ドライブレターの取得方法とか。

WSH(JScript or VBScript)、 WMIなどで簡単に取得できます。

http://search.yahoo.co.jp/search?p=Windows+%E3%8 …

など検索すれば結構出てきます。

>echo list volume | diskpart | find "NTFS"

なんてすると、リストする方法もあります

これを組み合わせると

for /f "xxxxxx" %a in (`echo list volume ^| diskpart ^| find "NTFS"`) do (
dir /s %c:\*.log
)

(オプション等略しています)

などとなるでしょうね

状況により、コマンドとスクリプト言語を、適時、適所に組み合わせる事になるでしょうね。UNIX、Linux系のスクリプトも全く同じですね。できないこともたくさんあるので、いくつものコマンドを組みあわせることになっています。たとえば、sed , awk はとても重宝しているコマンドですが、WindowsではJScript, VBScript , power script でもっと簡単に出来ています。

WMIを使うのが一番簡単かと。
    • good
    • 0

*.txtをドライブCルート直下から一覧出力するコマンド例。

「windows7のコマンドでファイルを検」の回答画像1
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!