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

ファイル名からファイルを抽出できるフリーソフトをご存じないでしょうか。

ここに2000件のtsvファイルがあります。そこから1500件を抽出したいのです。
それぞれのファイルには番号がついていて(「file15_0143.tsv」「file300_3425.tsv」など)、抽出したい番号の一覧が別にあります(list.dat)。一覧には「10,101,203・・・」など抽出したいファイルの番号だけ(1500件ぶん)が記述されています。
ちなみに、ファイル名の後半部分_0143、_3425は乱数なので、抽出したい番号はfileのすぐあとの数字です。しかも、乱数が違う同じ番号のfileは複数あったりするのですが、番号が同じならすべて抽出して構いません。
やはり複雑で難しいでしょうか。
どなたかお教えいただけますと幸いです。

A 回答 (2件)

>ちなみに、ファイル名の後半部分_0143、_3425は乱数なので、抽出したい番号はfileのすぐあとの数字です。



抽出して、それをどうしたいのかを教えてください。

フリーソフトもあるのでしょうが、dosコマンドで代用できます。


step1
アクセサリからdos窓(コマンドプロンプト)を開きます。

step2
エクスプローラ等で、フォルダの名前をコピーします。

step3
dos窓で、 cd_("_"は半角スペース) と入力します。

step4
 その後、フォルダの名前を貼り付け(右クリック-->貼り付け)
 リターンキーを押します。


 この状態で、ファイルのあるフォルダに移動しているはずです。
 
dos窓の ">"の左側の文字列が変化しているはず。


step5
 dir *.tsv > list.txt と入力してください。
 これで、フォルダ内のファイルの情報を、list.txtに書き込みます。

 
後は、このテキストファイルをエクセルで読み込めば、
フォルダ内の一覧を入手できます。

その後、欲しいファイルのリストと照合するなり、
欲しいファイル名と乱数を結びつけて、目的のファイル名のみがあるリストを作成し

メモ帳で例えば
copy file15_0143.tsv C:\Users\user\Desktop\temp\
copy file300_3425.tsv C:\Users\user\Desktop\temp\

という内容の list.bat という名前のファイルを
copyしたい元ファイルのあるフォルダに保存して

先ほどと同じようにdos窓内で、そのフォルダに移動した後、list.batと入力しリターンキーを押せば
userというユーザーのデスクトップのtempというフォルダ内に、list.batに記載されたファイルがコピーされます。
 
 
    • good
    • 0
この回答へのお礼

>抽出して、それをどうしたいのかを教えてください。
抽出してそのファイルだけフォルダにコピーしたかったのです。
教えていただいた内容で完全に出来ました!本当に有難うございます。
こんなことができるのですね。本当に助かりました。有難うございました。

お礼日時:2012/11/06 17:59

まぁ、言いたいことは一緒なのですが。




リストアップするだけならエクセルやワードなどでVBAを駆使すればできますよ。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
抽出した分だけのファイルを別のフォルダにコピーしたかったのです。
言葉足らずですみませんでした。大変ありがとうございました。

お礼日時:2012/11/06 17:59

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