Shell基础笔记

Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面

系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。

Shell的分类

Bourne Shell

C Shell

脚本执行

赋予执行权限,直接运行

chmod 755 hello.sh

./hello.sh

通过Bash调用执行脚本

bash hello.sh

命令别名

alias 别名='原命令'

多命令顺序执行

;

&&

||

dd命令

磁盘复制

管道符

命令1 | 命令 2

搜索

grep[选项]"搜索内容"

通配符

? :匹配一个任意字符

* :匹配0个或任意多个任意字符,也就是可以匹配任何内容

[]

[-]

[^]

Bash其他特殊符号

'' :单引号。在单引号中所有的特殊符号,如“$”和“`”(反引号)都没有特殊含义。

"" : 双引号。在双引号中特殊符号都没有特殊含义,但是“$”、“`”和“\”是例外,拥有“调用变量的值”、

“引用命令”和“转义符”的特殊含义。

`` :反引号。反引号括起来的内容是系统命令,在Bash中会先执行它。和$()作用一样,

不过推荐使用$(),因为反引号非常容易看错。

$() :和反引号作用一样,用来引用系统命令。

$ :用于调用变量的值,如需要调用变量name的值时,需要用$name的方式得到变量的值。

变量设置规则

变量分类

用户自定义变量

环境变量:这种变量中主要保存的是和系统操作环境相关的数据。

位置参数变量:这种变量主要是用来向脚本当中传递参数或数据的,变量名不能自定义,变
量作用是固定的。

预定义变量:是Bash中已经定义好的变量,变量名不能自定义,变量作用也是固定的。

变量定义

name="LWJ"

变量叠加

aa=123

aa="$aa"456 或者 aa=${aa}789

变量调用

echo $name

变量查看

set

变量删除

unset name

设置环境变量

export 变量名=变量值

查询变量

env

删除变量

unset

位置参数变量

$n:n为数字,$0代表命令本身,$1-$9代表第一到第九个参数,十以上的参数需要用大括号
包含,如${10}

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

$@:这个变量也代表命令行中所有的参数,不过$@把每个参数区分对待

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

 

预定义变量

$?:最后一次执行的命令的返回状态。如果这个变量的值为0,证明上一个命令正确执行;如果
这个变量的值为非0(具体是哪个数,由命令自己来决定),则证明上一个命令执行不正确了。

$$:当前进程的进程号(PID)

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值