ls は、色以外のフラグを指定せずにホームディレクトリでのみ繰り返されます。

ls は、色以外のフラグを指定せずにホームディレクトリでのみ繰り返されます。

トピックが示すように、ホームディレクトリにあるたびにlsを実行するたびに、すべてのフォルダ内のすべてのファイルが再帰的に表示され、なぜこれが起こるのかを説明するものが見つかりません。ドキュメント、Googleからは役に立ちませんでした。 。いつからこのようなことが始まったのかは分からないので、犯人が何なのかよく分からない。

ルートとしてこれを行いますが、ホームディレクトリ以外のどのディレクトリでもこれを行いません。

これにより、それがディレクトリまたはその中にあるファイルの設定であると信じられます。どんな助けでも大変感謝します!

CentOS 6.4 64ビット

dr-xr-xr-x 130 user     user      55M Dec 20 22:05 user

$ uname -a
Linux 3.10.9-xxxx-grs-ipv6-64 #1 SMP Wed Aug 21 11:51:59 CEST 2013 x86_64 x86_64 x86_64 GNU/Linux

$ which ls
alias ls='ls --color=auto'
        /bin/ls

追加情報:

$ type ls
ls is aliased to `ls --color=auto'

$ type -a ls
ls is aliased to `ls --color=auto'
ls is /bin/ls

$ ls
file1
file2
folder1
folder1\file3
folder1\file4
folder2
folder2\file5
folder3
file6

など、ホームディレクトリ内のすべてのファイルを一覧表示し、すべてのフォルダ内のすべてのファイルを一覧表示します。

$ strace ls
write(1, "WWW_ERRORS\n", 11WWW_ERRORS
)            = 11
write(1, "WWW_ERRORS\\404.html\n", 20WWW_ERRORS\404.html
)  = 20
write(1, "WWW_ERRORS.rar\n", 15WWW_ERRORS.rar
)        = 15
write(1, "xbmc\n", 5xbmc
)                   = 5
close(1)                                = 0
munmap(0x3627ad0b000, 4096)             = 0
close(2)                                = 0
exit_group(0)                           = ?

答え1

lsエイリアスや関数ではなく、組み込み関数を実際に実行していることを確認するには、を実行して、どのcommand lsオプションが実行されているかを確認することもできます。type ls@ジョーダンが提案しました。これが意味できるものをすべて理解するには、ls次のようにしますtype -a ls

関連情報