2

シンボリックリンクを持つディレクトリがあります-それらのいくつかはファイルを指し、いくつかはディレクトリを指しています-シェルスクリプトでディレクトリを指すものをどのように識別しますか(コースの名前に偏見を持たずに)

4

1 に答える 1

1

シンボリックリンクをたどるには ls -L オプションを使用します

これは、ファイル/空のディレクトリからのコンテンツを含むディレクトリを区別するために使用したスクリプトです(これは、ディレクトリにコンテンツがある場合にのみ機能します-私の場合、何らかのコンテンツを含むディレクトリにとにかく興味があるので、満足しています-しかしもしあれば、より良いオプションを提案してください

cd dir
for i in `ls `
do
      if [ 1 -lt   `ls -l -L $i  | wc -l`  ]
      then
              echo "$i is a non empty directory" 
      else
              echo "$i is either an empty directory or a  file"
      fi
done
于 2014-05-08T12:56:34.240 に答える