2012年3月3日土曜日

開発環境

『初めてのPerl 第5版』(Randal L. Schwartz, Tom Phoenix, brian d foy 共著、近藤 嘉雪 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-427-9)の6章(ハッシュ), 6.6(練習問題)、3を解いてみる。

3.

やり方の1つ。(「やり方は何通りもある」(TIMTOWTDI(There Is More Than One Way To Do It.)))

コード(TextWrangler)

#!/usr/bin/env perl
use strict;
use warnings;

my $width = 0;
for(keys %ENV){
  $width = length $_ if $width < length $_;
}

for(sort keys %ENV){
  printf "%-${width}s: %s\n", $_, $ENV{$_};
}

入出力結果(Terminal)

$ ./perl_program
Apple_PubSub_Socket_Render: /tmp/launch-h5Z9cH/Render
Apple_Ubiquity_Message    : /tmp/launch-J1b97d/Apple_Ubiquity_Message
COMMAND_MODE              : unix2003
DISPLAY                   : /tmp/launch-8WbpSb/org.x:0
HOME                      : /Users/kamimura
LANG                      : en_US.UTF-8
LOGNAME                   : kamimura
OLDPWD                    : /Users/kamimura/desktop
PATH                      : /Users/kamimura/pear/bin/:/opt/local/bin:/opt/local/sbin:/usr/local/mysql/bin/:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/Current/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
PWD                       : /Users/kamimura/documents
SECURITYSESSIONID         : 186a5
SHELL                     : /bin/bash
SHLVL                     : 1
SSH_AUTH_SOCK             : /tmp/launch-ni4Di3/Listeners
TERM                      : xterm-256color
TERM_PROGRAM              : Apple_Terminal
TERM_PROGRAM_VERSION      : 303
TERM_SESSION_ID           : 8DD0C986-0072-491A-BC08-CE8F69F975F2
TMPDIR                    : /var/folders/1v/dvc2tljs2_z3zqn56g_29rl00000gn/T/
USER                      : kamimura
_                         : ./perl_program
__CF_USER_TEXT_ENCODING   : 0x1F5:0:0
$

0 コメント:

コメントを投稿