shell学习笔记
来源:互联网 发布:仓鼠多少钱一只淘宝上 编辑:程序博客网 时间:2024/06/14 09:22
echo:输出命令
linux下运行sh文件三种方法
1.chomd +x test.sh
./test.sh
2.sh test.sh
3.source test.sh
shell命令的组合运用
1.管道操作: | 将前一端烦人输出命令交给另一端命令处理
2.重定向操作:改变执行命令时的默认输入、输出
重定向输入:<:从指定文件读取数据,而不是从键盘输入
重定向输出:>/>>:将输出结果覆盖/追加到指定文件
标准错误输出:2>/2>>:将错误信息覆盖/追加到指定文件
混合输出&>/&>>:将标准输出和错误信息覆盖/追加到指定文件
3.逻辑分割
&&:逻辑与
||:逻辑或
;:顺序执行
使用变量:
定义及赋值:变量名=变量值
引用变量:$变量名、${变量名}
例子:
title=test
echo $title
1.双引号
允许引用、\转义
echo "$title"
test
2.单引号
禁止引用、\转义
echo "$title"
$title
3.反撇号~,或者$()
以命令输出进行替换
环境变量:
1.用来记录/设置运行参数
系统赋值:USER、LOGNAME、HOME、SHELL、.........
用户操作:PATH、LANG、CLASSPATH、..........
特殊变量
$?:记录前一条命令的状态值,0为正常,非0异常
mkdir /test
echo $?
0
$0:脚本自身程序名
$1-$9:第1-第9个位置参数
$*:命令行的所有位置参数的内容
$#:命令行的位置参数个数
cat test.sh
echo "本程序名为:$0"
echo "命令行的位置参数个数为:$#"
echo "第1个位置参数为:$1"
echo "所有位置参数的内容:$*"
./test.sh aa bb cc
本程序名:./test.sh
命令行的位置参数个数:3
第1个位置参数为:aa
所有位置参数的内容: aa bb cc
数值运算及处理;
1.整数运算操作 乘法需要用\*做出转义
计算表达式格式expr:expr 数值1 操作符 数值2
expr 45\*21 expr 45-21
x=45;y=21;expr $x-$y
算式替换$[]:$[数值1 操作符 数值2]
echo $[45*21] echo $[45-21]
x=45;y=21;echo[x-y]
2.几个数值操作出来技巧
递更处理:let count++、let count--
x=45;
let x++;echo $x-$
46
let x+=2;echo $x-$
48
随机数:RANDOM变量(0-32767)
echo $RANDOM
echo $[RANDOM%100]
生成数字序列:seq 首数 末数、seq 首数 增量 末数
seq 3
1
2
3
seq 3 5
3
4
5
seq 3 2(每次增加的数字) 10
3
5
7
9
3.小数运算操作:将表达式传给bc处理;scale=n,n对除法的位数做出限制
echo "45.67-21.05" | bc
24.62
echo "scale=4;10/3" |bc
3.333
0 0
- [Bash Shell] Shell学习笔记
- [Bash Shell] Shell学习笔记
- shell shell学习笔记001--什么是shell?
- shell学习笔记【原创】
- shell学习笔记2
- shell(bash)学习笔记
- Shell学习笔记
- shell学习笔记《一》
- Unix shell学习笔记
- shell编程学习笔记
- shell学习笔记
- Linux Shell学习笔记
- Shell学习笔记
- Power Shell 学习笔记
- Shell 编程-学习笔记
- shell编程学习笔记
- Shell学习笔记
- shell 学习笔记
- iOS开发中plist文件的创建与简单读取
- 经典排序算法——冒泡排序
- PythonChallenge之level-2解题报告
- CentOS7安装mysql数据库
- Flask--AttributeError 'bool' object has no attribute '__call__'
- shell学习笔记
- 编程问题之:int i=i
- Win 7中的oracle 11g的TNS-12545错误修复
- PAT_Basic --- 1005
- github 流程介绍
- TCP/IP四层模型
- int和Integer的区别
- Flask--实现密码散列以及@property用法
- PAT_Basic --- 1006