Linux/Solaris でのテキスト/ASCII ファイルの識別

Linux/Solaris でのテキスト/ASCII ファイルの識別

bashオペレーティングシステム(Linux / Solaris)のファイルから現在のIPアドレスを検索し、それを別のIPアドレスに置き換えるスクリプトを書く小さなプロジェクトがあります。

問題は、IPアドレスがテキストファイルにあること、またはテキスト以外のファイル(バイナリ/データファイルなど)にある可能性があることです。

私は次のコマンドを使用します。

file –mime $PATH ( --mime is valid only for Linux )

ファイルがテキストファイルであるか、テキストファイル(バイナリファイル、データファイルなど)であるかを確認する

私が正しいことをしていることをお勧めします。私の結論は正しいですか?

たとえば、次のコマンドの場合:

file –mime $PATH

結果を返す「テキスト/一般」

これはテキスト/ ASCIIファイルです。そうでなければテキストファイルではありませんか?

2番目の質問:

file –mime

--mimeこのフラグはLinuxでのみ有効で、Solarisには存在しません。それでは、Solarisの代替案は何ですか?

コマンドがターゲットファイルの定義を正確に認識しないことが知られているので、fileテキストファイルを識別する方法について他のアイデアがある人がいる場合は、素晴らしい提案を喜んでいただきます。

ベストアンサー1

find /location -type f -print | xargs file

携帯性が良いはずです。その後、「[Tt] ext」などを見つけることができます。さまざまな可能な出力(スクリプト、テキストなど)を一覧表示し、どの出力を見たいかを確認する必要があります。

おすすめ記事