需求:bash控制台提示符下,显示全路径
环境:centos 6.9
在文件/etc/bashrc的第36行:
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "
改为:
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \w]\\$ "
问题至此解决。
====================================
思考:能不能用sed命令一键修改,以后自动化时,将命令写入脚本即可修改。
方法一:直接注释36行,再追加要的内容到36行后面
# 下面这句可以用,但要保证这一行是36行
sed -ri -e '36s/ (.*)/ #\1/g' -e '36a\ [ "$PS1" = "\\\\s-\\\\v\\\\\\$ " ] && PS1="[\\u@\\h \\w]\\\\$ "' /etc/bashrc
方法二:
#下面的可以查找到内容
sed -n -r 's#(.*PS1=\"\[\\u\@\\h \\)W(\]\\\\\$ \")#\1\w\2#gp' /etc/bashrc
sed -n -r 's#(.*\PS1=\"\[\\u\@\\h \\)W(\]\\\\\$ \")#\1\w\2#gp' /etc/bashrc
#修改命令为
sed -i -r 's#(.*PS1=\"\[\\u\@\\h \\)W(\]\\\\\$ \")#\1\w\2#g' /etc/bashrc
sed -i -r 's#(.*\PS1=\"\[\\u\@\\h \\)W(\]\\\\\$ \")#\1\w\2#g' /etc/bashrc