Solaris8上で、ファイル名をEUC_JPからShift_JISに変換しようと思っています。euctosjというコマンドがあるのを確認したのですが、このコマンドを使用してファイル名を変換することはできないのでしょうか。ご存知のかた、いらっしゃいましたらよろしくお願いします。

A 回答 (2件)

無保証なうえに実行して不都合があったとしても一切責任はとれませんが, sh 系で


find . -print |(while read f; do mv $f `echo $f | euctosj`; done)
みたいなこと?
    • good
    • 0
この回答へのお礼

ありがとうございます。そのunix初心者のため、``内のechoを使うやり方がわかりませんでした。これを元として変換することができました。

お礼日時:2005/04/14 11:53

一度変換したものをファイルに格納して名前を変えたらいかがでしょうか?



#euctosj $FILE > hoge.txt

答えになってるかわかりませんが。。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qアスキー、バイナリーの違い、注意点(FFFTP)

「アスキー」「バイナリー」
FFFTPこの二つのモードがありますが、用途の境目がわかりません。

FFFTPでJavaファイルを上げる場合なのですが、
ローカル(Windows)のサーバー側(Linux)へFFFTPで転送する際に
作業現場では“バイナリー”で上げて欲しいと言われています。

私の考えでは、
テキスト(人間が読める言語)という定義のアスキーの設定で上げるものだと思っていたので驚いたのですが、何故Javaファイルをバイナリー設定で上げる事になるのでしょうか?


[現時点でまとめてある認識]

アスキー
--------------------------------------------------------------
(1)基本的に人間が読めるテキストベースのファイルモード
(2)サーバの設定に合わせて改行コードが変換してファイルを上げる
(3)テキストファイル系(txt/html/JS/CSS..)

バイナリー
--------------------------------------------------------------
(1)基本的に機械が読み込む為のファイルモード
(2)ファイルを上げた際に何も起こらず、そのままファイル上げることができる。
(3)画像ファイル・音楽ファイル系(jpg/GIF/PNG/mp3..)


この認識の上ですと、
“Javaファイルは人間が読めるもので、テキストファイルである”ということから、“アスキー”で上げるのが妥当だとは思っています。

Javaファイルを“バイナリー”で上げる理由は何なのでしょうか?
コンパイルの際に改行コードが変換されると不都合があるからなのでしょうか?


認識で間違っている点がございましたら、
ご指摘・ご教授の程宜しくお願いします。




参考サイト様
-------------------------------------------------------
ttp://www.res-system.com/item/339
ttp://www.komakusa.net/internet/appendix.html
ttp://www.wanichan.com/beginner/pc/win19.htm

「アスキー」「バイナリー」
FFFTPこの二つのモードがありますが、用途の境目がわかりません。

FFFTPでJavaファイルを上げる場合なのですが、
ローカル(Windows)のサーバー側(Linux)へFFFTPで転送する際に
作業現場では“バイナリー”で上げて欲しいと言われています。

私の考えでは、
テキスト(人間が読める言語)という定義のアスキーの設定で上げるものだと思っていたので驚いたのですが、何故Javaファイルをバイナリー設定で上げる事になるのでしょうか?


[現時点でまとめてある認識]

アス...続きを読む

Aベストアンサー

まずコンピューター(LinuxもWindows)から見れば、
ファイルに対して「アスキー」なんていう属性はなく
テキストファイルを含め
どんなファイルでもバイナリファイル(0と1のデジタルデータ)です。

ffftpでは
アスキーモードでアップロードすると
Cr,Lfの改行コードがLfに置換され
逆にダウンロードする際は
LfがCr,Lfに置換されます。

これはWindowsの標準の改行コードがCr,Lfで
LinuxやUNIXがLfを標準の改行コードにしている為ですが
昨今の優秀なWindowsのテキストエディタは
ほとんどの文字コードに対応し、改行コードも設定できます。
ですからわざわざ「アスキー」でアップロードする意味がなくなってきています。
(WindowsでLfの改行で保存し、バイナリでアップすれば良い。
逆にこのファイルをアスキーでダウンロードするとCrLfになります。)

どちらにしても改行コードを統一するメリットはあります。
例えばviエディタでCr,Lfのファイルを開くと「CTRL+M」とかでて見づらいですし、
Lfだけだと、昔のWindowsのメモ帳等で開くと改行されません。
(Linuxをsambaで直接みてる人にとってはCr,Lfの方が都合が良い場合もあります。)
またVSSやSVN等のバージョン管理ソフトを使っていると、改行コードが変わっただけで
ファイルに変更があったと勘違いされてしまいます。
そういう場合、意図しない改行コードの変換があっては困ります。

#1さんの言われるように仕様的に問題があるのかもしれません。
あとはclassファイルを誤ってアスキーで転送するミスが少なくなる
ぐらいでしょうか。

ただ作業現場の人に理由を聞かないと推測の域をでません。

まずコンピューター(LinuxもWindows)から見れば、
ファイルに対して「アスキー」なんていう属性はなく
テキストファイルを含め
どんなファイルでもバイナリファイル(0と1のデジタルデータ)です。

ffftpでは
アスキーモードでアップロードすると
Cr,Lfの改行コードがLfに置換され
逆にダウンロードする際は
LfがCr,Lfに置換されます。

これはWindowsの標準の改行コードがCr,Lfで
LinuxやUNIXがLfを標準の改行コードにしている為ですが
昨今の優秀なWindowsのテキストエディタは
ほとんどの文字コー...続きを読む


人気Q&Aランキング

おすすめ情報