Linux之shell命令_linux shell命令_梦幻小CW的博客-程序员秘密

技术标签: Linux  linux  

1、shell入门

在计算机科学中,shell就是一个命令解释器

shell是位于操作系统和应用程序之间,是他们二者最主要的接口。

shell负责把应用程序的输入命令信息解释给操作系统,将操作系统指令处理后的结果解释给应用程序。

一句话,shell就是在操作系统和应用程序之间的一个命令翻译工具

2、shell的使用方式

手工方式:

手工敲击键盘,直接输入命令,按Enter后。执行命令,显示命令执行的结果.重点:逐行输入命令、逐行进行确认执行

脚本方式:

我们把手工执行的命令,写到一个文件中,然后运行这个文件,达到执行命令的效果。这个文件就叫做脚本文件。

3、编写第一个shell

1、新建一个文件后缀名为sh

2、书写内容

3、执行

4、shell注释

单行注释

多行注释

5、shell定义变量.

普通变量

方式一:        变量名=变量值         变虽值必须是一个整体,中间没有特殊字符

方式二:        变量名='变量值'        单引号中的的内容,原样赋值

方式三:        变量名="变量值"        如果双引号里面有其他变量,会把变是的结果进行拼接,然后赋值。

习惯:

数字不加引号,其他默认加双引号

命令变量

