2012年2月21日火曜日

ファイルリストの出力

バッチとプログラムを作って見てのう。

バッチファイルとrubyプログラムの2種類。
ちょっとした事だがこんなものがあると役立つ場面も意外と多いものなれば、書き留めておくも良かろう。
1)バッチファイルは、テキストファイルに貼り付けて、拡張子を".bat"にすれば良かろう。
2)rubyは実行環境を持っておる人にしか役立たぬであろうが、実行環境を持っている時点で、斯様なスクリプトも不要であろう。


■ファイル名からリストを作成するバッチ(NetworkDrive対応).bat
cd %~p0
dir /b *.* > file_list.txt

# 使い方
# ファイルリストを出力したいディレクトリに、このバッチファイルをコピーし、実行します。
# ネットワーク上のディレクトリ(UNCパス)には対応しませんので、必要な場合には、ネットワークドライブを割当て、そこから実行します。


■fileListing.rb (ファイル名をソートして出力する)
# ディレクトリとファイルをABC順の並びでリストに出力する

dirs = [] #配列宣言
Dir.foreach(".") do |file| #ファイル名の抽出
if file != "." and file != ".."
dirs << file #配列への入力
end
end

f = open("filelist.txt","w") #ファイルオープン
dirs.sort! #番号順に破壊的ソート

dirs.each do |dirs| #ソート後のファイル取り出し
puts dirs
f.print dirs +"\n" #ファイル出力
end

f.close

めでとし、めでとし。

0 件のコメント: