. Sun & Solaris 廃品利用研究所 . dot 本サイトの利用条件 dot 更新履歴 dot テクノロジー dot .
DOT
dot ハードウェア dot ソフトウェア dot ネットワーク dot 写真館 dot LaTeX dot Download dot
. .
.
メニュー

. . Solaris
. . . パッケージ
. . . . 作成する
. . . パッチ
. . . . 推奨パッチ
. . . Solaris標準
. . . . NTP
. . . . 文字変換
. . . ファイルシステム
. . . . usfdump
. . . . usfrestore
. . . . CDイメージ活用
. . . SUN RAY
. . . . TIPS
. . . apache
. . . . apache+php
. . . Freeware
. . . . Solaris 8

文字コード変換コマンド


文字コードの変換といえば,nkf等をインストールしてさくっとやるのが有名ですが,Solairsにも変換用のコマンドがいくつか用意されています.
それの使い方ってあまり紹介されていたりしないので,ここで簡単な使い方を書いてみたいと思います.

文字コードの変換


 世の中にはいろいろな種類の文字コードが存在しています.
 Solarisの場合,標準の文字コードはEUCコードになります.そして,良くあるWindowsではShift JIS,メイルなどの本文などはJISといった具合に多くの種類があります.
 これらの文字コード間を相互間に変換したい場合どうしたら良いのでしょうか.

 何かソフトウェアを追加すれば使えるのは分ると思いますが,Solaris標準のソフトウェアだけで何とかならないものでしょうか.
 そこで,標準のSolarisで対応する方法を紹介したいと思います.

変換プログラム


 基本的に,「変換前to変換後」というプログラムがあります.たとえば,jisのメイルをSolarisで(EUC)で読む場合は,「jistoeuc」というプログラムになります.
 たとえば,このようなプログラムがあります.
 Shift JISはsj,JISはjis.EUCはeuc,EBCDIC/IBMはibmjとなります.

  • euctoibmj
  • euctojis
  • euctosj
  • ibmjtoeuc
  • jistoeuc
  • jistosj
  • sjtoeuc
  • sjtojis

>これらのファイルを用いることによって,ファイルを変換することができます.

^M 問題


 実は,文字コード間はこの変換で何とかなるのですが,これだけでは何とかならないこともあるのです.それは改行コードの違いなのです.
 同じに見える改行ですが,Windowsのようなマシンでは,改行コードと復帰コード.Solarisでは改行コードだけを使って改行を意味させています.
 ですから,Windowsから持ってきたテキストをsjtoeucを使って変換させたとしても,行末に余計な復帰コード( ^M )が残ってしまうのです.
 これは文字コードの問題ではなく,システム固有の問題なのです.

 これには,dos2unixそして,unix2dosというコマンドがあります.

 詳しくはmanを引いてもらうとして,簡単な使い方とすれば,dos2unix -asciiとすると,^Mがなくなります.

簡単な使い方


 簡単な使い方の例を示して見ましょう.

 たとえば,Windowsで書いた文章をUNIXで読み書きしたい場合は,まず,UNIXのマシンにファイルを転送します.そこで

% cat input.txt | sjtoeuc | dos2unix -ascii > output.txt

 これで,input.txtを変換してoutput.txtにします.
 一番簡単な使い方ですね.あとたとえばメイルスプールを直接読むとします.そんなときは,

% cat /var/mail/hoge | jistoeuc | more

 これでメイルを直接読むことができると思います.
     
  POWERED BY Visual Editor! Valid HTML 4.01! Valid CSS!
DOT LOGO
■作成日■ 2003.02.02 ■更新日■ 2003.02.02 ■作成者■ Shuntaro Tojo
本ページは,Netscape 7.0/InternetExplorer 6.0でのみ表示確認しています.
.