ファイルを検索して類似度の降順にリストすることは可能ですか?
たとえば、
次のファイルは/にあります。
- ここに
- こんにちは
- ヘリコプター
- こんにちは
「hello」を検索すると、次のリストが必要です。
- こんにちは
- こんにちは
- ヘリコプター
- ここに
もちろん、100%の類似性を持つファイルが私が受け取るファイルになります。find / -name 'hello'
私がこれをしたい理由は次のとおりです。ファイルを見つけるためにファイルがどのように作成されたかを正確に知りたくありません。
答え1
そしてzsh
:
setopt extendedglob # best in ~/.zshrc
ls -ld -- (#ia1)hello # case-insensitive, allow one error
ls -ld -- (#ia2)hello # case-insensitive, allow up to two errors.
隠しファイル(および隠しディレクトリ)を再帰的に検索します((D)
)。
ls -ld -- /**/(#ia2)hello(D)
(何もしないことに注意してください。類似性に基づいてソート、ls
パラメータ名でのみソートされます)
答え2
人気はありませんが、これは確かに可能です。
私は実際にそのツールを使ったことがありませんが、何を探すべきかを知っています。fzf
。
一般的に言えば、あなたが望むのはファジィロジックに由来する名前である「ファジィ検索」です。わかるややあなたは何が欲しいですか?部分が多いか少ないとぼやけます。
私があなたならfzf
試してみますが、他のオプションも考えてみましょう:
- ファイルを直接作成し、ファイルがどのように起動されたかを知っている場合は、タブ補完を使用してファイルを見つけることができます(ファイル名を入力してタブをクリックしてオートコンプリート/可能なオプションを確認します)。
- ファイル名はわかりませんが、他のデータ(サイズ、作成日など)がわかっている場合は、これらの数量子で検索できます。