タグ付けされた質問 「character-encoding」

ASCII、UTF-8、EBCDICなど、文字や文字セットのさまざまな表現を扱う質問。改行や改行文字で改行をエンコードするオペレーティングシステム間でファイルを移動するときによく発生します。

2
VIMのデフォルトエンコーディングをUTF-8に設定するにはどうすればよいですか?
翻訳された文字列を提供するオープンソースプロジェクトに貢献したいと思います。要件の1つは、寄稿者がPOファイルのエンコーディングとしてUTF-8を使用する必要があることです。 LinuxでVIM 7.3を使用しています。.poファイルを正しい方法で編集して保存できるように、VIMのエンコードがUTF-8に設定されていることを確認するにはどうすればよいですか?

6
無効なutf8のフィルタリング
不明または混合エンコードのテキストファイルがあります。UTF-8ではないバイトシーケンスを含む行を表示したい(テキストファイルを何らかのプログラムにパイプすることにより)。同様に、有効なUTF-8である行を除外したいと思います。言い換えれば、私は探しています。grep [notutf8] 理想的な解決策は、移植可能で、短く、他のエンコードに一般化できるものですが、UTF-8の定義を焼き付けるのが最善の方法だと感じたら先に進んでください。

4
^ M文字とは何ですか?
TexPadが作成しています。私はそれがデッドキーの下にあることを知っています。私はそれが名前であることを思い出すことができません。 青い文字: 文書から大量に削除したいだけです。 どのように入力できますか?

3
テキストファイルのエンコーディングをテストするにはどうすればよいですか?有効ですか?
警告/エラーなし.htmでGeditで開くファイルがいくつかありますが、これらの同じファイルをで開くとJedit、無効なUTF-8エンコーディングが警告されます... HTMLメタタグには「charset = ISO-8859-1」と記載されています。Jeditでは、フォールバックエンコーディングのリストとエンコーディング自動検出器のリスト(現在は「BOM XML-PI」)が許可されているため、当面の問題は解決されました。しかし、これは私に考えさせられました:メタデータがそこになかったらどうでしょうか? エンコード情報が利用できない場合、どのエンコードが適用される可能性があるかを「推測」することができるCLIプログラムはありますか? そして、それはわずかに異なる問題ですが。既知のエンコーディングの有効性をテストするCLIプログラムはありますか?

4
バイトをファイルにエコーする
i2cバスを使用して、rasberry Piをディスプレイに接続しようとしています。はじめに、特にバイトをファイルに手動で書き込みたいと思いました。 特定のバイトをファイルにどのように書き込みますか? 私はすでにそれを読んでいて、私の問題はこのようなもので解決されるべきだと考えました echo -n -e \x66\x6f\x6f > byteFileForNow ただし、fooではなくnanoでそのファイルを開くと、次のように表示されます。 x66x6fx6f そのため、バックスラッシュはエスケープされましたが、バイト自体はエスケープされませんでした。また、今回は-eなしでのみ同じことを試みたので、\ x66 \ x6f \ x6fを表示することを期待していましたが、以前と同じになりました。 そのため、エコーはバックスラッシュ、バックスラッシュのみ、バックスラッシュをエスケープすることになっています。 これを修正する方法はありますか? 私が探していることを行うべきだったマニュアルページによると。

3
Linuxでファイル名とパスに使用される文字セットエンコーディングは何ですか?
使用するファイルシステムに依存しますか?たとえば、ext2 / ext3 / ext4だけでなく、ISO 9660の「ジョリエット」CD-ROMの1つを挿入するとどうなりますか?POSIXには、ファイル名の文字セットエンコーディングに関する何らかの仕様が含まれていると聞きましたか? 基本的に、UTF-8でエンコードされたファイル名を取得した場合、LinuxのファイルI / O APIに渡す前にどのような処理/変換が必要ですか?

