shell常用基础命令

其他常用

# 1.查看当前用户系统环境变量
$ env

# 2.查询当前用户的所有变量(临时变量与环境变量)
$ set

# 3.设置环境变量
$ export 变量名=变量值 或者 变量名=变量值;export 变量名

例子:系统中有一个变量PATH,环境变量export PATH=/usr/local/mysql/bin:$PATH

# 4.

常用快捷键

# 1.光标移到命令行的最前端
$ Ctrl+A 或 Home
# 2.光标移动到命令行后端
$ Ctrl+E 或 End
# 3.删除光标前所有字符
$ Ctrl+u
# 4.删除光标后所有字符
$ Ctrl+k
# 5.搜索历史命令
$ Ctrl+r

常用通配符

* :匹配 0 或多个任意字符
?:匹配任意单个字符
[abc] :匹配[abc]中任意`单个`字符, 或者一组单个字符 [a-z]
[!abc] : 匹配除abc中的任意单个字符
{str1,str2,str3...} : 匹配str1,str2或更多字符 例子:{0..12} 表示匹配0-12

案例:
1. rm -f file*
2. cp *.conf /home
3. touch file{1..5}

bash中的引号

双引号 "" :会把引号内的内容当成一个整体看待,允许通过$符号引用其他变量值
单引号 '' :会把引号内的内容当成一个整体看待,禁止引用其他变量值,shell中特殊符号都被视为普通符号
反撇号 `` :反撇号和$()一样,引号或括号里的内容会优先执行,如果存在嵌套,反撇号不能用

例子:
[root@192 docker]# date +%F
2021-07-16
[root@192 docker]# echo "$(date +%F)"
2021-07-16
[root@192 docker]# echo '$(date +%F)'
$(date +%F)
[root@192 docker]# echo "`date +%F`"
2021-07-16
[root@192 docker]#

shell脚本模板

#!/bin/bash 表示以下内容使用bash解释器解析

注意: 如果直接将解释器路径写死在脚本里,可能在某些系统就会存在找不到解释器的兼容性问题,所以可以使用:#!/bin/env 解释器 #!/bin/env bash

#!/bin/env bash

# 以下内容是对脚本的基本信息的描述
# Name: 名字
# Desc:描述describe
# Path:存放路径
# Usage:用法
# Update:更新时间

#下面就是脚本的具体内容
commands
...

shell内置bash中变量

内置变量含义
$?上一条命令执行后返回的状态;状态值为0表示执行正常,非0表示执行异常或错误
$0当前执行的程序或脚本名
$#脚本后面接的参数的个数
$*脚本后面所有参数,参数当成一个整体输出,每一个变量参数之间以空格隔开
$@脚本后面所有参数,参数是独立的,也是全部输出
$1~$9脚本后面的位置参数,$1表示第1个位置参数,依次类推
10   {10}~ 10 {n}扩展位置参数,第10个位置变量必须用{}大括号括起来(2位数字以上扩起来)
$$当前所在进程的进程号,如echo $$
$!后台运行的最后一个进程号 (当前终端)
!$调用最后一条命令历史中的参数

案例:

$*:表示将变量看成一个整体 $@:表示变量是独立的

#!/bin/bash
for i in "$@"
do
echo $i
done

echo "======我是分割线======="

for i in "$*"
do
echo $i
done

[root@MissHou ~]# bash 3.sh a b c
a
b
c
======我是分割线=======
a b c

四则运算符号

表达式举例
$(( ))echo $((1+1))
$[ ]echo $[10-5]
exprexpr 10 / 5
letn=1;let n+=1 等价于 let n=n+1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值