Linux中shell的学习

下面是我学习慕课网Linux运维工程师的部分笔记,,慕课网学习地址Linux运维工程师学习路径

1.1,一个完整的shell脚本应该包括

脚本申明,#!
注释信息,#
可执行语句
例如:

#!/bin/bash
#For Example
pwd

1.2,执行脚本的三种方式

  • 脚本文件路径 ./Example.sh
  • sh脚本文件路径 sh example.sh
  • source脚本文件路径 source example.sh
    直接访问脚本路径的方式有点特殊,需要加可执行权限,
    chmod u+x Example.sh

1.3,查看shell

  • cat /etc/shells #查看系统中可用的shell解释器查看
  • echo $SHELL #查看系统的当前shell解释器

2.1,shell接受用户的参数

Example.sh
$1,$2,three,four,five,$6
还有下面这些已经被定义的shell预定义变量

$0#当前执行shell脚本的程序名
$1-9,\${10},${11}...#参数的位置变量
$# , #一共有多少个参数
$* , #所有位置变量的值
$? , #判断上一条命令是否执行成功,0成功,非0失败
vim Example.sh
#! /bin/bash
echo "总共有$#个参数,分别是$*。"
echo "第一个参数为$1,第五个参数为$5。"

这一章我也有点迷,视频地址http://www.imooc.com/learn/175


3.1 通配符

? #匹配任意一个字符
* #匹配一个,0个,多个任意字符,也就是可以匹配任意字符
[] #匹配括号中任意一个字符
[-] #匹配括号中任意一个字符,其中”-“代表一个范围
[^] #逻辑非,表示匹配不是中括号中的任意一个字符,例如[^0-9]


4.1 输出重定向

1,表示含义

设备设备文件名文件描述符类型
键盘/dev/stdin0标准输入
显示器/dev/stdout1标准输出
显示器/dev/sdterr2标准错误输出

2,

类型符号作用
标准输出重定向命令 > 文件以覆盖的方式添加到文件内
标准输出重定向命令 >> 文件以追加的方式把命令的正确输出指定文件或设备中
标准错误输出重定向错误命令2>文件“>”左右两边没有空格
标准错误输出重定向错误命令2>>文件也没有空格,以追加的方式

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

  • 命令 > 文件2>&1 覆盖,保存到同一个文件
  • 命令 >> 文件2>&1 追加,保存到同一个文件
  • 命令 &> 文件 覆盖
  • 命令 &> 文件 追加
  • 命令 >> 文件1 2>>文件2 正确输出到文件1,错误输出到文件2

5.1 管道符

1,多命令执行符

多命令执行符格式作用
;命令1 && 命令2逻辑与,命令1正确执行,命令2才会执行;命令1执行不正确,命令2也不会执行
&&命令1 || 命令2逻辑或,命令1执行不正确,命令2才会执行;当命令1执行正确,命令2不会执行

2,管道符

命令1 | 命令2
可以将命令1的正确输出作为命令2的操作对象

例如:
ll -a /etc/ | more
netstat -an | grep “ESTABLISHED”


6.1 bash中的其他特殊符号

  • ” ,单引号,在单引号中所有的特殊符号,如”$”和”`”都没有特殊含义
  • “” ,双引号,在双引号中特殊符号都没有特殊含义,但是”$”, “`”,”\”例外,拥有调用变量的值,引用命令,和转义符的作用
  • “ ,反引号,反引号括起来的内容是系统命令,在bash中会先执行它
  • ()使 (),因为反引号会比较容易看错。
  • # ,代表注释
  • $ ,调用变量的值
  • \ ,转义符
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值