Module | RecursiveUtils |
In: |
recursiveutils.rb
|
Authors: | Koichi MICHIMASA <michi[at]ep.sci.hokudai.ac.jp> |
Copyright: | Copyright (C) Koichi MICHIMASA 2006-2008. All rights reserved. |
GemPackage: | www.ep.sci.hokudai.ac.jp/~michi/gemserver/ |
Download: | www.ep.sci.hokudai.ac.jp/~michi/pc/ruby/src/recursiveutils/ |
Document: | www.ep.sci.hokudai.ac.jp/~michi/pc/ruby/doc/recursiveutils/ |
History: | www.ep.sci.hokudai.ac.jp/~michi/pc/ruby/history/recursiveutils.html |
再帰処理機能を実装したツール群.
ファイル操作: | chmod, chown |
rename.rb: | www.ep.sci.hokudai.ac.jp/~daktu32/DOC/ruby/works/ruby_works.htm |
rsed2.rb: | www.ep.sci.hokudai.ac.jp/~morikawa/ruby/rsed2/SIGEN_PUB.htm |
ツールとして使う場合は FrontEnd を参照する事. (Required Library の項も参照する事)
URL: | www.ep.sci.hokudai.ac.jp/~michi/pc/ruby/doc/localefilter/ |
このスクリプトはフリーウェアです. 使用, 改変, 再配布は自己責任の範囲でお好きにどうぞ.
URL: | www.ep.sci.hokudai.ac.jp/~daktu32/ |
URL: | www.ep.sci.hokudai.ac.jp/~morikawa/ |
VERSION | = | '3.5.9' | RecursiveUtils のバージョン | |
UPDATE | = | '2008/10/07' | RecursiveUtils の最終更新日 | |
URL | = | 'http://www.ep.sci.hokudai.ac.jp/~michi/pc/ruby/' | RecursiveUtils の公開アドレス |
再帰処理機能を付加した File#chmod. オプションの種類が増えている事を除けば FileUtils#chmod_R とほぼ同じ.
FullPathList::Flag のオプションも参照する事.
verbose: | 処理を行う前に内容を表示する. |
noop: | 実際の処理は行わない. |
# File recursiveutils.rb, line 1072 def chmod(mode, list, opts = {}) extend LocaleFilter::PrintWrapper opts[:recursive] = true opts[:warning] = false path_list = FullPathList.get(opts, list) if path_list.empty? warn 'No files will be changed.' if opts[:verbose] return false end message = %Q(: Change to "#{mode}".) path_list.each do |path| print path, message, "\n" if opts[:verbose] puts File::Stat.new(path).mode if opts[:debug] next if opts[:noop] File.chmod(mode, path) rescue warn $! end return true end
再帰処理機能を付加した File#chown. オプションの種類が増えている事を除けば FileUtils#chown_R とほぼ同じ.
FullPathList::Flag のオプションも参照する事.
verbose: | 処理を行う前に内容を表示する. |
noop: | 実際の処理は行わない. |
# File recursiveutils.rb, line 1101 def chown(owner, group, list, opts = {}) extend LocaleFilter::PrintWrapper opts[:recursive] = true opts[:warning] = false path_list = FullPathList.get(opts, list) if path_list.empty? warn 'No files will be changed.' if opts[:verbose] return false end message = %Q(: Change to owner: "#{owner}", group: "#{group}".) path_list.each do |path| print path, message, "\n" if opts[:verbose] next if opts[:noop] File.chown(owner, group, path) rescue warn $! end return true end