——Linux脚本
创始人
2024-09-25 12:50:41
0

一.构建基本脚本

1.使用多个命令

shell 可以让你将多个命令串起来,一次执行完成。如果要两个命令一起运行,可以把它们放在同一行中,彼此间用分号隔开。

2.创建 shell 脚本文件

1) 要将 shell 命令放到文本文件中,首先需要用文本编辑器来创建一个文件,然后将命令输入到文件中。

2) 在创建 shell 脚本文件时,必须在文件的第一行指定要使用的 shell 。其格式为:#!/bin/bash

3.显示消息

1) 通过 echo 命令可以添加自己的文本消息来告诉脚本用户脚本正在做什么。

2) 不需要使用引号将要显示的文本字符串划定出来。

3) 如果字符串中出现引号,需要在文本中使用另一种引号来划定文本字符串。

4) -n 可以把文本字符串和命令输出显示在同一行中。

5) 应用

- 构建一个脚本文件执行创建新用户、给新用户分组、查看当前登录的用户。

- 运行该脚本文件查看返回结果。

- 为刚刚构建的脚本文件添加输出前的提示。

4.使用变量

1) 变量允许你临时性地将信息存储在 shell 脚本中,以便和脚本中的其他命令一起使用。

2) 在脚本中,可以在环境变量名称之前加上美元符($)来使用这些环境变量。

3) 用户变量区分大小写。

4) 使用等号将值赋给用户变量。在变量、等号和值之间不能出现空格。

5.重定向输入和输出

1) 重定向可以用于输入,也可以用于输出,可以将文件重定向到命令输入。

2) bash shell 用大于号(>)将命令的输出发送到一个文件中。

3) 如果输出文件已经存在了, > 会用新的文件数据覆盖已有文件。

4) 输入重定向符号是小于号(<)。

5) 内联输入重定向(inline input redirection)只需要在命令行中指定用于输入重定向的数据。

6) 内联输入重定向符号是远小于号(<<)。

6.管道

1) 管道连接(piping)的管道符号(|)。直接重定向到另一个命令。 

2) 可以在一条命令中使用任意多条管道。

3) 应用

- 查看当前系统的所有用户基本信息,使用重定向命令,将查看结果保存为 username.txt 文件。

- 使用 wc 和重定向命令,查看 username.txt 中的文本行数。

- 查看当前系统的所有用户基本信息,不通过重定向的方式,直接查看文本行数。

7.执行数学运算

1) 在 shell 脚本中有两种途径来进行数学运算:

- expr 命令(expr 部分字符需要转义字符)

- 使用方括号(用美元符和方括号( $[ operation ] )将数学表达式围起来。)

2) 在shell脚本中用方括号执行以下数学运算:

- 100 *(50-45)

- 100/52

- 观察输出结果

3) bash shell 数学运算符只支持整数运算,内建的 bash 计算器 bc 允许在命令行中输入浮点表达式,然后解释并计算该表达式,最后返回结果。

4) -q 选项可以不显示 bash 计算器冗长的欢迎信息。

5) 保留的小数位数是由内建变量 scale 控制的,默认值为 0。

6) 可以用命令替换运行 bc 命令,并将输出赋给一个变量。基本格式:variable=$(echo "options; expression" | bc)

- options 允许你设置变量。如果不止一个变量用分号分开。

- expression 参数定义了通过 bc 执行的数学表达式。

7) 在脚本中使用 bc 进行加减乘除运算,要求保留3位小数。

8.退出脚本

1) shell中运行的每个命令都使用退出状态码(exit status)告诉 shell 它已经运行完毕。 

2) 退出状态码是一个 0~255 的整数值,在命令结束运行时由命令传给 shell 。可以捕获这个值并在脚本中使用。

3) Linux 提供了一个专门的变量 $? 来保存上个已执行命令的退出状态码。 

4) 默认情况下,shell 脚本会以脚本中的最后一个命令的退出状态码退出。

5) exit 命令允许你在脚本结束时指定一个退出状态码。

6) 应用

- 针对某脚本文件,指定一个退出状态码。

