前回の記事の派生で、今度はユーザー名とグループ名を取得してみます。 my ($user, $group) = (stat $file)[4,5]; # $user は user id # $group は group id # ID番号から名前を取得 print 'user: ', [getpwuid($user)]->[0], "¥n"; print 'group: ', [getgrgid($group)]->[0]; getpwuid はユーザIDに対する情報を返します。 参考:getpwuid - Perlリファレンス getgrgid はグループ名に対する情報を返...
Shinichi Nozawa: 2013年4月アーカイブ
指定したファイルがどういう権限をもっているかを、 Perlで知る方法です。 パーミッションを変更するのは chmodでできますし、 パーミッションをみるなら`ls -l`とかすれば見えることはみえるんですが、 もっと単刀直入にできないかなと。 Perlの組み込み関数「 stat 」を使えばひとまずその情報は取得出来ます。 my @stats = stat $file; # 0 dev ファイルシステムのデバイス番号 # 1 ino iノード番号 # 2 mode ファイルモード # 3 nlink このファイルへのハードリンク数 # 4 u...
SQLiteの命名規則についてメモ テーブルやカラムなどの名前(識別子)に使用してよい文字は - アルファベットかアンダースコア( _ )で始まること - その後はアルファベット・数字・アンダースコアが続くこと ということで、使っていい文字種は思いの外すくないですね。 ハイフン( - )やピリオド( . )などは使ってはいけないようです。 数字で始まる名前もだめですね。 名前の例: + mytable + my_field + xyz123 + a しかしながら、それだと名前の制約が随分キツイと思います。 そういう場合は、ダブルクォート( " )か角カッコ( [ ] )...
ブラウザ経由でデータベースを閲覧したり操作したりする Webアプリケーションつくってます。 そのデータベースとしてSQLiteを使ってるのですが、 そこではまったのでご報告。 もともとSQLは触ったことがなくて、SELECT分とかINSERT文とかを よくわからないながらもこわごわ書いては動作テストを繰り返しながら 開発をすすめてきたのだけど、 どうもSQLが実行できたりできなかったりする、と。 その動いたり動かなかったりするのはなんなんだ?!と探っていくと、 ターミナル経由でCGIのスクリプトを実行するときは、 きちんとSQL文は実行されて、行の追加やテーブルの削除はできる。 一方、W...
CPAN: DBI DBI - search.cpan.org perldoc.jpの日本語訳 DBI - Perl 用データベース独立インターフェース - perldoc.jp はじめてSQLを使い始めていて、 選んだのはMySQLではなくSQLiteで、 いろいろ調べながらやってる。 SQLiteを使うからDBI::SQLiteのコマンドを使うのかと思っていたけど、 そうではなくて、基本はDBIモジュールのコマンドを基本的には使う。 これからこの記事はちょくちょく加筆していく予定。...
(前振りはこちら) gitを入れようとしてMacPortsを入れてwgetを入れようとして挫折 (承前) Perlが2つインストールされてしまった。 一つは /usr/bin/perl (MacBook Proにもとから入っている) もう一つは /opt/local/bin/perl (MacPortsがインストールした) こうなると、いままで動いていたスクリプトが動かなくなる。かもしれない。 いやでも、Perlスクリプトの一行目にはおまじないでいつも #! /usr/bin/perl と書いている。 これってまさにPerlのパスそのものなので、 Perlスクリプトの1行目でこれを...
いまどき「ええええー」って感じですが、バージョン管理ソフト使ってませんでした。でも、その有効性・必要性は十分認識していて、やっと重い腰をあげて「git」を入れようと思い立ちました。 それで、素直にhttp://git-scm.com/からMac用のpkgをDLしてきて入れればよかったんですが、何を血迷ったかMacPortsを入れて、で、それ経由でgitを入れようと思ってしまってMacPortsを入れたんす。 MacPortsのインストールは少し時間ができたけど、問題なくできて、それから「そういえばwgetを使いたかったんだった」と思い出して、gitの前にwgetを入れようとして、 sud...
世の中のブログはすっかり WordPress の世界です。 僕はいまだに Movable Type を使ってます。 しかも、MT 4.25です。MTは5がでているというのに。 このブログはUsing MTというタイトルのくせに、 MTのプラグイン開発からはすっかり遠ざかってしまっていて、 ここ1,2年はMTに関する記事を書いてませんし、 今後も書けるとは思えないので、 ブログ名を Using Perl に変更することにしました。 Perlももはやオワコンの誉れを欲しいままにしていますが。 ついに顕在化しはじめた「Perlリスク」 - Hatena::AnonymousDiary なぜ国内...