Penyelesaian Bash Tidak Berfungsi Pada Pengguna Root

10

Saya menggunakan 12,04 dan saya mencoba menemukan cara untuk mengaktifkan penyelesaian Bash di pengguna root.

Ada ide tentang bagaimana melakukan itu?

T0M XeOn LuCiFeR
sumber
Kemungkinan duplikat? askubuntu.com/questions/33440/…
lumbric
Saat mencoba mengetik apa, apakah penyelesaian bash Anda tidak berfungsi? Atau tidak berfungsi sama sekali?
harisibrahimkv
Ini Tidak Berfungsi Saat Berusaha Mengetik ROOT, Pada Pengguna Biasa Ini Bekerja Dengan Baik, Sebagai Contoh: root # apt-get install gua [tab] [tab] Ini Harus Menunjukkan Sth Seperti Guake, Tapi Tidak Akan, Juga Untuk Hal Lain, Sementara Itu Menunjukkan Hal Yang Sama Saat Saya Menggunakan Pengguna Biasa, Dan Menggunakan "Sudo" Ekstra Sebelum Perintah Itu ...
T0M XeOn LuCiFeR
1
@ T0MXeOnLuCiFeR dapatkah Anda menambahkan output sudo cat /root/.bashrc?
lumbric
4
@ T0MXeOnLuCiFeR Apakah Anda tidak keberatan menulis "Suka Frasa Ini?", Membuat segalanya lebih sulit dibaca dan tidak masuk akal sama sekali untuk digunakan.
Bruno Pereira

Jawaban:

23

Penyelesaian Bash dapat diaktifkan di file .bashrc seperti yang dijelaskan dalam Tanya Jawab ini . Dalam kasus Anda, sepertinya itu benar di .bashrc pengguna Anda, tetapi tidak di .bashrc root Anda. File terakhir terletak di /root/.bashrc. Buka file ini dengan editor teks favorit Anda sebagai root (mis. Dengan menjalankan sudo gedit /root/.bashrc) dan hapus #di awal tiga baris terakhir:

Anda harus mengubah garis 98-100 dari

#if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
#    . /etc/bash_completion
#fi

...untuk:

if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
    . /etc/bash_completion
fi

Kemudian tutup terminal Anda dan buka kembali.

lumbric
sumber
tnx, saya masih mengalami masalah, lihat maksud saya sub perintah seperti ketika Anda mengetik apt-get sekarang Anda akan mengetik "install" u ketik 3 kata pertama lalu Anda menekan tab pada pengguna normal itu bekerja di root user itu tidak .... apa yang harus saya lakukan sekarang ...?
T0M XeOn LuCiFeR
SAYA MELAKUKAN, apa yang Anda katakan kepada saya .... namun itu tidak berhasil, apakah Anda punya ide lain?
T0M XeOn LuCiFeR
@ T0MXeOnLuCiFeR Saya cukup yakin bahwa ini adalah sumber masalah Anda. Apakah Anda catlagi melihat apakah Anda benar-benar mengubah file seperti yang saya sarankan? Apakah Anda menutup dan membuka kembali semua terminal? Jika tidak, coba jalankan . /etc/bash_completionsecara manual (perhatikan ada .!).
lumbric
Ya Man I Melakukannya ... Tnx Pokoknya Itu Menjadi Lebih Baik, Tapi Bukan Yang Saya Pikirkan ... Saya Memeriksa Untuk Lebih Detail.
T0M XeOn LuCiFeR
@ T0MXeOnLuCiFeR apakah Anda mencoba menjalankan . /etc/bash_completionsecara manual?
lumbric
1

Saya berhasil mengaktifkan "penyelesaian bash" di Ubuntu 12,04 LTS dengan mengedit file "bash.bash.rc" di "etc".

Saya baru saja menghapus "#" di baris 32-34 dan menyelesaikan bash untuk "sudo" berfungsi dengan baik sekarang.

kabra
sumber