web-dev-qa-db-ja.com

/ tmpディレクトリにあるLinuxおよびプログラムによって作成されたファイルを表示する方法

/ tmpディレクトリにあるLinuxおよびプログラムによって作成されたファイルを表示する方法ファイル名は非表示、コマンドls -al /tmpは、名前ではなく、ファイルの存在のみを表示します。

編集:保存されたセッションログでその場所を見つけます:

# ls -al /tmp
drwxrwxrwt    2 0        0              40 Jan  1 00:00 .
drwxr-xr-x   19 1005     1005          219 Aug  2  2017 ..
# grep -r config /tmp
# grep -r bin /tmp
# umount /mnt
# ls -l
----
drwxrwxrwt    2 0        0              40 Jan  1 00:00 tmp
---

3行目は、/ tmpディレクトリに19個のファイル(?)があることを示していますが、表示されません。または私は何かを逃しましたか?

1
minto

ls -laの出力のエントリの2列目の数値は、同じiノードを指すハードリンクの数です。ディレクトリエントリの場合、これは 特別な. dir を含むサブディレクトリの数を意味します。詳細を読むことができますe。 g。 この回答では

エントリ..は、親ディレクトリ(この場合はルートディレクトリ/)を表します。 /の19または20のサブディレクトリは、私が知る限り、非常に正常ですが、ディストリビューションとローカルの追加に依存します。

エントリ.は現在のディレクトリを表します。この場合は/tmp-リストに示されているように...のみが含まれているため、2つのハードリンクがあります。 /に存在し、.がそれを指しています。

/tmpに「非表示」のエントリがあるという結論は間違っています。現在、一時ディレクトリは間違いなく空です。

私のコメントで述べたいくつかの奇妙な点がありますが、これらはこの質問の範囲外です。問題が発生している場合は、表示される詳細な説明(証拠として出力を表示することを忘れないでください)、予想される内容、およびそれが間違っているか異常だと思われる理由とともに、新しい質問を開く必要があります。

3
Murphy

ls -lah /tmpを使用して、/tmp内のすべての第1レベルのファイルとディレクトリを表示します。

'l' for list
'a' for all
'h' for human readable file size

tmpディレクトリにはデフォルトで777権限が付与されているため、すべてのユーザーがディレクトリを介して読み取り、書き込み、インデックス作成を行うことができ、その内容を一覧表示するためにrootアクセスは必須ではありません。

Linuxでは、隠しファイルとフォルダーは、最初に.で始まります。したがって、出力を形成すると、最初に.によって非表示にされたファイルまたはフォルダーを認識できます。

上記のコマンドでコンテンツの詳細が返されない場合は、システムの/tmpが現在空である可能性があります。

また、busybox Androidシェルを使用している場合は、/tmpディレクトリが存在しない可能性があります。 /tmpディレクトリ自体は、Androidの実装に必須ではありません。

2
Abhik Bose