ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Bash脚本编写

2020-12-03 09:05:16  阅读:163  来源: 互联网

标签:脚本 返回 read expr test 编写 true Bash


Bash基本使用

1.read命令定义和使用

定义

  • read命令是用于从终端或者文件中读取输入的内部命令
  • 读取整行的输入
  • 每行末尾的换行符不被读入

使用

  • 从标准输入读取输入并赋值给变量:read var
  • 从标准输入读取多个内容:read var1 var2 var3
  • 不指定变量(默认赋值给REPLY):read

2.脚本参数传递

  • $0                  脚本名称
  • $1~$n            获取参数
  • $#                  传递到脚本的参数个数
  • $$             脚本运行的当前进程ID号
  • $*                   以一个单字符串显示所有向脚本传递的参数
  • $?                  显示最后命令的退出状态。0表示没有错误,在其他任何值表明有错误

3.基本运算

算数运算1

a=10  b=20

  • +          加法 `expr $a + $b`   结果为30
  • -           减法 `expr $a - $b`    结果为-10
  • *           乘法 `expr $a \* $b`  结果为200
  • /           除法 `expr $b / $a`    结果为2

注:`不是单引号,是键盘上数字1左侧的符号;乘法需要转义才能使用

算数运算2

a=10 b=20

  • %      取余 `expr $a % $b` 结果为10
  • =       赋值 a=$b 将把变量b的值赋给a
  • ==     相等 相同则返回 true: [ $a == $b ]返回false
  • !=      不相等 不相同则返回 true: [ $a != $b ] 返回true

算数运算3

  • -eq  检测相等 [ $a -eq $b ] 返回false
  • -ne  检测不相等 [ $a -ne $b ] 返回true
  • -gt   检测左边是否大于右边  [ $a -gt $b ] 返回false
  • -lt    检测左边是否小于右边  [ $a -lt $b ] 返回true
  • -ge  检测左边是否大于等于右边  [ $a -ge $b ] 返回false
  • -le   检测左边是否小于等于右边  [ $a -le $b ] 返回true

4.例子

(1)bash与目录命令

创建目录并生成文件

  • mkdir test
  • cd test
  • echo "hello">test.txt
  • ls

(2)bash与内存

统计内存使用

for i in `ps aux | awk '{print $6}' | grep -v 'RSS'`
    count=$[$count+$i]
echo "$count/kb"

(3)read用法,其中$REPLY的用法是默认变量

(4)bash脚本文件参数传递基本操作

 

 (5)脚本中加减乘除余用法

 (6)在脚本中写判断语句并运行

 在命令行中写判断语句

 

(7)bash脚本操作文件:

1.创建一个文件夹

2.文件夹中将hello重定向写入文件test.txt

3.打印出test.txt中的内容

运行这个脚本后会在test文件夹中,自动新建一个test.txt文件,并将hello写入

 

 (8)ps命令与awk结合使用

1.用ps命令是查看进程情况

 2.只取USER、PID的列

标签:脚本,返回,read,expr,test,编写,true,Bash
来源: https://www.cnblogs.com/tester-D/p/14073132.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有