2
find(1):いくつかのファイル名で失敗するスターワイルドカードはどのように実装されますか?
ファイル名がUTF-8のファイルシステムでは、ファイル名に誤りがあります。それはD�sinstaller、として表示されます。zsh:による実際の名前 D$'\351'sinstaller、Latin1はDésinstaller、それ自体は「アンインストール」のフランス語の野barです。Zshはそれとは一致しません[[ $file =~ '^.*$' ]]が、グロビングと一致*します。これは私が期待する動作です。 今でも、実行時にそれを見つけることを期待しています。find . -name '*'実際のところ、ファイル名がこのテストに失敗することは決してありません。ただし、LANG=en_US.utf8では、ファイルは表示されず、動作するように設定LANG=C(またはen_US、または'')する必要があります。 質問: 背後にある実装とは何ですか?また、その結果をどのように予測できましたか? 情報:Arch Linux 3.14.37-1-lts、find(GNU findutils)4.4.2

4
`grep`で16進コードを使用して文字を指定する方法は?
この質問は、UnixおよびLinux Stack Exchangeで回答できるため、Stack Overflowから移行されました。 8年前に移行され ました。 次のコマンドを使用して、16進コード0900(अの代わり)から097F(वの代わり)の文字セット範囲をgrepします。अとofの代わりに16進コードを使用するにはどうすればよいですか? bzcat archive.bz2 | grep -v '<[अ-व]*\s' | tr '[:punct:][:blank:][:digit:]' '\n' | uniq | grep -o '^[अ-व]*$' | sort -f | uniq -c | sort -nr | head -50000 | awk '{print "<w f=\""$1"\">"$2"</w>"}' > hindi.xml 次の出力が得られます。 <w f="399651">और</w> <w f="264423">एक</w> <w f="213707">पर</w> <w …

5
Chromeで一部の文字が四角として表示されるのはなぜですか?
たとえば、開発ツールでは次のようになります: これらの正方形のいくつかは行末にあり、最初はキャリッジリターンであると思っていましたが、そうではないことがわかりました。 また、四角は後に表示される=か、>まったく改行がない多くの場所では、との間のすべての任意の文字が存在しないことをバイナリエディタショーでファイルを見ている=と"(例えばid="として表示されますid=? ") これはWebページでも非常にまれに表示されます。たとえば、次のようなものです。 私は、バイナリエディタでそれを見て、その文をコピーして、再度の間に文字が存在しないeとは:。ソースコードにも何も表示されません。 私はこれを見たことがありません。数日前にarchを再インストールしてからです。 Chromeは:バージョン19.0.1084.15 dev Archは:カーネル3.3.1-1-ARCH、x86_64 locale.genたen_GBロケールが(両方のコメント解除UTF-8してISO-8859-1)。chromeのエンコードはデフォルトでに設定されてISO-8859-1いますが、切り替えてUTF-8も違いはありません。 これは私が使用していたhtmlファイルです:test.html 修正は素晴らしく、説明は素晴らしく、これは私のセットアップの問題である(またはそうではない)ことも確認できます。 編集:フォントを調査した結果、どちらの場合も、ttf-ms-fontsパッケージの一部であるarialを使用しようとしていることがわかりました。これをインストールすると、フォントが変更されましたが、正方形は残りました(ただし、形状は異なります)。どちらの場合も、フォントはシステムのデフォルトのフォントに準拠していません。

