基本的に、Unixシステム内のすべてのファイルは編集可能であり、少なくとも表示可能であるという印象を受けました。
nano
で次のようなファイルに遭遇した場合、どのような手順を実行できますか :
実行中のファイルであるかどうか、ファイルの種類と、そのコードとファイルのインポート/エクスポート/依存の両方を確認するために必要なものを確認するにはどうすればよいですか?
承認された回答:
ファイルシステムまたはメモリに存在するすべてのファイルは、技術的に編集可能であり、適切な方法を使用する必要があります。特にdconf
に関連するバイナリデータファイルに遭遇しました nano
の名前で判断する設定のデータベース のファイル名行、およびキーワードGVariant
ファイル自体にあります。したがって、dconf-editor
を使用する必要があります GUIツールまたはdconf
コマンドラインツール。
実行中のファイルであるかどうか、ファイルの種類と、そのコードとファイルのインポート/エクスポート/依存の両方を確認するために必要なものを確認するにはどうすればよいですか。
通常、file
を利用できます 特定のファイルタイプを把握するためのコマンド。
$ file /etc/passwd
/etc/passwd: ASCII text
ファイルが実行可能かどうかに関係なく、ls -l filename
を使用できます。 またはstat
実行可能ビットが所有者、グループ、およびその他のユーザーに設定されているかどうかを判別します。ファイルの権限について詳しく説明している関連記事を参照してください。アクセス制御リストもあります。これは、基本的なUnixのアクセス許可よりも多くの凝ったアクセス許可を作成するために使用されます。
使用するソフトウェアはファイルごとに異なり、同じファイルタイプには多くの種類のソフトウェアがあります。一般に、バイナリファイルは、16進形式のhexdumpまたはodコマンドを介して表示し、編集することができます。リバースエンジニアリングやセキュリティアプリケーションでよく使用される16進エディタがあります。
基本的に、Unixシステム内のすべてのファイルは編集可能であり、少なくとも表示可能であるという印象を受けました。
ええと、「すべてがUnix/Linuxのファイルです」という言葉に当てはまらなければならない真実が少しあります。ファイルシステムに存在できるファイルがあり、それはほとんどの人がファイルとして知っていることです。実際には、ファイル(つまり、どこかで一緒に編成されたデータの特定のチャンク)は、メモリまたはファイルシステムに存在できます。つまり、匿名ファイルが存在する可能性があります。ソケットと無名パイプはファイルであり、名前はなく、カーネルが追跡するハンドルのみがあります。それらすべてを編集できますか?はい、繰り返しますが、正しい方法で。パイプには1つのプロセスが書き込みを行い、別のプロセスが読み取りを行うため、ライターはパイプを編集できます。プログラムがその特定のメモリチャンクにアクセスできる場合、メモリにマップされたファイルを編集できます。つまり、すべてがファイルであり、ファイルがどのコンテキストで適用されるかを理解する必要があります。
関連:Ubuntuで利用できるビデオコンバーターは何ですか? Ubuntuでは?