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
相关推荐
小O_好好学21 分钟前
CentOS 7文件系统
linux·运维·centos
哲伦贼稳妥44 分钟前
一天认识一个硬件之机房地板
运维·网络·经验分享·其他
john_hjy1 小时前
11. 异步编程
运维·服务器·javascript
x晕x1 小时前
Linux dlsym符号查找疑惑分析
linux·运维·服务器
活跃的煤矿打工人2 小时前
【星海saul随笔】Ubuntu基础知识
linux·运维·ubuntu
北京智和信通2 小时前
云平台和虚拟化智慧运维监控,全面提升故障感知与处置能力
运维·虚拟化·云平台·虚拟机监控
fasewer2 小时前
第五章 linux实战-挖矿 二
linux·运维·服务器
楚灵魈3 小时前
[Linux]从零开始的网站搭建教程
linux·运维·服务器
小小不董3 小时前
《Linux从小白到高手》理论篇:深入理解Linux的网络管理
linux·运维·服务器·数据库·php·dba
豆豆3 小时前
为什么用PageAdmin CMS建设网站?
服务器·开发语言·前端·php·软件构建