linux 自定义命令/别名

参考资料

  1. Linux(Ubuntu)自定义命令的使用
  2. Linux/Ubuntu系统自定义Shell命令
  3. Ubuntu/Linux 操作系统 自定义命令

目录

  • [一. 为路径取别名](#一. 为路径取别名)
  • [二. 修改.profile文件](#二. 修改.profile文件)
    • [2.1 .profile简介](#2.1 .profile简介)
    • [2.2 需求](#2.2 需求)
    • [2.3 修改.profile文件](#2.3 修改.profile文件)
  • [三. 创建软链接](#三. 创建软链接)

一. 为路径取别名

⏹需求:有一个work文件夹的路径如下:/home/fengyehong/jmw_work_space/work,每次来回切换很麻烦。现在想定义一个别名,直接通过别名切换。

⏹当前登录的用户的目录下,有.bashrc文件,在该文件的末尾添加如下命令

  • 指定别名为:workpath
bash 复制代码
alias workpath='cd /home/fengyehong/jmw_work_space/work'

⏹保存.bashrc文件后,执行如下命令,刷新配置

bash 复制代码
source ~/.bashrc

⏹效果如下


二. 修改.profile文件

2.1 .profile简介

  • .profile 是一个在用户登录时被执行的 Bash 配置文件,用于设置用户的环境变量和其他初始化设置。

    在许多 Linux 发行版中,默认情况下会存在 .profile 文件。

  • .profile 文件通常用于设置用户的环境变量、添加个性化的路径或者执行其他初始化操作。

    这个文件的内容可以包括设置 PATH 环境变量、定义别名、配置命令行提示符等。

  • 当同时存在.bash_profile.profile 时,系统会优先加载 .bash_profile 文件而不加载 .profile 文件。这是因为 .bash_profile 是专门为 Bash Shell 设计的配置文件,而 .profile 则是通用的 Shell 配置文件。

  • 若想同时让.bash_profile.profile生效,可在.bash_profile文件中加入如下配置

    bash 复制代码
    if [ -f ~/.profile ]; then
      . ~/.profile
    fi

2.2 需求

自定义一个命令 MYECHO,自定义之后,在控制台上打印 hello world!

  • 未配置,所以提示命令找不到

2.3 修改.profile文件

⏹在文件的最后一行,添加下面的代码

bash 复制代码
PATH=/apl/tool:$PATH:.
export PATH
  • windows中配置环境变量时,使用;分隔,而linux使用:分隔
  • $PATH是系统既存的环境变量,我们添加的代码相当于重置了系统的$PATH之后,由添加了自定义的/apl/tool

⏹修改完.profile文件之后,使用echo命令查看$PATH的内容

⏹执行source ~/.profile后,刷新配置,然后,就可以使用自定义命令了


三. 创建软链接

⏹通过ln -s命令,将自定义命令创建软链接到/usr/bin命令,也可以直接在控制台上使用自定义命令

bash 复制代码
sudo ln -s /apl/tool/MYECHO /usr/bin/MYECHO
  • 之所以将软链接创建到/usr/bin中,是因为它包含在$PATH
相关推荐
学嵌入式的小杨同学4 小时前
从零打造 Linux 终端 MP3 播放器!用 C 语言实现音乐自由
linux·c语言·开发语言·前端·vscode·ci/cd·vim
EverydayJoy^v^4 小时前
RH134学习进程——十二.运行容器(1)
linux·运维·容器
syseptember4 小时前
Linux网络基础
linux·网络·arm开发
b***25114 小时前
电池组PACK自动化生产线的关键流程与核心优势
运维·自动化
zl_dfq4 小时前
Linux 之 【多线程】(线程的概念、Linux中的线程、页表)
linux
郝亚军5 小时前
如何在Ubuntu和win10/11之间通过samba访问对方的文件
linux·服务器·ubuntu
曦云沐5 小时前
【避坑指南】Ubuntu更新报错“Repository is not signed”的快速修复
linux·ubuntu·docker
哲伦贼稳妥6 小时前
职场发展-遇到以下情况请直接准备后手吧
运维·经验分享·其他·职场和发展
带土16 小时前
10. .out文件
linux
Exquisite.6 小时前
企业高性能web服务器(4)
运维·服务器·前端·网络·mysql