Centos内Shell脚本基础语法讲解及执行

这篇具有很好参考价值的文章主要介绍了Centos内Shell脚本基础语法讲解及执行。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、什么是Shell脚本

Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。

Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。

Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界Shell。

shell他就是一个脚本命令,当运行该脚本命令时,可以与Linux系统底层进行交互。

二、基本语法

#!/bin/bash

echo "Hello World !"

必须以#!/bin/bash开头

echo 输出语句

在虚拟机内创建my01.sh脚本文件(vi my01.sh)可直接创建并进入文件命令行模式

centos执行sh脚本,centos,linux,运维

执行脚本:./脚本文件名.sh

注意权限不足

centos执行sh脚本,centos,linux,运维

 分析rwx-什么含义

  •  r:读权限
  • w:写权限
  • x:执行权限
  • -:没权限

它们对应的分别是谁的权限

  1. rw-:创建该文件的用户具有的权限
  2. r--:创建该文件的用户所在组的其他用户
  3. r--:其他人具有的权限

修改对应权限

1)增加对应权限

chmod u+x| g+w | o+r +文件名

2)减少对应权限

chmod u-x| g-w | o-r  +文件名

centos执行sh脚本,centos,linux,运维 

简便分配权限

权限相对应的数字:

  • r====4
  • w====2
  • x====1
  • -====0

修改权限:

chmod 763 my01.sh

修改后的权限为:

u:---rwx       g:rw-      o: -wx

三、Shell变量

注意声明变量时:

变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:

  • 命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。
  • 中间不能有空格,可以使用下划线 _。
  • 不能使用标点符号。
  • 不能使用bash里的关键字(可用help命令查看保留关键字)。

在my01.sh文件中声明变量如下:

centos执行sh脚本,centos,linux,运维

centos执行sh脚本,centos,linux,运维

 四、Shell传递参数

当执行shell脚本时,可以传递参数。 在shell脚本中使用$n接受传递的参数。n:表示数字1-∞

centos执行sh脚本,centos,linux,运维

 为脚本设置权限并执行如下:

centos执行sh脚本,centos,linux,运维

五、Shell数组

数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似)。

与大部分编程语言类似,数组元素的下标由 0 开始。

注意:Shell 数组用括号来表示,元素用"空格"符号分割开,语法格式如下:

array_name=(value1 value2 ... valuen)

centos执行sh脚本,centos,linux,运维

 注意:如果直接引用数组名而没有使用下标默认下标0

执行my02.sh

centos执行sh脚本,centos,linux,运维

六、关联数组

可以理解为java中的map 

关联数组使用 declare 命令来声明,语法格式如下:

declare -A array_name=([k]=v [k]=v [k]=v)

 访问关联数组元素可以使用指定的键:array_name["index"]

 下面访问关联数组的元素:

centos执行sh脚本,centos,linux,运维

centos执行sh脚本,centos,linux,运维 

* :表示数组的所有元素

​​​七、Shell基本运算符

具体参考:Shell 基本运算符 | 菜鸟教程 (runoob.com)

 文章来源地址https://www.toymoban.com/news/detail-753326.html

到了这里,关于Centos内Shell脚本基础语法讲解及执行的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • CentOS系统环境搭建(八)——CentOS7开机自动执行脚本(以MySQL为例)

    以MySQL为例子 /srv下新建system文件夹 新建脚本run.sh run.sh内容如下 /dev/null 21 将所有输出重定向到空设备,即不输出日志。最后的 符号将命令放到后台运行。

    2024年02月12日
    浏览(60)
  • 【Linux】Centos7 的 Systemctl 与 创建系统服务 (shell脚本)

    systemctl 命令 systemctl 状态 systemctl 运行级别 自建服务 1、服务存放路径 2、编写一个系统服务 Unit: Service: 举例 :wq退出 syscmd.sh脚本内容 方式一: 命令: java -jar xxxx.jar 方式二: 命令:java -jar xxxx.jar 方式三: 命令:nohup java -jar xxxx.jar 方式四: 命令:nohup java -jar xxxx.jar /

    2024年02月14日
    浏览(53)
  • 在Centos7中利用Shell脚本:实现MySQL的数据备份

    目录 自动化备份MySQL 一.备份数据库脚本 1.创建备份目录   2.创建脚本文件 3.新建配置文件(连接数据库的配置文件) 4.给文件权限(mysql_backup.sh)      ​编辑           5.执行命令 (mysql_backup.sh)        ​编辑        二.数据库通过备份恢复    1.创建脚本文件 2.增加文件

    2024年02月03日
    浏览(42)
  • linux 基于 RHEL 的 Linux 发行版(例如 CentOS 和 Fedora)上用 shell 脚本安装 elasticsearch 指南

    使用基于 RHEL 的 Linux 发行版(例如 CentOS 和 Fedora)操作系统。 拥有root权限或者sudo权限。 1.首先,创建一个名为install_elasticsearch.sh的文件,并打开该文件以编辑 2.然后,将以下内容粘贴到install_elasticsearch.sh文件中 3.保存并关闭文件 4.运行安装脚本 5.等待脚本执行完成,这可能

    2024年02月01日
    浏览(45)
  • 十八、Jenkins(centos7)执行接口自动化测试脚本,飞书推送测试结果消息

    https://gitee.com/HP_mojin/pytest_allure_request_20220811 创建虚拟环境:https://blog.csdn.net/qq_42846555/article/details/131579627

    2024年02月13日
    浏览(51)
  • sh与bash:Shell脚本中的微妙差异

    在Unix和Linux的世界中,Shell是用户与操作系统交互的主要界面。Shell提供了命令行界面,使得用户能够执行各种命令和操作。在众多的Shell中,sh和bash是最常见且使用最广泛的两种。尽管它们在很多方面相似,但在功能、特性和语法上,它们之间仍存在一些微妙的差异。 一、起

    2024年04月15日
    浏览(54)
  • 使用java执行bat、sh脚本文件

    在工作中,由于需求,需要完成让java去调用.bat文件和.sh文件的操作,接下来开始编码 此处用到了糊涂工具类 maven如下 由此代码来执行bat或sh脚本文件(PS:糊涂工具包用不用无所谓,只是用来判断是否为windows系统的)

    2024年02月12日
    浏览(51)
  • nginx配置sh脚本远程执行一键安装

    本地多机重复操作某些shell指令,分步执行,很耗费时间, 需要远程一键部署,傻瓜化运维,更为通用安装。 即参考docker通用安装 总体思路: 1、容器化nginx部署; 2、准备好要访问的目录,这里是一个文件夹,映射到nginx里面; 3、修改nginx配置,默认映射到2中的目录; 4、

    2024年02月01日
    浏览(47)
  • 在当前bash(sh)中执行脚本和注册函数

    在研究《管理Python虚拟环境的脚本》时,我们使用了source指令而没有使用sh或者bash来执行脚本,就是因为source指令可以让脚本在当前bash(sh)中执行;而sh或者bash则会新启动一个bash来执行。 我们可以通过下面这个脚本做测试 processInfo: 45322 bash 40883 bash 当前bash的进程ID是40883,新

    2024年01月20日
    浏览(56)
  • Linux执行sh脚本文件提示Permission denied

    在Linux终端运行脚本文件时,提示Permission denied,意思是权限不足。 解决方法:检查文件权限,权限不足时,赋予执行权限 使用chmod更改文件权限:      -R:是级联应用到目录里的所有子目录和文件      777:是所有用户都拥有最高权限

    2024年02月16日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包