3
Unixファイル名のエンコードについて
ファイル名のエンコードがどのように機能するかを理解するのに苦労しています。unix.SEには矛盾する説明があります。 ファイル名は文字として保存されます 別の答えを引用するには: Linuxでのファイルシステムの文字エンコーディングに関するいくつかの質問 […]質問で述べたように、UNIXファイル名は単なる文字列です。カーネルはエンコードについて何も知りません。これは完全にユーザー空間(つまり、アプリケーションレベル)の概念です。 ファイル名が文字として保存される場合、最終的にファイル名がディスク上のビットまたはバイトシーケンスとして終了する必要があるため、何らかの種類のエンコーディングが必要になります。ユーザーが選択できる場合は任意のカーネルに供給されたバイト配列に文字をマップするためのエンコーディングを、作成することが可能である任意の有効なファイル名のバイトシーケンスを。 次のことを想定します。ユーザーがランダムエンコーディングXを使用して、ファイルfooをバイトシーケンスαに変換し、ディスクに保存します。別のユーザーはエンコーディングYを使用します。このエンコーディングでは、αはに変換されますが/、これはファイル名として許可されていません。ただし、最初のユーザーの場合、ファイルは有効です。 このシナリオは起こらないと思います。 ファイル名はバイナリBLOBとして保存されます 別の答えを引用するには: Linuxでファイル名とパスに使用される文字セットエンコーディングは何ですか? 他の人が述べたように、これに対する答えは実際にはありません。ファイル名とパスにはエンコードがありません。OSはバイトシーケンスのみを処理します。個々のアプリケーションは、何らかの方法でエンコードされていると解釈することを選択できますが、これは異なります。 システムが文字を処理しない場合、特定の文字(/またはNULL)をファイル名でどのように禁止できますか?/ エンコーディングなしの概念はありません。 説明は、ファイルシステムは任意の 文字を含むファイル名を格納でき、無効な文字を含むファイル名で停止するのはエンコードを考慮するユーザープログラムのみであるということです。これは、ファイルシステムとカーネルが/。を含むファイル名を問題なく処理できることを意味します。 また、これは間違っていると思います。 エンコードはどこで行われ、特定の文字を許可しないという制限はどこにありますか?

2
trは「不正なバイトシーケンス」について不平を言っています
私はUNIXが初めてで、Kirk McElhearnの「The Mac OS X Command Line」を使用していくつかのコマンドを習得しています。 私が使用しようとしていますtrとgrepなるように、私は、通常のMS-OfficeのWord文書内のテキスト文字列を検索することができます。 $ tr '\r' '\n' < target-file | grep search-string ただし、返されるのは次のとおりです。 Illegal byte sequence. robomechanoid:Position-Paper-Final-Draft robertjralph$ tr '\r' '\n' < Position-Paper-Final-Version.docx | grep DeCSS tr: Illegal byte sequence robomechanoid:Position-Paper-Final-Draft robertjralph$ 実際に作成したスクリプトで同じ行を実行しましviたが、検索は正しく実行されます。

4
ファイル名に非ASCII文字または非印刷文字が含まれるファイルを識別する
約700,000個のファイルがある80GBのディレクトリサイズでは、ファイル名に英語以外の文字が含まれるファイル名がいくつかあります。苦労してファイルリストをトロールする以外に、次のものがあります。 これらのファイル名をリストするか、そうでなければ識別するための簡単な方法は? 印刷可能な英語以外の言語の文字を生成する方法-印刷可能な範囲にリストされていない文字man ascii(したがって、これらのファイルが識別されていることをテストできます)

5
UTF-8ファイルをASCIIに変換する(ベストエフォート)
複数の言語のテキストを含むUTF-8のファイルがあります。それの多くは人々の名前です。それをASCIIに変換する必要があり、結果を可能な限りまともなものにする必要があります。 より広いエンコードからより狭いエンコードへの変換をアプローチする方法は多数あります。最も単純な変換は、すべての非ASCII文字を「_」などのプレースホルダーに置き換えることです。ファイルが記述されている言語がわかっている場合は、ローマ字表記などの追加の可能性があります。 Unixで利用可能なUnixツールまたはプログラミング言語ライブラリは、UTF-8からASCIIへの適切な(ベストエフォート)変換を可能にしますか? テキストのほとんどは、ヨーロッパのラテン系ベースの言語です。


6
ランダムパスワードの生成。なぜこのポータブルではないのですか?
ランダムなパスワードを生成したいので、次のようにしています: </dev/urandom tr -dc [:print:] | head -c 64 Ubuntuを実行しているラップトップでは、意図したとおりに印刷可能な文字のみが生成されます。しかし、Red Hat Enterprise Linuxを実行している学校のサーバーにsshし、そこで実行すると、のような出力が得られますが3!ri�b�GrӴ��1�H�<�oM����&�nMC[�Pb�|L%MP�����9��fL2q���IFmsd|l�K、まったく実行されません。ここで何が間違っているのでしょうか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.