Linux命令执行

Linux命令

Linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和外部命令。

  • 命令格式

COMMAND [OPTIONS…] [ARGUMENTS…]
OPTIONS 选择 包括长选项和短选项 长选项:–all 短选项:-a
ARGUMENTS 参数 命令作用的对象,不如文件名,用户名等

一个命令可以有多个选项  比如 ls -a -l /etc
取消命令Ctrl+c
多个命令之间用;隔开
一个命令可以用 \ 分行

  • 内置Shell命令与外部命令

  • 内置Shell命令

shell自带的命令称为内置Shell命令,可以通过help命令(help本身也是Shell内置命令)来查看Shell内置命令列表;

enable cmd 可以启用内部命令;

enable -n cmd 可以禁用内部命令;

enable -n 可以查看所有被禁用命令。

禁用内置命令不代表这个命令不可用,如果这个命令同时还是外部命令,那禁用这个命令后,系统会去外部查找这个命令。比如echo这个命令。我们可以使用type来查看这个命令是Shell内置还是外部命令。

Linux命令执行

可见echo是内部命令,这时我们禁用这个命令后在用那个type看看。

Linux命令执行

这时它不再是内部命令而变成了外部命令。

  • 外部命令

在文件系统路径下有对应的可执行程序文件
可使用which -a或者whereis来查看一个命令的路径

  • Hash缓存表

  • 什么是Hash缓存表?

Hash缓存表是用来缓存用户执行过的外部命令,当执行一个命令时,系统首先判断它是内部命令还是外部命令,如果是内部命令直接使用,如果是外部命令,则去查找Hash缓存表,如果有缓存则直接调用,如果没有则去PATH路径下查找。

  • hash常见用法

hash 显示hash缓存的所有命令,包括命中次数
hash -l 显示hash缓存的所有命令,包括相关详细信息如路径,命令类型
hash -p path name 将命令的全路径取个别名为name
hash -t name 打印缓存中的name路径
hash -d name 清楚名为name的缓存
hash -r 清除hash表中所有的缓存

  • 别名 alias

使用alias命令可以查看所有的命令别名,alias NAME=”echo”,当用户执行NAME时相当于执行了echo命令。
直接这样写别名是不能永久生效的,需要去配置文件写,
仅对当前用户有效:~/.bashrc
对所有用户有效:/etc/bashrc
配置好后不会立即生效,需要重新登录或者使用source或者 . 来重新读取配置文件 比如 . /etc/bashrc。
unalias命令可以取消别名 -a 可以取消所有别名
如果别名和原命重名而需要执行原命令时,可用”\command”或者’command’ 或/PATH/command

  • 命令执行优先级

别名(alias)>内置Shell命令>缓存(hash)>外部命令($PATH)

原创文章,作者:657188918,如若转载,请注明出处:http://www.178linux.com/80585

(0)
657188918657188918
上一篇 2017-07-15 15:32
下一篇 2017-07-15 15:45

相关推荐

  • 特殊权限之SUID、SGID、STICKY

    特殊权限        在系统中,难免有一些比较特殊的用户或文件目录,但是普通的权限有不能解决我们的需求,于是就有特殊权限帮我们解决这个问题 特殊权限有三个:SUID、SGID、STICKY      首先,先说说安全上下文: 进程以某用户的身份运行,那么进程将会以此用户身份去完成所有操作…

    Linux干货 2016-08-05
  • cat用法

    用法:cat [选项] [文件]… 将[文件]或标准输入组合输出到标准输出。 -A, –show-all 等价于 -vET -b, –number-nonblank 对非空输出行编号 -e 等价于 -vE -E, –show-ends 在每行结束处显示 $ -n, –number 对输出的所有行编号…

    2017-04-02
  • 沉舟侧畔千帆进,枯木头前万树春

    N21第五周博客作业 1、  显示/boot/grub/grub.conf中以至少一个空白字符开头的行; ~]#  grep -E "^[[:space:]]+" //boot/grub/grub.conf root (hd0,0) kernel /vmlin…

    Linux干货 2016-07-29
  • lvm简要及基本操作

        LVM( Logical Volume Manage,逻辑 逻辑卷管理)LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。  &nbs…

    Linux干货 2016-05-23
  • 常用文本处理工具 及 正则表达式详解

      >>>文本处理工具<<< 一:文本查看(cat、less、more、head、tail、cut、paste) cat  (常用于显示内容较少的文本) 功能:查看文件内容,创建文件,文件合并,追加文件内容 选项(options):  ①查看文件内容:  -A  = -vt…

    2017-07-30
  • 系统服务之LVS 集群

    Linux集群(Cluster) 一.概论 1.定义     Cluster:计算机集合;     linux集群,多台Linux主机为解决某个特定问题组合起来形成的单个系统;     由于现代化业务上线的需求, 单服务器已经不能…

    Linux干货 2016-10-28