コマカい作業中

以前は perl 使ってたんですが、ruby を使ってヤル方向で。
今、/etc/passwd 使ってアカウントだけを抽出するナニをつい癖で perl で作ってしまった。

$ cat /etc/passwd | perl -e \
> 'while(<>) { \
> chomp; \
> @tbl=split(/:/); \
> print "@tbl[0]\n"; \
> }' |lv

みたいな感じ。

や、これを ruby なナニにしたらどうか、とゆー事で。

$ cat /etc/passwd | ruby -e \
> 'while gets do \
> chop; \
> tbl=split(/:/); \
> print tbl[0] + "\n"; \
> end' |lv

こうなったんだけど、もっと良い書き方があるんだろな。
で、最終的にこんな感じに

$ sort user.txt|ruby -e '\
> while gets do \
> chop; tbl=split(/:/); 
> print tbl[0] + "\t" + tbl[0] + "\t" + \
> `mkpasswd tbl[0]`.chop + "\t" + "\t" + tbl[0] + "\n"; \
> end' > user.test.txt

職場サーバがレンタル移行でメイルのアカウント移行しなきゃ、なんですが、上記フォーマットのテキストを吸ってくれるらしく、データを作成中。
ただし、ユーザさん達が強度の高いパスワードを承認してくれるかどうかは微妙 (わら

って、このエントリを受けてパスワードエントリの取得というエントリを投入しておられる方を発見。ナンダコレハ。
最終的なやつがこんな感じで書けるのか。あ、cat とかしなくて OK なんだ。

$ ruby -retc -e 'Etc.passwd{|e| print e.name + "\t" \
> + e.name + "\t" + `mkpasswd e.name`.chop + "\t" + "\t"
> + e.name + "\n";}' > user.test.txt

ほほー。でもー、Etc.passwd{} なナニでは若干微妙。システムなアカウントもナニですが、その行は消せばええだけの話か。
それはさて置き、Etc.passwd って何だー。