让你的 Bash 稍微好用那么一点点

今天在学校服务器更新自己做的对接硬件的容器的时候,发现用惯了自己配置的快捷键后,用原来的命令很不顺手,就顺手整理了下自己的 .bashrc,发现有些小改动能让平时敲命令舒服点儿。也不是啥高深玩意儿,就是些常用的别名 (alias) 设置,想着可能对有些佬友有点用,就分享出来,大家随便看看,权当抛砖引玉了,有不足也请大家指出来 :tieba_001:

.bashrc 这文件,就藏在目录 (~) 下,挺不起眼的,但每次开终端它都会被加载。

一、 .bashrc 能干点啥?

主要就是:

  • 设别名 (Alias):给长命令起个短名字,今天主要就聊这个
  • 设环境变量 (PATH 之类的)。
  • 写点小函数。
  • 加载其他配置。

说白了,就是个私人定制命令行的地方。

二、 我自己瞎搞的一些配置 (仅供参考)

大家可以用 nano ~/.bashrc 或者 vim ~/.bashrc 打开编辑。下面是我自己常用的一些,不一定适合所有人,大家看着取舍:


# rm 这个命令,说实话有点慌。加上 -i,删之前让它问一句,给自己个冷静期。
alias rm='rm -i'
# cp 和 mv 也一样,覆盖前问一下,省得手滑了后悔。
alias cp='cp -i'
alias mv='mv -i'

# --- Docker 相关,稍微省点事 ---
# 默认的 docker ps,信息太多太挤了。稍微格式化一下,看着舒服点。
# 这个格式是我常用的,主要看 ID, 名字, 状态, 端口,挺够用了。
alias dps='docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}\t{{.Ports}}"'
# docker images 敲全称也行,就是懒。。。
alias dis='docker images'
# 进容器这个操作挺频繁的。。。
alias dexe='docker exec -it'
# 看日志也简化下,少敲几个是几个。
alias dlog='docker logs'

# --- 其他一些个人习惯 ---
# 这个 ll 估计很多人都用了,确实方便
# alias ll='ls -alF'
# 懒人必备,回上级目录
# alias ..='cd ..'
# alias ...='cd ../..'

切记:改完之后,要让它生效!

source ~/.bashrc
# 或者关掉终端再打开一个新的

别忘了这一步,不然改了跟没改一样。

三、 为啥要搞这些别名?

搞 Docker 的兄弟们应该深有体会,尤其是 Docker 的docker ps 默认输出又长又乱,瞅半天找不到重点:

  • alias dps='docker ps --format ...'
    这玩意儿 偶尔能让你在茫茫容器列表里快速找到目标,至少比默认输出强点。格式化后清爽不少,对我这种眼神不太好的选手比较友好。算是个小小的效率提升吧。
  • alias dis='docker images'
    纯粹是懒,能少敲就少敲。
  • alias dexe='docker exec -it'
    进容器调试的频率不低,dexe <容器名> 比敲全称确实方便那么一点点。
  • alias dlog='docker logs'
    看日志同理,配合 -f (dlog -f <容器名>) 实时看日志,还行。

当然,你完全可以不搞这些,直接敲全称命令,也没任何问题。这纯粹是个人习惯和偏好。

五、 结语

这只是我个人的用法,肯定有大佬有更牛逼的配置,欢迎评论区交流或者指点一二,大家互相学习。

25 个赞

感谢大佬

好东西,感谢佬的分享

感谢分享

1 个赞

太强了,虽然我直接用wrap了
:tieba_087:

1 个赞

感谢分享!

我也是挺多alias别名的这个根据自己的使用习惯改点挺好的,比如:

alias ll=‘ls -al’

1 个赞
export https_proxy=http://127.0.0.1:7890 http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890

挺不错的,科技就是在一次次的偷懒中进步的

1 个赞

基本上不用别名,tab 补全已经很快了。

当然是使用 zsh 等命令行自动补全工具了,不过是学校服务器还是算了吧。。。

1 个赞
# java
alias usejdk8='export JAVA_HOME=$JDK8_HOME'
alias usejdk11='export JAVA_HOME=$JDK11_HOME'
alias usejdk17='export JAVA_HOME=$JDK17_HOME'

usejdk8

# proxy
alias startproxy='export ALL_PROXY=http://127.0.0.1:7897'
alias stopproxy='unset ALL_PROXY'

# maven
alias mcpt='mvn clean package -Dmaven.test.skip=true'
alias mcit='mvn clean install -Dmaven.test.skip=true'
alias mcp='mvn clean package'
alias mci='mvn clean install'
2 个赞

感谢大佬的分享

alias cd = 'rm -rf' 非常好用

删库跑路是吧 :bili_017:

1 个赞

等会真的有佬友照做 :grimacing:

用了,现在我电脑现在开不了机了,我用手机登上来请教一下咋恢复?

1 个赞

学到了,docker命令确实敲到烦,改别名省事儿多了:+1:

建议 “女生一手自用,九九新”

感谢佬分享

太强了佬

1 个赞