いくつかのファイル、いくつかのディレクトリ、ファイルへのいくつかのシンボリックリンク、およびディレクトリへのいくつかのシンボリックリンクを含むディレクトリがあります。
ディレクトリでfollowlinks=falseを指定してos.walk()を実行すると、ファイル名リストのファイルとファイルへのシンボリックリンク、およびディレクトリ名リストのディレクトリが取得されます。ただし、ディレクトリへのシンボリックリンクはどこにも表示されません。これはPythonのバグまたは機能ですか、それとも何か間違ったことをしていますか?
ディレクトリではなくシンボリックリンクであり、他の(他のファイルへの)シンボリックリンクがファイル名リストに表示されるため、ディレクトリへのシンボリックリンクがファイル名リストに表示されることを期待しています。
例:ディレクトリfooには次のものが含まれています。
-rw-rw-r-- 4 rikno staff 136 Jan 14 11:10 firefox
lrwxr-xr-x 1 rikno staff 5 Jan 23 13:29 latex -> tetex
lrwxr-xr-x 2 rikno staff 68 Jan 14 11:10 mozilla -> firefox
drwxrwxr-x 3 rikno staff 102 Jan 23 13:29 tetex
最初の反復でos.walk('foo')が返されることを期待しています
('foo', ['tetex'], ['firefox', 'latex', 'mozilla'])
または少なくとも
('foo', ['latex', 'tetex'], ['firefox', 'mozilla'])
しかし、私が得るのは
('foo', ['tetex'], ['firefox', 'mozilla'])
シンボリックリンクラテックス(ディレクトリtetexを指す)については何もわかりません
解決済み:
わかりました、結果は
('foo', ['latex', 'tetex'], ['firefox', 'mozilla'])
したがって、ディレクトリへのシンボリックリンクがdirnamesリストに表示されます。
私は最初、ディレクトリへのシンボリックリンクがファイル名リストにあることを期待し、dirnamesリストを調べたことはありませんでした。コードとファイルシステムを試して、リンクがどこにあるか、またはリンクが「欠落」している理由を見つけたときに、誤って混同してしまいました。私の結果。
質問してすみません。