Bu yazı stackoverflow gelen benim bir kopyasıdır; Burada sormam gerektiğini anlıyorum ...
Ana bilgisayar adını değiştiren bir komut dosyası çalıştırmak ve bash istemim (PS1 değişkeni) hemen uygun ana bilgisayar adı ile güncellemek istiyorum. Bunu nasıl yapabilirim?
Bunu çalıştırıyorum
#!/bin/bash
# Usage: ./changehost <newhostname>
#Do two sed's to edit the files for persistent hostname change
sed -i s/$(hostname)/$1/g "/etc/hosts"
sed -i s/$(hostname)/$1/g "/etc/sysconfig/network"
#run the hostname command with new hostname to update it
hostname $1
Böyle bir terminalde ve bunu elde et
[user@host dir]# ./changehost newhostname
[user@host dir]#
Ama istediğim bu
[user@host dir]# ./changehost newhostname
[user@newhostname dir]#
Terminal yalnızca yeni bir kabuk açtığımda düzgün şekilde güncelleniyor.
Ben de yapmaya çalıştım
export PS1='somestring'; export PS1='[\u@\h \W]\$'
terminaldeki komut dosyasının dışında kalır ve 'somestring' ve geri dönüş yapar, ancak ana bilgisayar adı değişmez. : \
İşlem başladığında \ h belleğe kaydedilebilir ve başlatma işleminden sonra değiştirilemez mi?
$PS1bizimle paylaşacak mısınız?
export PS1='somestring'; export PS1='[\u@\h \W]\$'terminalde komut dosyası dışında yapmaya çalıştım ve 'somestring' ve geri geçiş yapar, ancak ana bilgisayar adı değişmez. : \ İşlem başladığında \ h belleğe kaydedilebilir ve başlatma işleminden sonra değiştirilemez mi?