Shell命令行提示定制

复制代码
/*******************************************************************************
 *                          Shell命令行提示定制
 * 说明:
 *     Shell命令行提示太长也是一种痛苦,只显示当前目录名,或者最后两三个父目录一般
 * 足够了,没必要那么长。
 *
 *                                          2019-5-20 深圳 宝安西乡 曾剑锋
 ******************************************************************************/

 一、参考文档
    1. How to display directory in the prompt?
        https://unix.stackexchange.com/questions/448318/how-to-display-directory-in-the-prompt
    2. Show only current and parent directory in bash prompt
        https://unix.stackexchange.com/questions/216953/show-only-current-and-parent-directory-in-bash-prompt
    3. linux shell 字符串操作详解 (长度,读取,替换,截取,连接,对比,删除,位置 )
        https://blog.csdn.net/dongwuming/article/details/50605911

二、处理方法
    1. 修改文件:~/.bashrc
    2. PROMPT_COMMAND: If set, the value is interpreted as a command to execute before the printing of each primary prompt ($PS1).
    3. PROMPT_COMMAND处理方法:
        PROMPT_COMMAND='case $PWD in
                $HOME) HPWD="~";;
                $HOME/*/*) HPWD="${PWD#"${PWD%/*/*}/"}";;       # %表示从后往前剔除,#表示从前往后剔除
                $HOME/*) HPWD="~/${PWD##*/}";;
                /*/*/*) HPWD="${PWD#"${PWD%/*/*}/"}";;
                *) HPWD="$PWD";;
            esac'
        PS1='${debian_chroot:+($debian_chroot)}\u@\h:$HPWD\$'
    4. 只显示当前目录:PS1='${debian_chroot:+($debian_chroot)}\u@\h:\W\$'
复制代码

 

posted on   zengjf  阅读(298)  评论(0编辑  收藏  举报

编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架

导航

统计

点击右上角即可分享
微信分享提示