cygwinでsort、uniqのエラーが発生しました。
When I was using cygwin, "sort" and "uniq" became an error.
sort: 文字列の比較に失敗: Invalid or incomplete multibyte or wide character
sort: 問題を回避するために LC_ALL='C' を指定してください.
Comparison of the character string went wrong. :Invalid or incomplete multibyte or wide character
Please specify "LC_ALL='C'", in order to avoid a problem.
とエラーが出たので、
Such an error display was carried out.
# export LC_ALL='C'
とやってみました。確かに正常にsort出来たんだけど、今度はlsすると文字化けの嵐~!
In the as directed, I ran the command statement.The sort command worked fine.But, It has been garbled text.
# export LC_ALL='C' とすると、以下の様になっちゃって日本語が化けるんですね。
It will become the following setup if this command is executed.And Japanese encoding goes wrong.
# locale
LANG=ja_JP.SJIS
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_ALL=C
LANG=ja_JP.SJIS
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_ALL=C
で、どうすれば良いかと言うと一時的にロケールを変更すれば良さげです。
That is, the method of changing a locale temporarily is good.
export LC_ALL="ja_JP.SJIS"
で、ロケールを戻して、
A locale is returned to the original setup by the above-mentioned command.
cat hogehoge.txt | cut -d ',' -f 2 | LC_ALL='C' sort | LC_ALL='C' uniq
てな感じで使うと正常に動作します。うーん。面倒くさい。
If the above-mentioned command is executed, it will operate well.
バージョンは、以下の通りです。
Software version is,
cygwin 1.7.17-1
sort (GNU coreutils) 8.15
uniq (GNU coreutils) 8.15
Evernote はあなたがすべてを記憶し、手間をかけずに整理できるようにお手伝いします。Evernote をダウンロードする |
0 件のコメント:
コメントを投稿
コメントをどうぞ