一、命令可执行文件所在目录##

shell命令可执行文件所在目录是保存在环境变量PATH中的,终端输入如下命令查看 PATH 环境变量的内容:

$ echo $PATH

我的linux输出如下:

/opt/ros/indigo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

二、自定义shell命令##

在 /home/hj(注:hj为用户目录)目录创建一个 mybin 目录,并将上述 hello.sh 和 helloworld 文件移动到其中:

$ mkdir mybin
$ cd mybin

创建一个 Shell 脚本###

$ gedit hello.sh

添加如下内容,保存并退出:

#!/bin/bash
echo "hello shell!"
exit 0

赋予权限

$ chmod 777 hello_shell.sh

创建可执行文件###

$ gedit helloworld.c

添加如下内容,保存并退出:

#include <stdio.h>

int main()
{
printf("hello world!\n");
return 0;
}

使用 gcc 生成可执行文件:

$ gcc helloworld.c -o hellowold

在环境变量PATH中添加命令可执行文件所在目录###

这里有三种不同方式

  • 1、直接在命令行中设置PATH

PATH=$PATH:/home/hj/mybin

使用这种方法,只对当前会话有效,也就是说每当登出或注销系统以后,PATH设置就会失效。

  • 2、在profile中设置PATH
$ gedit /etc/profile

找到export行,在下面新增加一行,内容为:\(export PATH=\)PATH:/home/hj/mybin$。

编辑/etc/profile后PATH的修改不会立马生效,如果需要立即生效的话,可以执行:

$ source profile

或者

# . profile

这里的.就是source。

注:这里的/etc/profile文件是每个用户登录时都会运行的环境变量设置,所以对任何用户都生效。

  • 3、在当前用户目录下的.bashrc中设置PATH
$ gedit .bashrc

添加保存:

$ export PATH=$PATH:/home/hj/mybin。

后键入命令

$ source .bashrc

让修改生效。

注:.bashrc是当前用户登录时运行的环境变量设置,所以这种方法只对当前用户起作用的,其他用户该修改无效。

三、运行自定义命令##

在终端输入

$ hello.sh

$ helloworld

输出结果如下:

linux_shell自定义命令的更多相关文章

  1. node生成自定义命令(yargs/commander)

    第一部分可以生成一个自定义命令,例如常见的”express”,yargs和commander则可以在生成的自定义命令上做扩展,yargs将命令扩展成类似express --l xx的形式;而comma ...

  2. laravel 自定义命令

    1.自定义命令:将自定义命令保存在app/Console/Commands,也可以在composer.json文件配置自动加载,自由选择想要放置的地方 php artisan make:console ...

  3. Linux自定义命令

    linux自定义命令,就是给当前命令取个别名.比如:ls 列出当前的文件,rm + 文件名 就能删除该文件,如何自定义命令,可以使用alias比如:alias gobin='cd /opt/tomca ...

  4. cmd alias 自定义命令

    简短步骤:1.关闭所有在运行的CMD窗口2.创建文件C:\cmd-alias.bat,包含以下内容:[python] view plain copydoskey sayhello=echo Hello ...

  5. WPF自定义命令和处发命令

    接实现ICommand接口的命令.在介绍之前,先看一下ICommand接口的原型: event EventHandler CanExecuteChanged; bool CanExecute(obje ...

  6. SourceInSight自定义命令说明与应用

    1.自定义命名设置界面(Tool -> Custom Commands...) Command 显示当前选中命令的名字. 下拉列表中包含了所有的自定义命令. Run 命令行,当调用自定义命令时, ...

  7. Linux 创建自定义命令

    Linux 创建自定义命令 Linux 可以创建自定义使用命令 这里我们采取使用“alias”命令.这里我们首先了解两个文件,通过这两个文件我们可以根据环境配置相应的自定义命令. 该文件内创建的自定义 ...

  8. Mac 命令行,自定义命令

    例如自定义命令 gotoXFolder, 直接进入XFolder文件夹, XFolder地址为~/abc/def/Xfolder 步骤: 1. 在home文件夹下创建.profile文件 在.prof ...

  9. u-boot-1.1.6实现自定义命令

    学习目标: 1.了解u-boot-1.1.6中命令的实现机制 2.掌握如何在u-boot-1.1.6中添加自定义命令 1.命令的实现机制 uboot运行在命令行解析模式时,在串口终端输入uboot命令 ...

随机推荐

  1. Linux下 XordDos(BillGates)木马查杀记录

    最近朋友的一台服务器突然网络异常,cpu占用率暴表,登录上去一查,cpu占用300% 左右,流量异常,经过看查进程,获取信息最终确认为中了dos木马,经过几天的研究,基本上已经清除,以下是清理记录. ...

  2. shell编程之循环

    一.for循环 for循环是Shelll中最常见的循环结构,根据书写习惯又分为列表for循环.不带列表的for循环以及类C的for循环.for循环是一种运行前的测试语句,也就是在运行任何循环体之前先要 ...

  3. MATLAB卷积运算(conv、conv2、convn)解释

    1 conv(向量卷积运算) 所谓两个向量卷积,说白了就是多项式乘法.比如:p=[1 2 3],q=[1 1]是两个向量,p和q的卷积如下:把p的元素作为一个多项式的系数,多项式按升幂(或降幂)排列, ...

  4. WebSocket原理与实践(四)--生成数据帧

    WebSocket原理与实践(四)--生成数据帧 从服务器发往客户端的数据也是同样的数据帧,但是从服务器发送到客户端的数据帧不需要掩码的.我们自己需要去生成数据帧,解析数据帧的时候我们需要分片. 消息 ...

  5. <<linux device driver,third edition>> Chapter 3:Char Drivers

    The Internal Representation of Device Numbers Within the kernel,the dev_t type(defined in linux/type ...

  6. java 学习------JDK1.8安装与配置

    1.下在JDK 1.8 2.解压安装 (一般选择默认路径安装) 3.配置环境变量     (我的电脑是windows10 系统) (1)计算机→属性→高级系统设置→高级→环境变量 (2)添加 JAVA ...

  7. saltstack配置管理之states

    states是saltstack中的配置语言,我们安装一个包,管理一个配置文件,最后保证服务的正常运行,都需要我们编写一些states sls文件(描述状态的文件)去描述和实现我们的功能.sls文件都 ...

  8. eclpse安装jetty插件

    公司不用tomcat,使用的是jetty,那么学习一下如何在eclipse中安装jetty插件.

  9. [拍摄]『ROSE 拆解』SONY 摄像机镜头拆解。

    镜头是从一部很老的sony摄像机上拆下来的.具体型号记不清了.应该是DCR系列的某个型号.使用Hi8磁带.NNN年前摄像机因为意外进水报废...拆拆去最后只剩下镜头了.镜头总成. 图片:IMG_201 ...

  10. 阿里云ECS服务器折腾记(一):小白入门遇到的各类问题

    上周日折腾了一次阿里云服务器,被linux的网络问题折腾的够呛.在这里简单做个问题的概要记录,以备忘.题目中说自己是小白,其实也不完全是小白,自己对一些linux的常用命令还是有所了解的,但是对于li ...