隠しファイルのみを表示しようとしましたが、どうすればいいのかわかりません。
それは機能しています(ただし、他の場所のドットも一致しています)
ls -la | grep '\.'
追加しようとしていた^
しかし、解決策が見つかりませんでした。
ls -ld .*
はあなたがやりたいことをします。
find . -type f -name '\.*' -print
すべての隠しファイルをディレクトリ階層の下にリストする場合は、機能する必要があります。
ls
の出力を解析する場合は、正規表現の先頭に^
を追加し、-l
オプションを使用しないでください。 -l
を使用すると、各行の出力は、ファイルまたはフォルダの名前ではなく、ファイルまたはフォルダのアクセス許可情報から始まります。だからあなたはこのように使うべきです:
ls -Ad | grep '^\.'
または、printf
bashビルトインで実行できます。
printf "%s\n" .*
zsh
を使用する場合、以下を使用できます。
print -l .*
隠しファイルのみを検索する他の2つの方法を次に示します。
find . -maxdepth 1 -name ".*" -type f -ls
または
find . -maxdepth 1 -name ".*" -type f -printf "%P \n"
使用する -maxdepth
は、ディレクトリツリー内で検索する距離を指定します。
あなたが試すことができます:
find . -maxdepth 1 -type f -name '\.*' -print
find . -maxdepth 1 \( -type f -o -type d \) -name '\.*' -print
もちろん、異なるmaxdepth
値を使用することも、完全に削除することもできます。 ディレクトリ間を探索する場合に非常に役立ちます(-type d
)または通常のfiles(type f
)または両方、および次のような他の関数と組み合わせる:
(例: @ piroux 例- @ jeroen-wiert-pluimers に基づく最終変更時間)==)
find . -maxdepth 1 \( -type f -o -type d \) -name '\.*' -exec stat -c %y {} \; -printf "%P\t"
以下のものは非常にコンパクトで多くのバリアントをサポートしています
1)非表示のファイル、ディレクトリ、サブディレクトリを表示する
find . | grep "^\./\."
2)非表示のディレクトリとサブディレクトリのみを表示します
find . -type d | grep "^\./\."
3)現在のサブディレクトリにある隠しファイルのみを表示する
find . -type f | grep "^\./\."
4)現在のフォルダー内の隠しファイルとディレクトリを表示する
find . -maxdepth 1 | grep "^\./\."
Val0x00ffのソリューションは本当に良いですが、隠しディレクトリを忘れてしまいます。
必要な場合隠しファイルand隠しディレクトリ、なし。そして..:
find -maxdepth 1 -regex '\./\..+' -printf "%P\n"