lsオプションを指定する--group-directories-firstと、ディレクトリが一番上に表示され、出力がlsきれいになります。
ls -l --group-directories-first
ただし、symlinks実際symlinksにはディレクトリに対するには作用しません。使用する可能性があります
ls -l -L --group-directories-first
これは両方の種類のディレクトリを上にリストしますが、適切なディレクトリとシンボリックリンクされたディレクトリを区別しないため、やはり混乱を招きます。
ls通常のディレクトリとは区別しながら、シンボリックリンクされたディレクトリを上に表示できますか?
編集:
私はを使用していbashます。
@goldilocks、ない、
—
ステファンChazelas
lsないlstat()(とreadlinkシンボリックリンクの場合)は、使用しない限り、-L(それが使用する場合のオプションをstat())
@StephaneChazelas:うーん、生きて学びなさい。私は
—
goldilocks
S_ISLNK(st_mode)viaもtrueを返すと思っていましたstat()が、それはありませんlstat()。また、ISLNKは、リンクがリンクへのリンクであっても、statを介してtrueを返しません。それISLNKは一種の不特定ですが、statを介してtrueを返すことは決してないかもしれないという意味です...
@goldilocks、
—
ステファンChazelas
statシンボリックリンクの最後にあるファイルのプロパティを提供します。それが存在しないかアクセスできない場合、statはENOENTを返すため、によって返されるものはstatシンボリックリンクにはなりません。stat()同じように、あなたにシンボリックリンクについては何も教えてくれないだろうopenシンボリックリンクを開くことはありません、またはchmod()シンボリックリンクのパーミッションを変更しません...など
ls。stat()システムコールによると、ディレクトリへのシンボリックリンクはまだディレクトリです(S_ISDIR(st_mode)trueを返します)。Evidentiallylsシンボリックリンクを割り引く 前に、それはこのことを確認します。