68user's page 掲示板

Prev< No. 4920〜4923> Next  [最新発言に戻る] [過去ログ一覧]
No. 4920 # 68user 2008/07/09 (水) 01:38:42
>>4918 べた
/usr/local/bin/iconv は GNU の libconv 同梱の iconv コマンド、
/usr/bin/iconv は Solaris 標準の iconv コマンドではないかと
思います。

GNU 版であれば、--version オプションを使うことで
    % iconv --version
    iconv (GNU libc) 2.3.4
    Copyright (C) 2005 Free Software Foundation, Inc.
    (略)
といった表示が得られるかと思います。

以下は Solaris 版と GNU 版の違いであったとして、という前提ですが、

機能差で選ぶなら↓を比較 (昔の Solaris 版 iconv は、不正なバイト列が
あった場合即終了だった気がするのですが、現在はスキップという選択肢も
選べるんですかね? であればそれほど機能差はないかも)
    http://docs.sun.com/app/docs/doc/819-1210/6n3j74jpk?a=view
    http://www.gnu.org/software/libiconv/documentation/libiconv/iconv.1.html

エンコーディングの多さで選ぶなら、/usr/local/bin/iconv -l と
/usr/lib/iconv/iconv_data を比較。特に CP932 や UTF-8 などが絡む
場合は、手持ちの全ファイルを変換して結果を調べるくらいはやった
方がよいかと思います。

後は GNU が好きか、Solaris の世界で固めるのが好きか、でしょうか。

No. 4921 # zsh 2008/07/09 (水) 10:09:43
>>4919 べた
expr や cut でもできますよ。
(cut の場合は @ が付きませんが。)

$ expr $email : '\(.*\)@.*'
$ expr $email : '.*\(@.*\)$'
$ echo $email | cut -d '@' -f 1
$ echo $email | cut -d '@' -f 2

>>4918 べた
Solaris には標準で /usr/local というディレクトリがないので、
68user さんの仰るとおりだと思います。

No. 4923 # べた 2008/07/10 (木) 22:27:06
>>4921 zsh
ありがとうございます。

exprやcutでの使い方ありがとうございます。
勉強になります。

Prev< No. 4920〜4923> Next  [最新発言に戻る] [過去ログ一覧]