Shell脚本的规则与练习题_shell:登录名和密码可以用文本文件存储,默认已有一个登录名admin,其密码为123456,-程序员宅基地

技术标签: shell  

1:变量的规则
定义变量规则:变量名=值
shell定义变量的规则:
1:等号两边不能有空格
2:定义特殊的变量需要用单引号或者双引号结合
3:定义linux命令需要用反单引号
区分单引号和双引号的不同和相同点
2:脚本的命名格式
脚本名称使用.sh结尾
3:脚本的起始行格式
第一行必须写# !/bin/bash
4:脚本输入输出格式
1:输入语句用:read
2:Shell输出值:echo $变量名

5: 脚本的调用
方式1:./脚本名.sh(权限的问题)
方式2: sh 脚本名.sh
比较运算符和逻辑运算符
(1)比较运算符(数字)
-eq 比较是否相等
-ne 比较不相等
-gt 比较大于
-ge 比较大于等于
-lt 比较小于
-le 比较小于等于
2)比较运算符(字符串)
== 比较是否相等
!= 比较不相等
加一操作:((i++)) ((i+=1))
加n操作:
s=dollar(($ s+$ i)) s=$ [$ s+ $ i] ((s=$ s+$i))
(3)逻辑运算符
-a 逻辑与 -o逻辑或 !逻辑非

if语句
格式:
if [ 条件 ]
then
语句
else
语句
fi

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Yan_1227/article/details/112470671

智能推荐

下面是一个python函数、哪个说法不正确_2017秋python语言程序设计(北京信息科技大学)答案...-程序员宅基地

文章浏览阅读594次。【单选题】以下可以终结一个循环的执行的语句是【单选题】设计的组件之间的依赖关系图被称为:【单选题】类方法中定义了四个参数,这种情况下实际上有多少参数:【判断题】螺旋式开发可以简化项目管理,能够适应需求经常的变化。【判断题】一个try语句只能配一个except语句。【单选题】递归函数有什么特点?【判断题】单元测试是将程序分离出来独立单元进行测试。【判断题】决策结构问题通常只有一种方案【单选题】以下不..._文件后缀名采用.pyw而不是.py的目的是为了绘制窗口

从预置数据中心迁移至IDC数据中心的七大关键因素-程序员宅基地

