質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

文字コード

文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。

Q&A

解決済

3回答

3609閲覧

mac で文字化けした文字のコードが分からず変換できない

退会済みユーザー

退会済みユーザー

総合スコア0

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

文字コード

文字コードとは、文字や記号をコンピュータ上で使用するために用いられるバイト表現を指します。

0グッド

0クリップ

投稿2017/01/26 01:30

編集2017/01/30 04:00

mac の dmesg に出てくるファイルパスの日本語が文字化けしてしまい、ファイルパスが分からない状態です。
↓のような文字化けをしているのですが、これの文字コードはなんでしょうか。
文字コードが分からず変換もかけられない状態です。
ご存知の方いましたらお願いいたします。

\M-e\M-=\M^S\M-g (こういった文字がずらずらと続きます)

追記

確認が遅くなり申し訳ございません。

「dmesgに出てくる」というのは、どのようにして出てくるのでしょうか。「dmesg」というコマンドを実行したときなのか、何か他のときなのか教えて下さい。

こちらは dmesg の実行結果が文字化けしています。
dmesg を実行したときに↓のような出力があるのですが、そのパスが日本語だと文字化けしてしまいます。

disk0s2: I/O error. 0 [Level 3] [Facility com.apple.system.fs] [ErrType IO] [ErrNo 5] [IOType Read] [PBlkNum 37422984] [LBlkNum 0] 0 [Level 3] [Facility com.apple.system.fs] [DevNode /dev/disk0s2] [MountPt /] [Path /path/to/error-file]

この /path/to/error-file の部分に日本語が含まれていると
/path/to/\M-e\M-=\M^S\M-g\M^_\M-" ... のように文字化けしたメッセージが出力されてしまい、パスがわからなくなってしまっています。

書かれている文字は正確ですか?

上記のような文字列が続いています。全ては記載していませんが、続いている文字は同様です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ikedas

2017/01/26 02:31

「dmesgに出てくる」というのは、どのようにして出てくるのでしょうか。「dmesg」というコマンドを実行したときなのか、何か他のときなのか教えて下さい。
otn

2017/01/26 03:41

書かれている文字は正確ですか?
guest

回答3

0

ベストアンサー

\M-e\M-=\M^S\M-g\M^_\M-"

utf-8で、「当矢」ですね。"\xe5\xbd\x93\xe7\x9f\xa2"
\Mで、次の文字('e'→"\x65")に対して8bit目が1ということです("\xe5")。

Bash

1echo '\M-e\M-=\M^S\M-g\M^_\M-"' | 2ruby -pe '$_=$_.gsub(/\\M-(.)/){($1.ord+128).chr}.gsub(/\\M\^(.)/){(($1.ord&31)+128).chr}' 3⇒ 当矢

投稿2017/01/30 05:27

otn

総合スコア84421

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/01/30 11:04

ありがとうございます!いただいたスクリプトで無事変換できました。
guest

0

brew 等で nkf コマンドを入れて、

bash

1dmesg | nkf -w

とすると、表示できるかもしれません

判定するだけなら、

bash

1dmesg | nkf -g

でできます。

投稿2017/01/26 08:41

raa0121

総合スコア190

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/01/30 04:02

ASCII のようでしたが、変換できませんでした。 ``` $ sudo dmesg | nkf -g Password: ASCII ``` ``` $ nkf --ic=ASCII -s tmp.txt \M-e\M-=\M^S\M-g\M^_\M-" (後略) ```
guest

0

bash

1file --mime dmesg

で文字コードを判定してくれる、かな……

投稿2017/01/26 02:11

tacsheaven

総合スコア13703

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/01/30 04:04

文字化けしている部分をファイルに書き出して判定してみましたが、 us-ascii のようでした(変換はできませんでした。 ``` $ file --mime tmp.txt tmp.txt: text/plain; charset=us-ascii ```
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問