アプリ版:「スタンプのみでお礼する」機能のリリースについて

centosで、excelのファイルの文字を検索してターミナル上に表示したいのですが、うまくいきません。
オウムガイと言う文字があるexcelのファイルがあるデイレクトリで、
strings -f /root/cent/* | grep -i オウムガイと実行してもstrings: '/root/cent/cent': No such fileと出てしまいます。
良い方法があれが御教えください。

また、DOSでもそのような方法があれば御教えください。

A 回答 (6件)

stringsはバイナリファイルから探すコマンドなので探せると思いますよ。


ただ、探す文字がどんな日本語コードで入っているかが。
UTF-16なら探す文字をUTF-16で指定してあげないと見つからないかと。

searchedString="`echo オウムガイ | iconv -f EUC-JP -t UTF-16`"
env LANG=ja_JP.UTF-16 strings -f -e l * | env LANG=ja_JP.UTF-16 grep ${searchedString}

※ UTF-8端末ならEUC-JPをUTF-8に変えるなど調整は必要かと思いますが。

この回答への補足

やってみました。どこに不具合があるかよろしければ御教えください。
カレントデイレクトリから検索するのでしょうか?
場所を指定することは出来るのでしょうか?
[root@localhost cent]# searchedString="`echo オウムガイ | iconv -f EUC-JP -t UTF-16`"env LANG=ja_JP.UTF-16 strings -f -e l * | env LANG=ja_JP.UTF-16 grep ${searchedString}
Usage: grep [OPTION]... PATTERN [FILE]...
Try `grep --help' for more information.
iconv: 位置 0 で不正な入力シーケンスがありました
strings: 'cent': No such file

補足日時:2011/02/28 17:06
    • good
    • 0
この回答へのお礼

出来るんですね!!
やってみます。ありがとうございます。お忙しい中大変ありがとうございました。

お礼日時:2011/02/28 15:17

素直に全文検索システムのNamazuやHyper Estraierなどを導入したらどうですか?

    • good
    • 0
この回答へのお礼

検討します。
officeツールの文字を検索するのに適しているものがあれば御教えください

お礼日時:2011/02/28 20:38

#2です。

あまりどうでもよくないので念のために言っておきますが、CentOSなら(何もしてなければ)charsetはUTF8のはずです。
というかEUC-JPは今ではほとんどデフォルトのcharsetとしては使われてません。
    • good
    • 0
この回答へのお礼

わかりました。

お礼日時:2011/02/28 16:55

no such fileを吐くってことは、/root/centにcentというディレクトリがいてワイルドカードの展開対象になる→ファイルでないので


読み込めない→エラーの流れでしょうかね。
エラーを回避しつつコマンドを通すなら、

find /root/cent -type f -exec strings -f {} \; | grep -i オウムガイ

とか。
ただし#2で言われている通り文字コードが一致しないでしょうからあまり意味はないかも。
    • good
    • 0
この回答へのお礼

ありが当御座います。
テキストファイル以外からの文字抽出は不可能なのかもしれませんね。

お礼日時:2011/02/27 21:04

文字コードの違いだと思いますよ。


ExcelはタブンUTF-16ではないかと。
Linuxの方はEUCかな。
    • good
    • 0
この回答へのお礼

ありが当御座います。
テキストファイル以外からの文字抽出は不可能なのかもしれませんね。

お礼日時:2011/02/27 21:04

xlsファイルはバイナリだから見つけられなくて正解だろうと思います。


csvファイルにすれば見つけられると思いますが、書式などを失います。

xlsファイルを解析するツールを介在させないと無理と思うんですけどいかがでしょう。
    • good
    • 0
この回答へのお礼

ありが当御座います。
テキストファイル以外からの文字抽出は不可能なのかもしれませんね。

お礼日時:2011/02/27 21:04

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