- 运行后,查询其退出状态码,并对其状态进行描述。

相关内容

热门资讯

安卓系统为什么没网络,探究原因... 手机没网络,这可真是让人头疼的小麻烦!你有没有遇到过这种情况:手机屏幕上显示着“无网络连接”,而你明...
安卓苹果换系统安装教程,安卓与... 亲爱的手机控们,是不是觉得手机用久了,系统卡得像蜗牛爬?别急,今天就来教你怎么给安卓和苹果手机换上全...
魅族安卓系统下载软件,尽享智能... 你有没有发现,最近手机圈里又掀起了一股热潮?没错,就是魅族的新款手机!这款手机不仅外观时尚,性能强大...
平板电脑安卓系统12墨,平板电... 亲爱的读者们,你是否也和我一样,对科技新品的到来充满期待?今天,我要和你聊聊一款让人眼前一亮的新品—...
荣耀畅玩刷安卓系统,解锁更多可... 你有没有想过,你的荣耀畅玩手机,其实可以焕发第二春呢?没错,就是刷上全新的安卓系统!想象你的手机瞬间...
为什么安卓系统老是卡机,性能瓶... 手机卡顿真是让人头疼!尤其是安卓系统,有时候用着用着就突然卡住了,让人忍不住想摔手机。那么,为什么安...
哪款盒子是安卓系统,智能娱乐新... 你有没有想过,在这个智能设备横行的时代,哪款盒子是安卓系统最让人心动呢?安卓系统以其开放性和强大的兼...
安卓Q删除系统文件,安全操作与... 亲爱的安卓用户们,你是否曾在使用安卓手机时,不小心误删了重要的系统文件,心里直发慌?别担心,今天就来...
安卓12系统怎么下载谷歌,安卓... 你有没有听说安卓12系统已经发布了?是不是也想赶紧升级体验一下新系统的魅力呢?不过,别急,升级之前你...
安卓系统怎么清除后台,安卓系统... 手机后台程序太多,是不是感觉手机越来越卡?别急,今天就来教你怎么轻松清除安卓系统的后台程序,让你的手...
ios和安卓重置系统,轻松恢复... 手机用久了是不是感觉卡得要命?别急,今天就来给你揭秘如何给iOS和安卓手机来个彻底的重置,让它焕发新...
华为的手机系统与安卓,融合与创... 亲爱的读者们,你是否曾好奇过,为什么华为的手机系统能在众多安卓手机中独树一帜?今天,就让我们一起揭开...
安卓系统如何加通知声音,安卓系... 你有没有发现,手机上的通知声音有时候就像是个小闹钟,总是不请自来地提醒你各种信息。不过,有时候这个“...
安卓系统怎么锁定主屏,安卓系统... 你是不是也和我一样,手机里藏着不少小秘密,不想让别人轻易窥探呢?别急,今天就来教你怎么给安卓手机的主...
安卓系统激活提示谷歌,谷歌助你... 你刚刚入手了一台全新的安卓手机,是不是兴奋得手舞足蹈?不过,别急着高兴,激活手机之前,可别忘了谷歌的...
缤越导航安卓系统,智能出行新体... 你有没有发现,现在汽车导航系统越来越智能了?这不,缤越导航安卓系统就让我眼前一亮。想象坐在车里,手指...
安卓系统好的阅读软件,精选阅读... 你有没有发现,手机里装了那么多应用,阅读软件可是占据了我们日常使用时间的大头呢!安卓系统上的阅读软件...
统信安卓系统下载,下载与体验新... 你有没有想过,手机系统也能像换衣服一样随心所欲地换?没错,今天就要给你揭秘一个超级实用的秘密——统信...
华为新系统鸿蒙安卓,华为安卓融... 你知道吗?最近科技圈可是炸开了锅,华为的新操作系统鸿蒙系统,竟然和安卓系统来了个亲密接触!这可不是一...
安卓系统拍证件照,轻松搞定 你有没有发现,现在拍照已经成为我们生活中不可或缺的一部分?无论是记录生活点滴,还是办理各种证件,拍照...