shell基础

shell基础

说明:shell译为命令解释器,通过vi /etc/shells查看系统支持的shell。

一、shell脚本的执行方式

1、echo命令

-e 反斜线控制转义符

-n 取消输出后末行

转义符表格

控制字符

作用

\\

输出\本身

\a

输出警告

\b

退格键,向左删除键

\c

取消输出行末的换行符。和“-n”选项一致

\e

ESCAPE键

\f

换页符

\n

换行符

\r

回车键

\t

制表符,Tab键

\v

垂直制表符

\0nnn

按照八进制数输出,nnn为三位八进制数

\xhh

按照十六进制数输出,hh是两位十六进制数

[root@localhost~]# echo –e “\e[1;31m abcd \e[0m”

二、bash的基本功能

1、history历史命令的查看

-c 清空历史命令。

-w 把缓存中的历史命令写入历史命令保存文件。

说明:保存的历史命令条数在/etc/profile文件,默认历史命令保存文件~/.bash_history

2、历史命令的调用

1)使用上、下箭头调用历史命令

2)使用“!n”重复执行第n条历史命令

3)使用“!!”重复执行上一条命令

4)使用“!字符串”重复执行最后一条以该字符串开头的命令

5)使用“!$”重复上一条命令的最后一个参数

3、命令与文件补全

1)tab键

2)alias命令(命令的别名)

命令执行顺序:

第一顺位执行用的绝对路径或相对路径执行的命令。

第二顺位执行别名。

第三顺位执行bash的内部命令。

第四顺位执行按照$PATH环境变量定义的目录查找顺序找到的第一个命令。

说明:命令别名设置文件”/root/.bashrc”。

4、bash常用快捷键

 

 

5、输入输出重定向

设备

设备文件名

文件描述符

类型

键盘

/dev/stdin

0

标准输入

显示器

/dev/stdout

1

标准输出

显示器

/dev/stderr

2

标准错误输出

1)输出重定向

类型

符号

作用

标准输出重定向

命令 > 文件

以覆盖方式,把正确输出和错误输出都保存到同一个文件中。

命令 >> 文件

以追加方式,把正确输出和错误输出都保存到同一个文件中。

正确输出和错误输出同时保存

命令 > 文件 2>&1

以覆盖方式,把正确输出和错误输出都保存到同一个文件中。

命令 >> 文件 2>&1

以追加方式,把正确输出和错误输出都保存到同一个文件中。

命令 &>文件

以覆盖方式,把正确输出和错误输出都保存到同一个文件中。

命令 &>>文件

以追加方式,把正确输出和错误输出都保存到同一个文件中。

命令 >>文件1 2>> 文件

以追加方式,把正确输出文件1,错误输出文件2。

2)输入重定向

[root@localhost ~]wc [选项] [文件名]

-c 统计字节数

-w 统计单词数

-l 统计行数

3)多命令顺序执行

多命令执行符

格式

作用

;

命令1;命令2

多命令顺序执行,命令之间没有逻辑关系

&&

命令1 && 命令2

命令1正确执行($?=0),命令2才会执行反之都不执行

||

命令1 ||命令2

当命令1不正确执行($? != 0),则命令2才会执行

4)管道符“|”

[root@localhost ~]# ll –a /etc/ | more

5)find与grep的区别

说明:find完全匹配、grep包含匹配。

6)bash中其他特殊符号

符号

作用

‘’

单引号。

“”

双引号。

``

反引号。引用系统命令

$()

引用系统命令

()

用于一串命令的执行

{}

用于一串命令的执行

[]

用于变量的测试

#

用于注释

$

用于调用变量的值

\

转义符

三、bash的变量和运算符(增删查改)

1、变量值的叠加

1)变量名=”$变量名”123

2)变量名=${变量名}123

2、变量的分类

1)用户自定义的变量

2)环境变量(export)

3)位置参数变量

4)预定义变量

3、变量查看

[root@localhost ~]# set [选项]

-u 调用未声明的变量会报错

-x 命令执行前,会把命令先输出一遍

[root@localhost ~]# env (查看变量)

4、变量删除

[root@localhost ~]# unset 变量名

5、环境变量

PATH变量:系统查找命令的路径

PS1变量:命令提示符设置

LANG语言变量(查询当前支持语系local)

en_US.UTF-8

zh_CN.UTF-8

6、位置参数变量

位置参数变量

作用

$n

n为数字,$0代表命令本身,$1-$9代表第一个到第九个参数

$*

代表命令行所有的参数,$*把所有的参数看成一个整体

$@

代表命令行的所有参数,不过$@把每个参数区分对待

$#

这个变量代表命令行中的所有参数的个数

7、预定义变量

预定义变量

作用

$?

最后一次执行的命令的返回状态,返回0,正确执行,非0,执行不正确。

$$

当前进程的进程号(PID)

$!

后台运行的最后一个进程的进程号(PID)

8、接收键盘输入

[root@localhost ~]# read [选项] [变量名]

-p “提示信息”

-t    秒数

-n   控制输入字符

-s    输入隐藏

四、shell的运算符

1、数值运算的方法

1)使用declare声明变量类型

[root@localhost ~]# declare [+/-] [选项] 变量名

-:给变量名设定类型属性

+:取消变量的类型属性

-a:将变量声明为数组型

-i:将变量声明为整数型(integer)

-r:讲变量声明为只读变量

-x:将变量声明为环境变量

-p:显示指定变量的被声明的类型

2)使用expr或let数值运算工具

valuer=$(expr $a + $b)

let valuer=$a+$b

3)使用“$((运算式))”或“$[运算式]”方式运算(推荐)

valuer=$(($a + $b))

valuer=$[ $a + $b ]

说明:以上三种运算式,推荐使用$((运算式))的方式。

2、shell常用运算符(略)

3、变量的测试与内容置换

变量置换方式

变量y没有设置

变量y为空值

变量y设置值

x=${y-新值}

x=新值

x为空

x=$y

五、环境变量配置文件

1、source命令

source 配置文件 或 . 配置文件(加载可执行文件或加载/etc/profile文件)

2、环境变量配置文件

说明:登录时生效的环境变量配置文件。

/etc/profile

/etc/profile.d/*.sh

~/.bash_profile

~/.bashrc

/etc/bashrc

注意:注销时生效的环境变量配置文件。在用户退出登录时,只会调用一个环境变量配置文件,就是~/.bash_logout。

3、其他配置文件

~/bash_history

4、shell登录提示信息配置文件

1)/etc/issue

2)/etc/issue.net

注意:需要打开/etc/ssh/sshd_config,才能打开banner /etc/issue.net

3)/etc/motd

5、定义bash快捷键命令

[root@localhost ~]# stty –a

#查看所有快捷键

[root@localhost ~]# stty 关键字 快捷键

#设置快捷键ctrl+字母

说明:教程学习参考自尚硅谷,有兴趣的同志可以通过谷网下载视频学习。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

图个吉利儿

欢迎大家一起学习!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值