[前の記事]« java開発環境とCLASSPATH
[次の記事][NT系]文字列の切り出しにFOR /F "delims="を使ってみたがうまくいかない »

関連オンラインソフト配布サイト:
Vector>ダウンロード(top) |>MS-DOSまたは汎用 | >WindowsVista/XP/2000/NT

▲カテゴリー「DIR…ディレクトリ(フォルダー)/ファイルの一覧」索引へ

[WIN2000S]フルパスでのファイルリストの取得

333.
フルパスでのファイルリストの取得
2004年03月18日(木) 21時28分
ふーにゃ
初めて投稿します。ふーにゃと申します。

OSはWindows2000Server英語版です。

現在、異なるディレクトリ内にあるファイルを一括して圧縮したいと考えています。それぞれのディレクトリで
dir /b /s >filelist
をして、
そのfilelistを例えば%WINNT%Temp等にコピーして、
copy filelist1+filelist2 filelistall
と合成した後に、
makecab /f filelist
とすれば良いと考えました。

しかし、圧縮したいファイル名にスペースがあり、なおかつ「Program Files」下にあるためmakecabコマンドでエラーになってしまいます。例えばファイルリストの中身が、
c:\program Files\Log\123 123.csv
c:\program Files\Log\234 234.csv
c:\program Files\Log\234 234.csv
だった場合に、

"c:\program Files\Log\123 123.csv"
"c:\program Files\Log\234 234.csv"
"c:\program Files\Log\234 234.csv"
という風にはできないのでしょうか。

ご存じでしたら教えてください。よろしくお願いします。
338.
解決しました
2004年03月19日(金) 14時56分
ふーにゃ
自己解決致しました。

c:\program Files\Log1に
abc 123.csv
abc 134.csv
abc 145.csv

c:\program Files\Log2に
def 123.csv
def 134.csv
def 145.csv
というファイルがあった場合

Log1のディレクトリで
dir "abc 1*" /b /s >list
for /f "tokens=1-3" %%a in (list) do echo "%%a %%b %%c" >>Log1list

Log2のディレクトリで
dir "def 1*" /b /s >list
for /f "tokens=1-3" %%a in (list) do echo "%%a %%b %%c" >>Log2list

としたあとにLog1listとLog2listをcopyコマンドで合成することにより、
"c:\program Files\Log1\abc 123.csv"
"c:\program Files\Log1\abc 134.csv"
"c:\program Files\Log1\abc 145.csv"
"c:\program Files\Log2\def 123.csv"
"c:\program Files\Log2\def 134.csv"
"c:\program Files\Log2\def 145.csv"
というファイルリストを作成することができました。
ありがとうございました。
 
 


カテゴリー「DIR…ディレクトリ(フォルダー)/ファイルの一覧」索引へ

 

カテゴリー一覧

FPCU/FPCDIY QUICK LINK online
この上の各ジャンル名をクリックすると、下のウィンドウが切り替わります▼


=リンク集のインデックスはこちら=

資料書籍

About

2004年03月18日 12:06に投稿されたエントリーのページです。

ひとつ前の投稿は「java開発環境とCLASSPATH」です。

次の投稿は「[NT系]文字列の切り出しにFOR /F "delims="を使ってみたがうまくいかない」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

This site is powered by Six Apart
Movable Type 3.33-ja
このブログについて | 運営:有限会社メディアポート