Bash autocomplete pada symlink ke direktori lengkap ke seluruh direktori, termasuk slash [duplikat]


44

Kemungkinan Duplikat:
Pelengkapan Tab dengan direktori / tautan

ketika saya memiliki symlink yang foomenghubungkan ke suatu direktori bar/dan saya mulai mengetik fdan menekan tab, itu selesai footetapi saya ingin menyelesaikannya foo/sehingga saya dapat segera menambahkan karakter berikutnya untuk penyelesaian lebih lanjut. Bagaimana saya bisa melakukan itu?

Jawaban:


70

Aktifkan mark-symlinked-directoriesopsi untuk readline .

  1. Edit ~/.inputrc:

    $include /etc/inputrc
    set mark-symlinked-directories on
    
  2. Tekan C-x, C-runtuk memuat ulang pengaturan.

Lihat bagian READLINE di halaman manual bashuntuk dokumentasi lebih lanjut.

Bagi mereka yang tidak ingin menambahkan file dot lain, Anda juga dapat menambahkan baris ini ke ~/.bashrc:

bind 'set mark-symlinked-directories on'

Terima kasih banyak, saya telah berurusan dengan perbedaan antara OSX (default ke on) dan Linux (default ke off) selama berbulan-bulan, dan akhirnya saya cukup muak untuk google itu! Anda adalah pahlawan baru saya. :)
staticfloat

3
Pada beberapa terminal Cx, Cr tidak bekerja untuk saya jadi saya gunakanbind -f ~/.inputrc
blockloop

3
Ini menunjukkan kekuatan stackexchange yang dikombinasikan dengan jawaban sederhana dan pertanyaan yang diformulasikan dengan baik, menjawab pertanyaan saya dalam upaya pertama, sampai di sini melalui google, terima kasih. :)
DusteD

1
untuk apa baris ini $include /etc/inputrc?
razzak

@razzak: Memuat pengaturan tambahan dari file itu, yang biasanya memiliki berbagai ikatan kunci standar untuk terminal umum. (Biasanya mereka dimuat secara otomatis, tetapi jika Anda memiliki milik ~/.inputrcAnda sendiri, Anda perlu memuat satu sistem secara manual.) Lihat bagian READLINE di halaman manual bashuntuk dokumentasi lebih lanjut.
grawity

3

Saya tidak tahu apakah Anda bisa melakukannya persis seperti yang Anda jelaskan, tetapi jika Anda menekan tabdua kali, itu akan menyelesaikan exapansion.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.