#:g1: user.pltの紹介

Posted 2014-07-12 22:30:00 GMT

(LISP Library 365参加エントリ)

 LISP Library 365 の194日目です。

user.pltとはなにか

 user.pltは、synx氏作のRacketでOSのユーザー情報を取得するライブラリです。

パッケージ情報

パッケージ名user.plt
PLaneTPLaneT Package Repository : PLaneT > synx > user.plt

インストール方法

 Racketから

(require (planet synx/user:1:0))

で使えます。

試してみる

 使い方はシンプルで、(info)で名前、ユーザーID、グループID、ホームディレクトリ、利用しているシェルのパスがuser構造体として返ってきます。

(info)
;=> (user "madalto" 42 #<path:...> #<path:/bin/zsh>)

個別のスロットへのアクセサ等もあり

(user? (info))
;=> #t

(user-name (info)) ;=> "madalto"

(user-uid (info)) ;=> 42

(user-gid (info)) ;=> 42

(user-home (info)) ;=> #<path:...>

(user-shell (info)) ;=> #<path:/bin/sh>"

まとめ

 今回は、user.pltを紹介してみました。
なんとなく処理系内に持ってそうな機能ですが、ライブラリが作られているということは標準状態にはないんでしょうね。

comments powered by Disqus