Terminal prompt kacau setelah mengubah nilai PS1

9

Saya dengan ceroboh memasukkan perintah di terminal yang seharusnya berada dalam skrip shell:

export PS1=$PATH:~/drush23/drush/

sekarang di terminal saya, bukan ini:

ubuntu@ip-10-16-134-18:/home/ubuntu$

Saya melihat ini:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/ubuntu/drush23/drush/

dan ketika saya mengubah direktori, baris ini selalu tetap ... Saya tidak tahu harus berbuat apa

Saya punya byobu ...

Moshe Shaham
sumber

Jawaban:

13

$PS1adalah variabel lingkungan yang memberitahu shell Anda cara memformat prompt. Mengubah nilai dengan export, seperti yang Anda lakukan, hanya berlaku untuk sesi itu; jadi Anda bisa membuka shell baru (bukan sub-shell) dan melihat prompt yang familier.

Jika tidak, jika Anda benar - benar ingin prompt Anda kembali di sesi ini sendiri, jalankan kembali file preferensi shell Anda. Untuk pengguna Bash, yaitu:

. ~/.bashrc

Saya tidak tahu apakah itu akan berhasil (setidaknya, tanpa menyebabkan masalah lain) untuk Byobu; tetapi Anda bisa mengatur prompt ke nilai waras seperti ini:

export PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

Atau, jika Anda tidak ingin atau tidak dapat memiliki prompt warna, yang lebih sederhana adalah:

export PS1='\u@\h:\w\$ '

di mana \unama pengguna Anda, \hadalah nama host Anda, dan \wmerupakan path (logis) penuh dari direktori kerja Anda saat ini.

Yatharth Agarwal
sumber
Saya tidak menyadari $ PS1 mengendalikan itu ... terima kasih!
Moshe Shaham
tekan saja di terminal . ~/.bashrc. Ini akan mengatur ulang PS1variabel dan Anda harus mendapatkan kembali prompt Anda.
souravc
@souravc Anda yakin tidak akan menyebabkan masalah untuk OP? dia menggunakan Byobu.
Yatharth Agarwal
@YatharthROCK Saya tidak berpikir itu akan menyebabkan masalah. Apa yang Anda harapkan sebagai masalah?
souravc
@souravc Maaf, tidak berpikir jernih.
Yatharth Agarwal
1

Anda dapat menetapkan PS1nilai yang masuk akal untuk sesi Terminal ini menggunakan:

export PS1=$'\h:\w\$'

Nilai lama juga harus dikembalikan setelah menutup dan memulai ulang Terminal, reboot, dll.

jkt123
sumber
0

Saya punya masalah yang sama. Saya menggunakan PS1 untuk mengatur prompt ke "Test" ..

Kemudian saya tidak dapat kembali ke prompt berwarna standar.

namun saya memeriksa beberapa jawaban di situs web ini & saya harus memeriksa shell mana yang saya jalankan.

Saya mencoba $ SHELL & mendapat reset ke nilai prompt berwarna standar itu.

"$ SHELL"

Saya bukan pro dalam hal ini. Ini murni kebetulan, saya tidak tahu apakah ini akan bekerja untuk Anda atau tidak.

Tetapi patut dicoba.

Ravi Kiran
sumber
Bisakah Anda menjelaskan apa yang Anda lakukan SHELL?
Stephen Rauch
Saya benar-benar tidak tahu cara kerjanya .. Saya juga tidak mengedit apa pun yang berhubungan dengan shell. Periksa tautan tangkapan layar: imgur.com/a/l4SGtBK
Ravi Kiran
1
FYI, ini hanya menjalankan shell baru. Jika Anda menjalankan exit, Anda akan kembali ke prompt yang kacau.
NerdOfLinux