#navi(../)
* ファイルのタイプを判定する方法・fileコマンド [#m285f1dd]
fileコマンドを使うと、判定したファイルが実行ファイルなのか、テキストファイルなのか、シェルスクリプトなのかなどを判別してくれます。~
以下にいくつかのファイルタイプを使用して実行例を記します。
#contents
#htmlinsertpcsp(linux_ads_top.html,linux-sp.html)
* 関連記事・関連資料 [#md465753]
-[[ファイルの詳細な情報を表示し確認する方法・stat>逆引きUNIXコマンド/ファイルの詳細な情報を表示し確認する方法・stat]]
* fileコマンドを使っていくつかのファイルタイプを判定してみる [#f6441b86]
実行ファイル、シェルスクリプト、テキストファイルなどをfileコマンドを使って判定した例を以下に記します。
** 実行ファイルをfileコマンドで判定してみる [#dd85aa29]
以下、lsコマンドをfileコマンドでしてみた結果です。
$ file /bin/ls
/bin/ls: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), stripped
ELF 64bit LSB 実行ファイルであることと、共有ライブラリを使うことがfileコマンドの出力から確認することができます。
** シェルスクリプトをfileコマンドで判定してみる [#e45992b7]
MySQLの起動スクリプトをfileコマンドで確認したときの出力です。
$ file /etc/init.d/mysqld
/etc/init.d/mysqld: Bourne-Again shell script text executable
シェルスクリプトであることが確認できます。
** テキストファイルをfileコマンドで判定してみる [#h4770b84]
自分で作成したテキストファイルをfileコマンドで判定したときの出力です。
$ file abc.txt
abc.txt: UTF-8 Unicode text
UTF-8のテキストファイルであることが確認できます。
** pythonスクリプトをfileコマンドで判定してみる [#e2afa469]
meldというグラフィカルなdiff&mergeアプリがあります。~
このアプリはPythonで記述されています。
fileコマンドで判定した時の出力は以下のようになります。
$ file `which meld`
/usr/bin/meld: a python script text executable
** 他のスクリプト言語の場合 [#yf9d959d]
Perl, Rubyスクリプトでも同様にfileコマンドを実行した例です。
- Perl
$ file hello.pl
hello.pl: perl script text executable
- Ruby
$ file hello.rb
hello.rb: a /usr/bin/ruby script text executable
#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)