開発環境
- OS X Lion - Apple(OS)
- BBEdit - Bare Bones Software, Inc., Emacs(Text Editor)
- プログラミング言語: Perl
『初めてのPerl 第6版』(Randal L. Schwartz, Tom Phoenix, brian d foy 共著、近藤 嘉雪 訳、オライリー・ジャパン、2012年、ISBN978-4-87311-567-2)の6章(ハッシュ)の6.6(練習問題)3を解いてみる。
その他参考書籍
3.
コード(BBEdit)
sample.pl
#!/usr/bin/env perl use strict; use warnings; use 5.016; use utf8; binmode STDOUT, ':utf8'; binmode STDIN, ':utf8'; my @keys = keys %ENV; my $cols = 0; for (@keys) { my $tmp = length $_; $cols = $tmp if $tmp > $cols; } for (@keys) { printf "%-${cols}s: %s\n", $_, $ENV{$_}; }
入出力結果(Terminal)
$ ./sample.pl HOME : /Users/kamimura DISPLAY : /tmp/launch-1IHO36/org.x:0 COMMAND_MODE : unix2003 SSH_AUTH_SOCK : /tmp/launch-3gEit1/Listeners Apple_PubSub_Socket_Render: /tmp/launch-ac4XwR/Render PWD : /Users/kamimura/Documents/perl LANG : ja_JP.UTF-8 USER : kamimura Apple_Ubiquity_Message : /tmp/launch-zpEtax/Apple_Ubiquity_Message LOGNAME : kamimura __CF_USER_TEXT_ENCODING : 0x1F5:0:0 SECURITYSESSIONID : 186a5 TERM_PROGRAM : Apple_Terminal SHLVL : 1 OLDPWD : /Users/kamimura/Documents/scheme _ : ./sample.pl TERM_PROGRAM_VERSION : 303.2 TERM_SESSION_ID : DB285E59-1D72-486A-B4CE-8ED06E51E544 PATH : /Users/kamimura/pear/bin/:/opt/local/bin:/opt/local/sbin:/usr/local/mysql/bin/:/Library/Frameworks/Python.framework/Versions/3.2/bin:/Library/Frameworks/Python.framework/Versions/Current/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/MacGPG2/bin SHELL : /bin/bash TMPDIR : /var/folders/1v/dvc2tljs2_z3zqn56g_29rl00000gn/T/ TERM : xterm-256color $
ちなみにpython3.3の場合。
コード(BBEdit)
sample.py
#!/usr/bin/env python3.3 #-*- coding: utf-8 -*- import os ks = os.environ.keys() cols = 0 for k in ks: tmp = len(k) if tmp > cols: cols = tmp cols = str(cols) for k in sorted(ks): print(("{0:" + cols + "}: {1}").format(k, os.environ[k]))
入出力結果(Terminal)
$ ./sample.py Apple_PubSub_Socket_Render: /tmp/launch-ac4XwR/Render Apple_Ubiquity_Message : /tmp/launch-zpEtax/Apple_Ubiquity_Message COMMAND_MODE : unix2003 DISPLAY : /tmp/launch-1IHO36/org.x:0 HOME : /Users/kamimura LANG : ja_JP.UTF-8 LOGNAME : kamimura OLDPWD : /Users/kamimura/Documents/scheme PATH : /Users/kamimura/pear/bin/:/opt/local/bin:/opt/local/sbin:/usr/local/mysql/bin/:/Library/Frameworks/Python.framework/Versions/3.2/bin:/Library/Frameworks/Python.framework/Versions/Current/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/MacGPG2/bin PWD : /Users/kamimura/Documents/perl SECURITYSESSIONID : 186a5 SHELL : /bin/bash SHLVL : 1 SSH_AUTH_SOCK : /tmp/launch-3gEit1/Listeners TERM : xterm-256color TERM_PROGRAM : Apple_Terminal TERM_PROGRAM_VERSION : 303.2 TERM_SESSION_ID : DB285E59-1D72-486A-B4CE-8ED06E51E544 TMPDIR : /var/folders/1v/dvc2tljs2_z3zqn56g_29rl00000gn/T/ USER : kamimura _ : ./sample.py __CF_USER_TEXT_ENCODING : 0x1F5:0:0 __PYVENV_LAUNCHER__ : /opt/local/bin/python3.3 $
0 コメント:
コメントを投稿