1. 小红帽首页
  2. Linux资源
  3. Linux实验教程

Shell 基础知识

命令 【选项】 【参数】

命令:(需要运行)

所谓命令就是一个可执行文件,文件本身包含了可执行的程序代码

输入命令,并回车,就是将这个程序提交给内核,由内核分配资源将其运行起来。运行中的程序,我们称为进程。

最左边,必须是一个命令

选项:(用于调整命令的行为)

用于启用或关闭命令的某个或某些功能

短选项:-表示,可合并使用

长选项:–表示,一般不可合并使用

参数:(命令的目标)

命令作用的对象,向命令提供数据。

 

注意:

1.命令,选项,参数中间使用空格隔开

2.多长选项之间、多参数之间,使用空格隔开

3.一行执行多个命令,使用分号;隔开

 

要有效地使用命令,用户需要了解命令接受的选项和参数,以及他们正确的排列顺序。大多数命令都包含–help选项,或者使用man 命令,这可使命令打印其作用的说明,即介绍命令的语法、其接受的选项列表及其作用的“用法语句”

.方括号[ ]括起的是可选项目

. …前面的任何内容均表示该类型项目的任意长度列表

.以竖线|分隔的多个项目表示只能指定其中一个项目

.尖括号<>中的文本表示变量数据

 

在shell中有两类命令:

内部命令实际上是shell程序的一部分,其中包含的是一些比较简单的linux系统命令,这些命令由shell程序识别并在shell程序内部完成运行,通常在linux系统加载运行时shell就被加载并驻留在系统内存中。内部命令是写在bashy源码里面的,其执行速度比外部命令快,因为解析内部命令shell不需要创建子进程。比如:exit,history,cd,echo等。

 

外部命令是linux系统中的实用程序部分,因为实用程序的功能通常都比较强大,所以其包含的程序量也会很大,在系统加载时并不随系统一起被加载到内存中,而是在需要时才将其调用内存。通常外部命令的实体并不包含在shell中,但是其命令执行过程是由shell程序控制的。shell程序管理外部命令执行的路径查找、加载存放,并控制命令的执行。外部命令是在bash之外额外安装的,通常放在/bin,/usr/bin,/sbin,/usr/sbin……等等。可通过“echo $PATH”命令查看外部命令的 存储路径,比如:ls、vi等。

 

type cd

#查看一个命令的类型,是内建还是外部

which ls

#查找ls命令可执行文件在哪儿

whereis ls

#查找关键字文件在哪儿

 

 

echo $PATH

#查看PATH变量的值

#执行命令时,就会在这个PATH变量指定的路径,从左到右去寻找,一直到找到为止,如果没找到,会提示找不到这个命令

#shell搜寻到的外部命令的路径,会被缓存下来,下次就不用再去搜了。

 

echo -n 不换行输出

[root@rhce_net ~]# echo -n ‘123’;echo ‘456’

123456

[root@rhce_net ~]# echo ‘123’;echo ‘456’

123

456

 

echo -e 处理特殊字符

若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:

\a 发出警告声;

\b 删除前一个字符;

\c 最后不加上换行符号;

\f 换行但光标仍旧停留在原来的位置;

\n 换行且光标移至行首;

\r 光标移至行首,但不换行;

\t 插入tab;

\v 与\f相同;

\ 插入\字符;

\nnn 插入nnn(八进制)所代表的ASCII字符;

[root@rhce_net ~]# echo -e ‘\a’

 

[root@rhce_net ~]# echo -e ‘a\bbbbb’

bbbb

[root@rhce_net ~]# echo -e ‘a\nbbbbb’

a

bbbbb

 

hash

#查看缓存的命令

#hits,表示命中次数,也就是被执行了多少次。

 

hash -r

#清除所有缓存

#比如:将ls程序文件移到/usr/bin目录下,如果有缓存存在,还会到/bin/下去找ls这个命令,找不到就会报错,这时,就需要清一下缓存,重新去搜寻。

 

当用户使用完shell并希望退出时,可以通过多种方式结束会话。exit命令终止当前shell的会话,另一种结束会话的方式是按下ctrl+d。

发布者:rhce_net,转转请注明出处:https://www.rhce.net/791.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

0757-22 129 198

在线咨询:点击这里给我发消息

邮件:rhce@rhce.net

工作时间:周一至周五,全天

QR code