ファイルまたはディレクトリが非表示になっていることを確認する

ファイルまたはディレクトリが非表示になっていることを確認する

ディレクトリ内のすべてのファイル(隠しファイルを含む)を繰り返し印刷し、ファイル数、隠しファイル、隠しディレクトリ、およびディレクトリを記録するbashスクリプトを作成しようとしています。これは課題の一部なので、または-Rを使用することはできませんfinddu

listAllFiles() 
 {
  local dir=$1
  local file
  directoryCounter=0
  fileCounter=0
  hiddenFileCounter=0
  hiddenDirectoryCounter=0

  for file in "$dir"/*; do
  if [[ -d $file ]]; then
      listAllFiles "$file"
      directoryCounter+=1
  elif [[ -f $file ]];then
      fileCounter+=1]
      ls -l $file
  elif [[file is a hidden directory]];then
      listAllFile "$file"
      hiddenDirectoryCounter+=1
  elif [[file is a hidden file]];then
      hiddenFileCounter+=1
      ls -l $file
  fi
     done
 }

ファイル/ディレクトリが隠されているかどうかを検出する方法はありますか?

ベストアンサー1

隠しファイルとディレクトリの名前はで始まるので、.Bashで次のソリューションを使用できます。

# Skip '.' and '..':
if [ "$file_name" = . ] || [ "$file_name" = .. ];then
    continue
fi
# Find hidden files:
if [[ "$file_name" =~ ^\. ]];then # if file name starts with a .
...

おすすめ記事