首页
学习
活动
专区
圈层
工具
发布

使用bash编写Linux shell脚本--复合命令

除了最简单的脚本,你很少想要执行每一个命令。执行一组命令或者重复执行一组命令若干次比执行单个命令更加有助。复合命令是将命令封装在一组其他命令中。...命令一起使用,它可以根据命令返回的状态码进行执行相关的任务。...2>& fi 在 if 命令中嵌入复杂的命令会使脚本语言难读且难以调试。你应该避免这样做。在这个例子中,如果 rm 命令运行失败,则它先显示自己的提示信息,接着显示脚本中的信息。...和 test 命令可以使用一对方括号来表示更容易阅读一样, let 命令也有更容易阅读的表示,使用双括号。...在大括号中的命令需要分号进行分割。 命令也可以使用子外壳进行分组,子外壳将在第九章进行讨论。 report.bash :报表格式化 report.bash 是一个用来给销售数字建立报表的脚本程序。

2.8K101
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    linux中编写在多台机器上同时执行一条命令的脚本

    我们经常需要在集群中使用jps命令查看进程状态,而又懒得去每一台机器上分别执行jps命令,这时候就需要一个脚本文件来帮我们做这样的事情! 编写一个名为xcall的脚本文件吧! #!.../bin/bash #在集群的所有机器上批量执行同一条命令 if(($#==0)) then echo 请输入您要操作的命令!...exit fi echo 要执行的命令是$* #循环执行此命令 for((i=101;i<=103;i++)) do echo ---------------------hadoop$i-----...由于输入的命令可能会携带参数,比如 ls -al,所以这里用到取变量的是$*,把输入的命令包括参数都当作整体的变量去执行。...最后别忘了把xcall文件放进家目录下的bin目录,如果没有就新建一个bin目录,因为这目录是在全局环境变量中,放进去后无论在哪个目录下都可以执行这个脚本文件

    2.2K40

    如何编写一个自动关闭某个进程的脚本,并使用cron定时执行?

    为了避免这种情况的发生,我们可以编写一个自动关闭某个进程的脚本。本文将介绍如何编写一个自动关闭某个进程的脚本,并使用cron定时执行。在本文中,我们将以关闭Java进程为例进行讲解。...编写关闭进程脚本首先,我们需要编写一个用于关闭进程的脚本。我们可以使用kill命令来关闭指定进程。为了实现自动化,我们需要知道进程的PID(进程ID)。我们可以使用pgrep命令来查找进程的PID。...fi以上脚本中,首先使用pgrep命令查找Java进程的PID,如果没有找到,则输出提示信息;否则,使用kill命令关闭Java进程,并输出成功信息。...设置定时任务一旦我们编写了自动关闭进程的脚本,就可以在Linux系统中设置一个定时任务来定期执行这个脚本。Linux系统提供了一个非常强大的工具,cron,来实现这个功能。...总结在本文中,我们介绍了如何编写一个自动关闭某个进程的脚本,并使用cron定时执行。这种方法可以帮助我们避免由于进程占用过多资源导致服务器性能下降的情况发生。

    2.1K40

    从升级服务器系统聊聊编写脚本

    本文链接: https://soulteary.com/2020/02/14/scripting-from-the-upgrade-server-system.html ----- 从升级服务器系统聊聊编写脚本...如果你的服务器数量不多,那么登陆每一台机器,然后执行命令显然效率并不低,但是如果需要维护的机器从几台变更为几十台后,你就不得不编写一些简单的脚本了。 本文就来聊聊编写简单的升级脚本。...私有仓库 如果团队有私有仓库,愿意在项目中对未做更改的镜像使用私有名称而非官方名称,或者愿意将官方的仓库打私有标签存入仓库的话。...升级系统其他软件 常见系统漏洞一般使用下面的万金油命令就能解决了。...完整的示例 将上面的脚本片段组合在一起,将得到一个接近真实场景使用的升级脚本(示例未使用云服务商软件源): #!

    1.4K00

    从升级服务器系统聊聊编写脚本

    本文链接: https://soulteary.com/2020/02/14/scripting-from-the-upgrade-server-system.html ---- 从升级服务器系统聊聊编写脚本...如果你的服务器数量不多,那么登陆每一台机器,然后执行命令显然效率并不低,但是如果需要维护的机器从几台变更为几十台后,你就不得不编写一些简单的脚本了。 本文就来聊聊编写简单的升级脚本。...私有仓库 如果团队有私有仓库,愿意在项目中对未做更改的镜像使用私有名称而非官方名称,或者愿意将官方的仓库打私有标签存入仓库的话。...升级系统其他软件 常见系统漏洞一般使用下面的万金油命令就能解决了。...完整的示例 将上面的脚本片段组合在一起,将得到一个接近真实场景使用的升级脚本(示例未使用云服务商软件源): #!

    1K10

    docker系列:docker-compose用法详解

    可以使用YML文件来配置应用程序需要的所有服务,然后使用docker-compose运行命令,就可以解析YML文件配置创建并启动文件中配置的所有docker服务。...可以把docker-compose理解为一个自动化运维命令的打包脚本集合,只要脚本编写的没问题,就可以执行一条命令启动所关联的所有服务。...通过docker-compose可以提前编写好脚本,等上线部署的时候几分钟就可以搞定了。比起传统的项目部署方式效率大大提升了。还可以达到一次编写脚本,达到多次部署的效果。...开源项目推广:开源项目作者可以编写docker-compose脚本,让使用者可以快速搭建环境、也可以避免因为硬件环境造成项目各种报错的情况。也方便了开源项目的推广。...5、常用命令下面给大家整理常用的docker-compose命令注意:大部分的compose命令都需要到docker-compose.yml文件所在的目录下才能执行docker-compose -h

    8K31

    未授权访问漏洞总结

    2.漏洞检测 使用vulhub搭建漏洞环境用于测试演示 cd /vulhub/couchdb/CVE-2017-12636 docker-compose up -d 未授权访问测试命令 curl 192.168.126.130...1.漏洞简介 默认情况下Jenkins面板中用户可以选择执行脚本界面来操作一些系统层命令,攻击者可通过未授权访问漏洞或者暴力破解用户密码等进脚本执行界面从而获取服务器权限。...2.漏洞检测 使用vulhub搭建漏洞演示环境 cd /vulhub/rsync/common docker-compose build docker-compose up -d 使用Rsync命令即可进行检测...Redis未授权访问在4.x/5.0.5以前版本下,可以使用master/slave模式加载远程模块,通过动态链接库的方式执行任意命令。...使用这两个漏洞组成的利用链,可通过一个GET请求在远程Weblogic服务器上以未授权的任意用户身份执行命令。

    10.1K111

    直接用 Docker 来启动你的 Python 项目

    python your_script.py 是容器启动后执行的命令,用于运行你的 Python 脚本。...2、运行以下命令启动服务: docker-compose up -d 这会根据 docker-compose.yml 文件中的配置启动一个容器,并运行指定的 Python 脚本。...你可能会使用宿主机代理,指定容器的时区,对外暴露端口等,不希望每次都 pip install,那么可以这样编写 docker-compose.yml : version: '3.8' services...docker-compose exec 在服务的容器内执行命令。例如,docker-compose exec web bash 会在名为 web 的服务的容器中启动 bash 会话。...简单来说,这些方法通过使用官方 Python 镜像并将你的项目目录挂载到容器内部,允许你在容器环境中执行 Python 脚本。非常方便。 如果有帮助,欢迎点赞关注、转发、支持。

    2.5K10

    Docker学习笔记之编写 Docker Compose 项目

    第四类是工具命令目录,这里指 bin 这个目录。我们在这里存放一些自己编写的命令脚本,我们通过这些脚本可以更简洁地操作整个项目。...$@ 是 shell 脚本获取参数的符号,这里获得的是所有传入脚本的参数,而 exec 是执行命令,直接执行这些参数。 如果直接看这条命令大家会有些疑惑,参数怎么拿来执行,这不是有问题么?...所以,这里脚本最终执行的,是 CMD 中所定义的命令。...0x03 编写辅助脚本 我们知道,虽然 Docker Compose 简化了许多操作流程,但我们还是需要使用 docker-compose 命令来管理项目。...我编写了一个 compose 脚本,用来简化 docker-compose 的操作命令。 #!

    1.7K50

    weblogic漏洞复现

    XMLDecoder来解析用户传入的XML数据,在解析的过程中出现反序列化漏洞,导致可执行任意命令漏洞环境https://github.com/vulhub/vulhub启动环境docker-compose...)简介该漏洞通过t3协议触发,可导致未授权的用户在远程服务器执行任意命令,T3协议简单来说就是快速传输协议漏洞环境https://github.com/vulhub/vulhub启动环境docker-compose...,但是此漏洞前提是需要知道后台管理员密码CVE-2020-14882(未授权+RCE)简介此次复现是两个漏洞组合导致远程命令执行,分别是CVE-2020-14882和CVE-2020-14883。...CVE-2020-14882允许未授权的用户绕过管理控制台的权限验证访问后台,CVE-2020-14883允许后台任意用户通过HTTP协议执行任意命令。...使用这两个漏洞组成的利用链,可通过一个GET请求在远程Weblogic服务器上以未授权的任意用户身份执行命令。

    44110

    docker+Jenkins+nginx实现前端自动部署详细教程

    --help #查看命令帮助 image-20211124160831155 安装docker-compose docker-compose 是用于定义和运行多容器 Docker 应用程序的工具...通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。...shell 编写shell脚本 node -v #查看node,npm 版本 npm -v npm i #npm安装项目所需依赖 npm install hexo-cli -g #npm安装hexo.../public #压缩生成的静态文件目录 以上shell脚本就是关联的git仓库有了推送事件之后触发的构建脚本,也是我的hexo博客项目所需的构建过程,同学们可以根据需要,编写自己项目的构建脚本 构建后操作...至于为什么是docker,可能也是对Linux命令行的操作方式了解较少,不想因为自己操作失误最终让整个环境乱遭糟,到最终不可控。使用docker不仅能快速实施,而且能隔离环境,避免环境依赖。

    2.9K21

    docker-compose容器编排部署

    2、应用场景 3、docker-compose部署SpringBoot项目 3.1 编写Dockfile 3.2 编写docker-compose.yaml 3.3 修改工程配置 3.4 将相关文件上传到服务器...,很麻烦,现在使用docker-compose一行命令解决多个容器的启停。...3、docker-compose部署SpringBoot项目 3.1 编写Dockfile # 基础镜像使用java FROM java:8 # 作者 MAINTAINER xtt # VOLUME 指定临时文件目录为...项目打包:   将文件上传到服务器,上传之后如下所示: 3.5 执行docker-compose up   运行如下命令: docker-compose up -d   查看正在运行的容器:docker...关闭容器的命令: docker-compose stop   再次开启容器:docker-compose up -d    可以看到,很方便,一个命令实现多个容器的启停,不像原来使用docker那样一个一个关闭和开启容器了

    1.7K20

    使用 docker-compose 替代 docker run

    使用 docker-compose 替代 docker run 使用 docker run 运行镜像 要运行一个 docker 镜像, 通常都是使用 docker run 命令, 在运行的镜像的时候,...geoserver , db 服务器使用的是 postgis , web 服务器依赖 db 服务器, 必须先启动 db 服务器, 再启动 web 服务器, 这就需要编写复杂的 shell 脚本, 需要的镜像越多...使用 docker-compose 编排镜像 docker 提供了一个命令行工具 docker-compose 帮助完成镜像的编排, 要使用 docker-compose , 需要先编写一个 docker-compose.yml...要运行这个程序, 只要在这个目录下执行 docker-compose up -d 命令, 就会按照上面的配置启动两个容器的实例: $ docker-compose up -d Creating network...docker run 命令更加方便, 因此推荐在测试环境或者生产环境中使用。

    3K20

    Docker 从入门到进阶七:DockerFile 与 Docker Compose

    下载安装 compose compose 使用步骤 compose 常用命令 Dockerfile Dockerfile 是什么 Dockerfile 是用来 构建 Docker 镜像 的文本文件,是由一条条构建镜像所需的指令和参数构成的脚本...RUN:用于执行后面跟着的命令行命令。 RUN 命令行命令> # 命令行命令> 等同于,在终端操作的 shell 命令。...,如果有多个则以最后一个为准,也可以为ENTRYPOINT提供参数 VOLUME- 定义数据卷,如果没有定义则使用默认 USER- 指定后续执行的用户组和用户 WORKDIR...使用步骤 ·编写Dockerfile定义各个微服务应用并构建出对应的镜像文件 ·使用 docker-compose.yml 定义一个完整业务单元,安排好整体应用中的各个容器服务。...·最后,执行docker-compose up命令 来启动并运行整个应用程序,完成一键部署上线 关于 yml 文件教程:待补全。

    1.1K10
    领券