文章浏览阅读102次。在数据中心多年的发展进程中,发展已经不可避免地来到拐点(转折点),是购买数据中心还是租赁数据中心?该如何选择呢?业界人士不得不审慎思考、分析利弊,考虑是自建数据中心,自己维护,还是将其外包。(备注:拐点(转折点),又称反曲点,在数学上指改变曲线向上或向下方向的点,直观地说拐点是使切线穿越曲线的点(即曲线的凹凸分界点)。若该曲线图形的函数在拐点有二阶导数..._idc选址事项

Linux播放组播视频流,linux下播放组播流出现setsockopt:No such device错误-程序员宅基地

文章浏览阅读662次。在linux下播放组播流出现setsockopt:No such device错误是因为多播IP没有add路由表里面可以采用如下命令完成:root@android:/ # busybox route add -net 239.1.1.0 netmask 239.1.1.0 dev eth0busybox route add -net 239.1.1.0 netmask 239.1.1.0 dev ..._bogus netmask

XSS存储型攻击_xss存储型攻击代码-程序员宅基地

文章浏览阅读928次。LOW服务器端核心代码<?php if( isset( $_POST[ 'btnSign' ] ) ) { // Get input $message = trim( $_POST[ 'mtxMessage' ] ); $name = trim( $_POST[ 'txtName' ] ); // Sanitize message inpu..._xss存储型攻击代码

Linux : apt,apt-get,dpkg各种命令参数学习_sudo apt-get --purge remove package_name-程序员宅基地

文章浏览阅读315次。安装dpkg是用来安装.deb文件,但不会解决模块的依赖关系,且不会关心ubuntu的软件仓库内的软件,可以用于安装本地的deb文件sudo dpkg -i xxx.deb (需要本地有下载好的deb文件)apt会解决和安装模块的依赖问题,并会咨询软件仓库, 但不会安装本地的deb文件, apt是建立在dpkg之上的软件管理工具sudo apt install packagename卸载sudo apt-get remove packagename 只删除软件,不删除配置文件sudo apt-_sudo apt-get --purge remove package_name

GTest使用教程(二)-- 断言和宏测试_gtest failed的case输出什么-程序员宅基地

文章浏览阅读1.3w次,点赞10次,收藏66次。上一讲介绍了GTest的安装和如何在项目中使用GTest,这一讲主要介绍GTest的断言机制和宏测试断言GTest采用一系列的断言(assertion)来进行代码测试,这些宏有点类似于函数调用。当断言失败时Google Test将会打印出assertion时的源文件和出错行的位置,以及附加的失败信息。用户可以直接通过“<<”在这些断言宏后面跟上自己希望在断言命中时的输出信息。..._gtest failed的case输出什么

随便推点

DC NXT TOPO flow (1)SPG flow 基础_dcnxt-程序员宅基地

文章浏览阅读6.8k次,点赞9次,收藏81次。什么是物理综合 physical synthesis物理综合就是将RTL综合为coarse-placement的网表;这需要让DC工作在TOPO mode' 并使用compile_ultra 命令;需要一个布局文件,一般是ICC生成的;(icc ii design planning);DC NTX topological mode 是支持物理综合的DC NTX in topological mode 使用virtual routing 去估计net的长度; virtual routing ._dcnxt

linux 网络编程_linux网络编程-程序员宅基地

文章浏览阅读2.6k次,点赞3次,收藏25次。linux系统编程-网络编程_linux网络编程

Java进阶之hibernate中cascade与inverse_java面试 cascade和inverse-程序员宅基地

文章浏览阅读1.7k次。我们都知道的是cascade强调的是操作关联对象,inverse强调的是外键的维护权。在我们设置了级联操作后,在保存的时候就会级联保存另外的级联对象,而设置了inverse之后,如果两个对象之间有双向维护关系,就会在设置的一方放弃外键维护权,那它们两个共同使用的时候会产生什么结果呢? 我们可以通过一个简单的案例测试一下,就能得到结果,案例中customer与linkman为一对多关_java面试 cascade和inverse

笔记:mysql删除表内某条纪录的auto_increment属性sql语句。_mysql删除auto_increment-程序员宅基地

文章浏览阅读2.9k次。假定s_user_info表内主键uid设置了auto_increment属性,且该主键的type为int,如果想删除auto_increment属性,那么直接修改下type就ok了。sql语句:alter table s_user_info modify uid int(11);执行后再次desc s_user_info;下查看表字段描述会发现uid的auto_increment属性_mysql删除auto_increment

7、队列的基本操作(java数据结构)_本题重新定义队列出队的操作:队首出队的数字重新在队尾入队。 例:队列中有1 2 3三-程序员宅基地

文章浏览阅读4k次。队列的基本操作本题重新定义队列出队的操作:队首出队的数字重新在队尾入队。例:队列中有1 2 3三个数字,现要求队首出队,则1从队首出队,同时1从队尾入队,队列变成2 3 1。 入队的顺序为1,2,3,4…n,同时给一个二进制字符串,1代表出队操作,0代表入队操作。输入格式:在第一行有两个数字n,m(n<=100,n<m),其中n为入队的数字个数,m代表操作数。接下来m行,每行一个数字,1或者0,代表不同的操作。输出格式:输出操作后队列的每个数字,数字间以空格分隔,最后一个数字后没有空格_本题重新定义队列出队的操作:队首出队的数字重新在队尾入队。 例:队列中有1 2 3三

【matlab】 与cell相关的转换函数_cellmat-程序员宅基地

文章浏览阅读1.1k次。**【matlab】 与cell相关的转换函数**1、cell2mat:将cell转换为mat的char型2、str2num:将mat从char转换为double型3、cellstr:将char转cell4、num2str:将double转char5、num2cell:将double直接转cell_cellmat

推荐文章

热门文章

相关标签