From bb1374aca316e919b4acdd027f32a904852b6e6d Mon Sep 17 00:00:00 2001 From: Rikuoh Tsujitani Date: Fri, 24 May 2024 14:18:08 +0900 Subject: [PATCH] =?UTF-8?q?-l=20=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ls.rb | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/ls.rb b/ls.rb index c9e8adb..463db9d 100644 --- a/ls.rb +++ b/ls.rb @@ -39,29 +39,33 @@ def list_filenames filenames = params['a'] ? Dir.glob('*', File::FNM_DOTMATCH) : Dir.glob('*') filenames = filenames.reverse if params['r'] if params['l'] - ownerinfo(filenames) + output(filenames) exit else filenames end end -def ownerinfo(filenames) +def output(filenames) file_blocks(filenames) filenames.each do |file| file_stat = File::Stat.new(file) - print " #{TYPES[file_stat.ftype]}" + print TYPES[file_stat.ftype] permission(file_stat) - print " #{file_stat.nlink}" - print " #{Etc.getpwuid(file_stat.uid).name}" - print " #{Etc.getgrgid(file_stat.gid).name}" - print " #{file_stat.size}".rjust(file_size(filenames)) + printer(file_stat, filenames) timestamp(file_stat) symbolic(file) puts end end +def printer(file_stat, filenames) + print " #{file_stat.nlink}" + print " #{Etc.getpwuid(file_stat.uid).name}" + print " #{Etc.getgrgid(file_stat.gid).name}" + print " #{file_stat.size}".rjust(file_size(filenames)) +end + def symbolic(filenames) if File.lstat(filenames).symlink? print " #{filenames} -> #{File.readlink(filenames)}"