第四周小结

这周我们主要学习了写脚本的简单语法,写了一些简单的脚本,下面就由我来简单介绍一下:

第一步使用文本编辑来创建脚本:第四周小结

创建好后在里面写想要运行的脚本即可,然后按Esc—wq退出保存即可。也可以按q不保存退出;q!不保存强制退出;wq!保存强制退出。

第二步运行脚本,给予执行权限,在命令行上指定脚本的相对路径和绝对路径

第四周小结

对了,当在脚本里输入内容时,要Ese—i,进入输入模式。

第四周小结

bash -n f1.sh:bash编写完脚本后我们可用:bashn 脚本名 (对脚本进行语法测试) ,没错会什么也不显示

bash -x f1.sh :显示脚本运行的过程

变量:

第四周小结

查看当前进程号

pstree:进程树

ps -ef :显示进程信息

第四周小结

echo $$:查看当前进程号

echo $PPID:查看当前的父进程

echo $SHLVL:查看当前第几级bash,  bash–echo $SHLVL进入子bash;exit,显示上一级bash,zhidao tuichu

 

本地变量:仅对当前SHELL有效,对子SHELL也无效

第四周小结

 

环境变量:对当前SHELL及其子SHELL均有效。

第四周小结

本地变量与环境变量的区别就是;本地变量对子shell无效,环境变量对子shell有效

 

如何查看是环境变量还是本地变量:

set:即显示本地变量又显示环境变量

env:只显示本地变量

unset s :删除变量s

.和source 只会在当前shell下执行文件,不会进入子shell

第四周小结

 

在赋值时“”时部完全转译

”完全转译

第四周小结

 

 

readonly name

declare -r name :设置只读变量

第四周小结

readonly -p :查看进程中所有的只读变量

位置变量:在脚本代码中调用通过命令行传递给脚本的参数
$1, $2, …:对应第1、第2等参数,shift [n]换位置
$0: 命令本身
$*: 传递给脚本的所有参数,全部参数合为一个字符串
$@: 传递给脚本的所有参数,每个参数为独立字符串
$#: 传递给脚本的参数的个数
$@ $* 只在被双引号包起来的时候才会有差异

第四周小结

 

bash中的算术运算:help let
+, -, *, /, %取模(取余), **(乘方)在bc当中乘方是^
实现算术运算:
(1) let var=算术表达式
(2) var=$[算术表达式]
(3) var=$((算术表达式))
(4) var=$(expr arg1 arg2 arg3 …)   乘法时要转译* ,即\*
(5) declare –i var = 数值
(6) echo ‘算术表达式’

第四周小结

第四周小结

 

第四周小结

bc里的乘方只能用^;2^3

let里的乘方用**;2**3

 

echo $[$RANDOM%50]显示的是0-50

第四周小结

 

 第四周小结

与:

真与真  真
真与假  假
假与真  假
假与假  假

只要有一个假则为假

短路与 前一个为假,则不再判断第二个值。

真或真 真
真或假 真
假或真 真
假或假 假

只要有一个真则为真

短路或,前一个为真,则不再判断第二个值
第四周小结

补充:ROOT权限:

root权限虽然很大,但在执行的时候文件上必须有执行权限,文件所属人,所属组,其他人必须要有一个执行权限,之后root才能-x出来,不然root也没办法,以为会默认把他当成普通文件,而普通文件本身就没办法执行,所以权限位有了x相当于脚本了,就可以查了。

今天先总结到这里吧,剩余没有总结完的,我课下在看看。

原创文章,作者:menger,如若转载,请注明出处:http://www.178linux.com/84018

(0)
mengermenger
上一篇 2017-08-06
下一篇 2017-08-06

相关推荐

  • 网络基础

    计算机网络     计算机网络,是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。 1、网络通信设备     网络通信设备种类繁多,且日新月异,网络通信设备通常由网络线缆、网卡、集线器、中继器、网桥、交换机、路由器等组成。 网桥(Bri…

    Linux干货 2016-12-16
  • Linux软件包管理及相关命令

    rpm命令,yum命令

    2018-03-12
  • n25_第一周作业

    1.描述计算机的组成及其功能。 主要分为五个部分: 1. 控制器(Control):是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。 2. 运算器(Datapath):运算器的功能是对数据进行各种算术运算和逻辑运算,即对数据进行加工处理。 3. 存储器(Memo…

    Linux干货 2016-12-01
  • Linux文件系统管理

    马哥教育网络班23期+第3周课程练习 Linux文件系统管理 由于第三周所学的只是比较零碎,知识量比较大,这篇博客主要讲述的是一些习题,包括怎样完成的练习的思路和截图等等。首先我们看第一个题目 1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。    [root@localhost]/media/P…

    Linux干货 2016-09-23
  • 企业实时同步方案—-Sersync介绍

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://nolinux.blog.51cto.com/4824967/1433109 Sersync 项目利用 Inotify 和 Rsync 技术实现对服务器数据实时同步的解决方案,其中 Inotify 用于监控 Sersync…

    Linux干货 2016-08-15
  • 用户和权限管理

    一、用户 Linux中用户是资源获取的标识符,资源分配,文件系统安全权限模型的核心要素之一。密码则是用户认证的凭证,用户信息和密码信息都存放在相应的文本文件中,密码信息在存放的过程用了一定的加密算法进行加密。   1.加密算法: 资源分派:    Authentication:认证(确认身份,也有可能好几个人一个身份) &nbs…

    Linux干货 2016-08-05