「隠しファイルの一致」が機能しません。

「隠しファイルの一致」が機能しません。

私はbash 4.3.11で動作するように「隠しファイルの一致」を取得しようとしましたが、できません。これが私が間違っていないことを確認したいと思います。

$ grep match-hidden-files .inputrc 
set match-hidden-files on

以下はサンプルフォルダです。

$ ls -ld .icon*
lrwxrwxrwx 1 victor victor   57 Oct 20 10:39 .icons -> /home/victor/Sync/BitTorrentSync/victor/ConfigFiles/icons
drwxrwxr-x 2 victor victor 4096 Nov  2 00:14 .icons2
-rw-rw-r-- 1 victor victor    0 Nov  2 00:55 .icons3
drwxrwxr-x 2 victor victor 4096 Nov  2 00:59 .icons4

「cd ico」(「。」を除く)を入力してキーを押すと、Tab何も起こりません。私はこれを見たいです:

$ ls .ico
.icons/  .icons2/ .icons3  .icons4

答え1

ファイル名の先頭を直接指定したため、cd icoTabmatchで始まるエントリが表示されるとは思わないでください。.

マニュアルページが明確ではありません。

match-hidden-files (On)
       This variable, when set to On, causes readline to  match  files
       whose  names  begin  with  a `.' (hidden files) when performing
       filename completion.  If set to Off, the leading  `.'  must  be
       supplied by the user in the filename to be completed.

これを行いlsTab(デフォルト)、最初の項目set match-hidden-files onに変更され、次のように変更されます。ls .iconsTab

$ ls .icons
.icons/  .icons2/ .icons3  .icons4/

2番目の項目ではTab設定するとoffそうではありません。

使用を開始すると、 の値が何であれ、以前はls icoポイントが遡及的に追加されません。imatch-hidden-files

bashペアに対する変更を確認するには、新しいコマンドを開始する必要があり、~/.inputrc新しいコマンドはそれを再読み込みしません。match-hidden-filesデフォルト値なので、on明示的に設定する必要はありません。

関連情報