当前位置: 首页 > news >正文

.bashrc 文件高级用法

 如何创建命令别名(Alias)?

别名(alias)是更长命令的自定义快捷方式。它们非常适合减少你经常运行的命令的打字错误和节省按键。语法是 alias 名称='命令'

以下是一些你可以添加到 .bashrc 文件中的有用别名:

# --- 我的自定义别名 ---# 带有所有文件和大小的人类可读 ls
alias ll='ls -lha'# 更具视觉效果和帮助性的 grep
alias grep='grep --color=auto'# 清除终端的快捷方式
alias c='clear'# 持续更新和升级你的系统?(适用于 Debian/Ubuntu)
alias update='sudo apt update && sudo apt upgrade -y'# 获取你的公共 IP 地址
alias myip='curl ifconfig.me; echo'

添加后,保存并退出文件。运行 source ~/.bashrc 后,你只需输入 ll 而不是 ls -lha

 

2. 如何编写强大的 Shell 函数(Function)?

虽然别名(alias)对于简单的命令替换很好用,但对于更复杂的任务来说就力不从心了。这时 Shell 函数(function)就变得必不可少。当你需要向自定义命令传递参数时,函数是理想选择。

示例 1:如何创建并进入目录 (mkcd)?

这是一个经典的省时技巧。它不是先运行 mkdir directory_name 然后再运行 cd directory_name,而是通过一个函数一步完成这两件事。

# --- 我的自定义函数 ---# 创建目录并立即进入
mkcd ()
{mkdir -p -- "$1" && cd -P -- "$1"
}
  • mkdir -p -- "$1":创建目录。$1 代表你传递给函数的第一个参数(目录名)。-p 标志确保在需要时创建父目录。
  • &&:这是一个逻辑 AND。cd 命令只会在 mkdir 命令成功后运行。
  • cd -P -- "$1":进入新创建的目录。

例如:

# 这一个命令即可创建 'new-project' 目录并进入其中
mkcd new-project

示例 2:如何解压任何归档文件 (extract)?

解压各种归档格式(如 .zip.tar.gz 或 .tar.bz2)所需的命令行语法在不同工具之间差异很大。与其记住所有不同工具的语法,不如将其简化为名为 extract 的单个命令。该函数会检查作为参数传递的文件名,并使用条件逻辑执行正确的底层解压缩或提取程序,并带上适当的标志。

# 通用解压函数
extract ()
{if [ -f "$1" ] ; thencase "$1" in*.tar.bz2)   tar xvjf "$1"    ;;*.tar.gz)    tar xvzf "$1"    ;;*.bz2)       bunzip2 "$1"     ;;*.rar)       unrar x "$1"     ;;*.gz)        gunzip "$1"      ;;*.tar)       tar xvf "$1"     ;;*.tbz2)      tar xvjf "$1"    ;;*.tgz)       tar xvzf "$1"    ;;*.zip)       unzip "$1"       ;;*.Z)         uncompress "$1"  ;;*)           echo "'$1' cannot be extracted via extract()" ;;esacelseecho "'$1' is not a valid file"fi
}

例如:

extract my_files.zip
extract my_other_files.tar.gz

3. 如何自定义 Bash 提示符 (PS1)?

你也可以通过编辑 .bashrc 文件来定制你的终端提示符。你的提示符由一个名为 PS1 的特殊变量定义。你可以自定义它来显示颜色和有用的信息,使你的终端更具可读性。

这是一个实用的彩色 PS1 设置,它显示你的用户名、主机名、当前目录和 Git 分支(如果你在 Git 仓库中)。

# --- 自定义提示符 (PS1) ---# 解析 git 分支的函数
parse_git_branch() {git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}# 提示符设置
export PS1="\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[0;31m\]\$(parse_git_branch)\[\033[00m\]\$ "

这看起来很复杂,但它只是结合了颜色和特殊的 Bash 字符:

  • \u:你的用户名
  • \h:主机名
  • \w:当前目录的完整路径
  • \[\033[...m\]:这些是颜色代码。
  • \$(parse_git_branch):这会调用我们的函数来获取当前的 Git 分支。

运行 source ~/.bashrc 后,你的提示符将从 user@host:~$ 转换为一个彩色且信息丰富的行。

 
http://www.rkmt.cn/news/53913.html

相关文章:

  • 特殊数学符号记录
  • 如何更换Git远程仓库:从Clone到Push的完整流程
  • idea 将属性列字段和驼峰命名法进行转换
  • 2025/11/19-How Healthy Are Apples?
  • 2025年评价高的阻尼三节轨最新TOP厂家排名
  • 2025年口碑好的连体公寓床厂家实力及用户口碑排行榜
  • 基于改进人工蜂群算法(IABC)的K均值聚类算法实现
  • linux c视频教程
  • 2025年11月豆包搜索排名优化对比分析:基于权威数据的十大企业全景评估
  • 2025年新疆残膜回收机公司权威推荐榜单:棉花残膜回收机/北疆残膜回收机/粉杆收膜打包一体机源头厂家精选
  • 力扣算法 2154题 将找到的值乘以2
  • 2025年知名的150吨地磅厂家推荐及采购参考
  • 2025年松木猫砂生产厂家权威推荐榜单:无尘矿砂/豆腐猫砂/水晶猫砂源头厂家精选
  • 2025年新疆大马力拖拉机公司权威推荐榜单:凯尔3004拉犁/新疆拖拉机/凯尔拖拉机源头厂家精选
  • 2025年11月geo公司排行榜:基于行业标准的十大服务商综合排名与选择策略
  • 11.19工作总结
  • 2025年11月geo公司排行榜:十大领先企业服务能力与长期发展指南
  • 2025年质量好的酒炮PC管行业内口碑厂家排行榜
  • 2025 云南靠谱旅行社推荐榜单:避开消费陷阱,选对服务商就看这篇
  • 2025年11月北京geo优化公司排行榜:十大领先企业长期发展能力与服务体系指南
  • 2025年11月AI搜索优化排行榜:多维度评估服务商综合能力与行业适配性
  • 比FTP更安全的文件传输方式是什么?政企首选的传输系统在这里
  • 2025年11月AI搜索优化排行榜:基于行业数据的十大企业综合指南
  • 2025年苗木批发基地批发商口碑排行榜TOP10,樱花/丝棉木/金叶女贞/青叶复叶槭/国槐/金叶复叶槭/红叶石楠/无刺枸骨球批发商推荐排行榜
  • 2025年11月ai优化公司分析报告:从核心优势到行业案例的全面评估
  • 2025 最新推荐黄锈石实力厂家排行榜:无辐射环保石材权威测评,光面 / 荔枝面 / 路沿石优质供应商精选
  • 2025年11月deepseek关键词排名优化排行榜:十大优质服务商综合实力与长期发展指南
  • 2025年度新中式女装供应链十佳企业揭晓,新中式女装批发供应链解析品牌实力与甄选要点
  • linux c程序设计 pdf
  • 2025 年履带厂家最新推荐排行榜:钢制履带 / 履带板 / 履带钢权威测评,聚焦高性能与稳定性优质之选