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
相关推荐
檀越剑指大厂6 分钟前
【Linux系列】Vim 中删除当前光标到行尾
linux·运维·vim
菠萝吹雪ing18 分钟前
GUI 自动化与接口自动化:概念、差异与协同落地
运维·笔记·程序人生·自动化·接口测试·gui测试
FIavor.19 分钟前
我发送给Apifox是http://localhost:9002/goods/getByUserName?name=张三 为什么会是500哪里错了?
java·服务器·网络协议·http
qiuiuiu4131 小时前
正点原子RK3568学习日志-编译第一个驱动程序helloworld
linux·c语言·开发语言·单片机
周之鸥1 小时前
从零部署 Astro 静态网站到云服务器(含 HTTPS 一键配置)
运维·服务器·ubuntu·http·https·astro
林开落L1 小时前
线程进阶:线程池、单例模式与线程安全深度解析
linux·安全·单例模式·线程池
Microsoft Word1 小时前
跨平台向量库:Linux & Windows 上一条龙部署 PostgreSQL 向量扩展
linux·windows·postgresql
noravinsc2 小时前
centos如何做的时间同步
linux·运维·centos
木亦汐丫3 小时前
Docker 镜像版本Alpine、Slim、Bookworm、Bullseye、Stretch、Jessie
运维·docker·容器·debian·alpine·slim·bullseye
kyle~3 小时前
Qt---setAttribute设置控件或窗口的内部属性
服务器·前端·c++·qt