ファイルのサイズは500MBです。 ASCII文字以外の文字がいくつかあります。私は、Unixコマンドを使ってそれらの文字を探したいだけです。各行で行番号と位置を取得する方がよいでしょう。ASCII以外の文字を見つけるためのUnixコマンド
感謝:)
ファイルのサイズは500MBです。 ASCII文字以外の文字がいくつかあります。私は、Unixコマンドを使ってそれらの文字を探したいだけです。各行で行番号と位置を取得する方がよいでしょう。ASCII以外の文字を見つけるためのUnixコマンド
感謝:)
はthe other solutionで与えられた答えを使用しますが、grep
に-n
を追加します。
あなたは知っている、それは変です。それは試してみて、これはあなたの行番号、および文字の両方を与える
#include <stdio.h>
int main (void) {
size_t ln = 1;
size_t chpos = 0;
int chr;
while ((chr = fgetc (stdin)) != EOF) {
if (chr == '\n') {
ln++;
chpos = 0;
continue;
}
chpos++;
if (chr > 127) {
printf ("Non-ASCII %02x found at line %d, offset %d\n",
chr, ln, chpos);
}
}
return 0;
}
:-) UNIXユーティリティのコマンドラインオプションの荒野をナビゲートするよりも、時々私は、いくつかの迅速かつ汚いCをコーディングするより速くそれを見つけますその行の中のASCII範囲外の文字の位置。
回答はこちらhttp://stackoverflow.com/questions/3001177/how-do-i-grep-for-non-ascii-characters-in-unix – vpit3833
@ vpit3833:あまりよく知らないunixのコマンドでは、私はリンクが非アスキー文字の行番号を提供していないと思う。間違っていたらごめんなさい... –