Rubyでファイルの所有ユーザ・グループを調べる

  • 1
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

ミドルウェアの設定ファイルなどを書くときにディレクトリの権限をいじる必要が時たまあると思う。1個ならlsたたけばすぐわかるけどいっきにいろいろなディレクトリを調べたいときにはコードで書く必要がありそうなので調べた。

Fileコマンドでは取れなかったのでEtcや、File::Statを利用したりする。

require 'etc'

path = '/'
user = Etc.getpwuid(File.stat(path).uid).name
group = Etc.getgrgid(File.stat(path).gid).name
puts "#{user}:#{group} #{path}" #=> root:root /