方式一:变量名=`命令`        注意:`是反引号

方式二:变量名=$(命令)

6、shell使用变量.

使用变量

        方式一:$变量名         非标准写法,图省事

        方式二:$"变量名"         非标准写法,图省事

        方式三:${变量名}        在双引号里面要使用变量的值

        方式四:"${变量名}"         标准使用方式

只读变量        readonly 变量名

删除变量        unset 变量名

7、shell数组

8、算术运算符

注意点:

1,原生的bash不支持简单的数学运算。可以通过其他命令实现.expr

2,表达式和运算符之间要有空格

3,完整的表达式要被反引号包含。

 举例:

`expr 2 + 2 `

8、字符串运算符

#! /bin/bash
#字符串运算
a="aaa"
b="bbb"
c=""

#判断两个字符串是否相等
#$?可以获取上一条语句的执行结果
[ "${a}" = "${b}" ]
echo "判断两个字符串是否相等,0为真,1为假: $?"

[ -z "${c}" ]
echo "检测字符申长度是否为0,0为真,1为假: $?"

[ -n "${c}" ]
echo "检测字符申长度是否为0,0为真,1为假: $?"


[ $"$c"]
echo "检测字符用是否为空,0为真,1为假: $?"

 9、shell关系运算符

 注意点

只能比较数据,不支持字符串,除非字符串的值是数字

10、shell布尔运算符

 

 ​​​​​​​

 11、shell逻辑运算符

 

12、shell判断语句

 结果a小于b

13、shell选择语句

14、shell循环语句

for

where

 

 

 

 

 

 

 

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

智能推荐

目标检测算法之YOLO运行流程_yolo实现步骤_花花少年的博客-程序员秘密

参考博客目标检测算法之YOLO一、YOLO的概念YOLO这个名字完整体现了算法的精髓:You Only Look Once它与RCNN系列算法不同。RCNN系列算法(RCNN/Fast RCNN/Faster RCNN)是two-stage模式,即经过了两次检测,第一次是获取proposal box,第二次才是图像预测。YOLO是one-stage模式,使用统一的网络来完成物体识别...

BUUCTF--EasyBypass_Uzero.的博客-程序员秘密

题目给出代码 <?phphighlight_file(__FILE__);$comm1 = $_GET['comm1'];$comm2 = $_GET['comm2'];if(preg_match("/\'|\`|\\|\*|\n|\t|\xA0|\r|\{|\}|\(|\)|<|\&[^\d]|@|\||tail|bin|less|more|string|nl|pwd|cat|sh|flag|find|ls|grep|echo|w/is", $comm1))

Hadoop大数据生态:Hive自定义设置连接用户名和密码_cdh hive 密码_尘光掠影的博客-程序员秘密

简介当hive客户端搭建起来之后,应用项目远程连接hive需要设置用户名和密码; 由于hive默认的用户名和密码都是空的,所以需要我们自定义用户名和密码;实践首先,需要先用java开发工具打包一个jar工具类,用于解析用户名和密码,可直接下载这个jar工具包:hiveAuth.jar; 也可以自行通过编写代码进行打jar包,代码如下:package org.apache.hado...

jssdk信息验证失败_微信公众号开发——微信JSSDK使用_weixin_39837105的博客-程序员秘密

微信JSSDK介绍官方文档地址:概述 | 微信开放文档​links.jianshu.com因为微信公众号的开通对于大部分开发人员来说还是一个稍高的门槛,所以,微信搞了一个微信测试号,开发人员使用微信扫一下就可以获取。测试号貌似是全接口调用的哦!不用担心没有权限调用。申请入口:微信公众平台​links.jianshu.com开发配置所有配置参考下图配置即可在配置时,需要注意几点接口配置信息中,要配合...

软考路:2021年系统架构设计师之心得_李迟的博客-程序员秘密

前几天查成绩,通过了考试,本文写一下备考过程及一些心得,权作记录。

全志Android6.0编译Ubuntu16.04环境搭建_lib32readline-gplv2-dev 没有可安装候选_ttdever的博客-程序员秘密

1.【配置jdk1.7】Android6.0需要OpenJDK7,安装OpenJDK7用如下命令。sudo add-apt-repository ppa:openjdk-r/ppasudo apt-get updatesudo apt-get install openjdk-7-jdk(1).配置环境变量,在可以直接在/etc/profile下或者/etc/environm...

随便推点

leetcode 735[medium]---Asteroid Collision_leetcode正数在前负数在后_手掌大的苍穹的博客-程序员秘密

难度:mediumWe are given an array asteroids of integers representing asteroids in a row.For each asteroid, the absolute value represents its size, and the sign represents its direction (posit

068_《Delphi7控件实用程序设计100例》_iteye_365的博客-程序员秘密

《Delphi7控件实用程序设计100例》Delphi 教程 系列书籍 (068) 《Delphi7控件实用程序设计100例》 网友(邦)整理 EMail: [email protected]下载地址:Pdf作者: 段兴 宋雷 张敬韶 孙丽娜丛书名: 程序设计实例丛书 出版社:人民邮电出版社 ISBN:7115112975 上架时间:2003-7-21 出...

Vue3.0由单页面应用改为多页面开发_吃葡萄,要吐葡萄皮的博客-程序员秘密

Vue3.0由单页面应用改为多页面开发一、使用vue cli创建一个单页面应用程序1、在命令行窗口敲如下图命令,输入完成敲回车会自动打开一个vue的管理界面2、在管理界面中创建项目选择好配置开始创建。具体可以参考vue cli的官方文档:https://cli.vuejs.org/zh/guide/creating-a-project.html#vue-create二、导入项目项目开始配置...

【转】Java基础笔记 – 枚举类型的使用介绍和静态导入--不错_weixin_30439067的博客-程序员秘密

原文网址:http://www.itzhai.com/java-based-notes-introduction-and-use-of-an-enumeration-type-static-import.html#1.2、values方法的使用:Java基础笔记 – 枚举类型的使用介绍和静态导入本文由arthinking发表于4年前|Java基础|暂无评论|被围观 8,3...

疯狂!丈母娘让我用 Python 算领证吉日!_平静愉悦的博客-程序员秘密

决定和女朋友去领证了,心里那个激动啊,无以言表!我们俩都是比较随性的,准备拿到户口本就去领。可谁知女朋友回家拿户口本的时候,跟我说:最近可能领不了了!what?到手的鸭子要飞了?我心里咯噔一下。询问后才知道,丈母娘说领证可以,但是要选择一个良辰吉日,要求有俩:一个是看万年历,选取宜“婚假”的日子;一个是需要选择农历的双数日期,双数代表吉利。听了之后,我拍着胸脯说没问题。接着准备去翻万年历了,可不想这时候女朋友来一句:你个呆子,还准备一天天地去翻啊?写个小程序不就1秒钟的事吗?我拍了拍..

小项目的经验积累_秃头也打码的博客-程序员秘密

1.在用eclipse对MySQL数据库进行操作时,用String储存sql操作语句经常会出现各种问题,可以将需要的操作先用数据库操作一遍,再翻译为代码。下面列出一个很难发现的问题:String sql2="update book_information set 数量="+number.toString()+&qu