首先,一键启动的shell脚本是这样的 #! /bin/bash case $1 in "start"){ for i in node01 node02 node03 do ssh $i "/opt/module/zookeeper-3.4.5-cdh5.14.0/bin/zkServer.sh start" done };; "stop"){ for i in node01 node02 node03 do ssh $i "/opt/…
shell脚本一键创建虚拟机 代码如下: #!/bin/bashname=$1 #把位置变量$1重新定义为name(创建虚拟机的名字)path1=/var/lib/libvirt/images/ #img存放路径path2=/etc/libvirt/qemu/ #xml文件存放路径function createkvm { #将创建虚拟机的命令定义为createkvm函数 qemu-img create -f qcow2 -b ${path1}jrjs.img ${path1}${name}.im…
#!/bin/bash #auto make install httpd #by authors baker95935 #httpd define path variable H_FILES=httpd-.tar.bz2 H_FILES_DIR=httpd- H_URL=http://mirrors.shuosc.org/apache/httpd/ H_PREFIX=/usr/local/apache2/ if [ -Z "$1" ];then echo -e "\033[3…
以前更新网站程序都是手动噼里啪啦敲代码,即麻烦又慢,还神经紧张.终于忍不住写个shell脚本.   cd /usr/local/tomcat7/apache-tomcat-9.0.0.M4/ bin/shutdown.sh kill -9 $(pgrep -f tomcat) rm -rf webapps/* mv ROOT.war webapps bin/startup.sh…
[转载请注明]: 原文出处:https://www.cnblogs.com/jstarseven/p/11399251.html    作者:jstarseven    码字挺辛苦的.....  说明:java程序部署是简单的,尤其是springboot普遍化使用以后,很多应用均采用jar方式部署 启动方式: 1.前台启动> java -jar *.jar 2.后台启动> nohup java -jar *.jar >nohup.out 2>&1 &    但是每次…
有多少次,你运行./script.sh,然后输出一些东西,但却不知道它刚刚都做了些什么.这是一种很糟糕的脚本用户体验.我将在这篇文章中介绍如何写出具有良好开发者体验的 shell 脚本. 产品的最终用户通常不懂技术,所以不管你怎么折腾产品代码都无所谓.但脚本代码不一样,它们是开发人员写给开发人员的. 这样会导致一些问题: 混乱的脚本——我知道,我们都是工程师,读得懂代码,但即使这样,也请为我们这些对 Shell 脚本不是很熟练的人考虑一下(我们在写代码时也会为你们考虑的). 满屏的日志和错误输出…
今天,大数据部老大交给我一项任务——抓取股票历史数据.于是乎,我自行在网上找了一下,发现wget真真是一个非常强大的linux下载工具.我已经被深深震撼到了.下面叙述今天的一些过程,还是比较坎坷的. 首先,我利用公司现在存在的股票数据,使用hive查询所有的股票代码并导入本地: hive -e "use stock;select distinct secucode from t_stock_tick_shsz where type='sz';" >> sz_secucode…
1问题:Linux和windows下的回车换行符不兼容的问题 [root@node-01 script]# sh start_zk.sh art_zk.sh: line 3: syntax error near unexpected token `do'tart_zk.sh: line 3: `do 2.展示信息: 此处我贴出了源码;大家可以试一试: #!/bin/shfor host in node-01 node-02 node-03do ssh $host "source /etc/pro…
!!!该系列使用三台虚拟机搭建一个完整的spark集群,集群环境如下: virtualBox5.2.Ubuntu14.04.securecrt7.3.6_x64英文版(连接虚拟机) jdk1.7.0.hadoop2.6.5.zookeeper3.4.5.Scala2.12.6.kafka_2.9.2-0.8.1.park1.3.1-bin-hadoop2.6 第一篇:准备三台虚拟机环境,配置静态IP,ssh免密码登录 第二篇:搭建hadoop集群 第三篇:搭建zookeeper集群 第四篇:搭建…
#!/bin/bash ip_mod=$ mask_mod=$ gw_mod=$ dns_mod=$ hostname_mod=$ hosts=/etc/hosts ifcfg=/etc/sysconfig/network-scripts/ifcfg-eth1 network=/etc/sysconfig/network resolv=/etc/resolv.conf hwaddr=`grep -i HWADDR $ifcfg|awk -F "=" '{print $2}'` # mo…
#!/bin/bash # author by sysk read -p "There files: " FILE1 FILE2 FILE3 read -p "Destination:" DEST read -p "Compress[gzip|bzip2|xz]" COMP case $COMP in gzip) tar -zcf ${DEST}.tar.gz $FILE1 $FILE2 $FILE3 ;; bzip2) tar -jcf ${D…
一.说明在现实环境中可能需要批量部署服务器,那么在我们已经部署好一台服务以后如果实现剩下的服务批量安装呢: 使用shell能否实现功能: 假设我们要部署lamp或者是lnmp如何实现脚本部署? 使用以下代码可实现: 部署方法1: #!/bin/sh menu ( ){ cat<<END .[install lamp] .[install lnmp] .[exit] pls input the num that you want: END } menu read num echo "y…
提前准备:/root目录下: checkpsw.sh ## 官方提供的自定义脚本,可在http://openvpn.se/files/other/checkpsw.sh下载 openvpn@.service #openvpn的服务启动文件,centos8缺失unit文件,从CentOS7复制文件或者自己写一个. windows客户端需要提前下载客户端:https://openvpn.net/community-downloads/ 点击查看代码 #!/bin/bash # #**********…
一键部署mysql,php,nginx,通过源码安装部署 #!/bin/bash # 一键部署 LNMP(源码安装版本) menu() { clear echo " ##############‐‐‐‐Menu‐‐‐‐##############" echo "# 1. Install Nginx" echo "# 2. Install MySQL" echo "# 3. Install PHP" echo "# 4…
服务器上必须安装了git maven jdk 并且配置好环境变量 实际服务器中可能运行着多个Java进程,所以重新部署的时候需要先停止原来的java进程,写一个按照名称杀死进程的脚本 kill.sh #!/bin/sh function PidFind()   {   PIDCOUNT=`ps -ef | grep $1 | grep -v "grep" | grep -v $0 | awk '{print $2}' | wc -l`;   if [ ${PIDCOUNT} -gt 1…
转载自https://mp.weixin.qq.com/s/f3xDHZ7dCQr7sHJ9KDvuyQ 1.提供--help标记 安装在系统上的二进制文件通常带有man帮助文档,但对于脚本来说就不一定了.因此我们通常需要为脚本提供-h或--help标记来打印有关如何使用脚本的信息.如果其他工程师需要修改脚本,这也可以作为脚本的内联文档: #!/bin/sh ] && [ "${@#\"--help\"}" != "" ]; th…
@echo off :: 运行时间1800000毫秒 echo wscript.sleep 1800000 >run.vbs ::运行Debug/lab1.exe程序,后面是参数 start Debug/lab1.exe Au -log au.log start Debug/lab1.exe Bu -log bu.log run.vbs ::关闭 lab1.exe程序 taskkill /f /im lab1.exe ::如果要继续执行其他程序的话就继续写.. start Debug/lab1.…
1.显示系统信息脚本 #!/bin/bash #A system information gathering script #Command UNAME="uname -a" printf "Gathering system information with the $UNAME command:\n\n" $UNAME #Command DISKSPACE="df -h" printf "Gathering diskspace inf…
win上是dos模式,需要改成unix模式 方法是: 在linux上vim 打开脚本,然后:set ff=unix…
gedit hello.sh ,然后输入 #!/bin/bash echo "Hello world!" chmod +x hello.sh ./hello.sh…
1.tomcat 7.0.82下载地址:链接:https://pan.baidu.com/s/1i51pAgl 密码:mxol 2.解压apache-tomcat-7.0.82-windows-x64.zip 到英文路径下 3.重命名文件夹为tomcat7-9000,复制两份,分别重命名为tomcat7-9001,tomcat7-9002 (端口号的选择: 查看端口是否被占用:cmd----netstat -ano | findstr "80" (注80是你想要看查看的端口号) ) 4…
本文采用的jar包是通过idea下maven打包的springboot项目. 写这个shell脚本是为了在linux下方便启动jar包时不用输入太多的shell命令,将启动脚本的一系列shell命令整理到一个xxx.sh中,每次启动此.sh文件就可以   linux下直接创建xxx.sh文件 vim start_syslogin.sh #!/bin/bash #jar包文件路径及名称(目录按照各自配置)APP_NAME=/opt/app/syslogin/syslogin.jar #日志文件路径…
因为在测试中经常要telnet登录到路由器中去配置环境启动路由器,每次都输入一遍命令太麻烦了,想着写一个shell脚本实现自动登录.配置环境.启动服务的过程. 脚本实现是使用expect来实现的,所以首先要安装expect(sudo apt-get install expect) 代码如下 #!/usr/bin/expect spawn telnet xxx.xxx.xxx.xxx xxxxx #路由器ip和端口 set timeout 5 #设置expect等待时间 expect "login…
想必大家都知道 "如果......那么......" 这种语法的应用吧! 当然呢,linux下对于这种用法也是有所考虑的,很多时候我们都需要写一个shell脚本,难免会避免if语句. 例如:判断Apache是否运行(httpd已安装),否!则启动Apache: 思路: ------------------- 判断条件: | 是,退出shell | 否,启动Apach后退出shell | ------------------- shell脚本: $ vim httpd.sh 下面是一些扩…
本人最近半年使用阿里dubbo做开发,并在公司内部大力进行推广,将原来一个笨重且不易于维护的大项目切分成多个相对独立的java程序,好处是显而易见的,但是随着切分的独立运行程序包越来越多,程序的部署变成了一件非常头痛的问题,无耐之下,本人想到可否写一个shell脚本来批量/单独启动.停止.重启这些独立的java程序,之前没有写过shell脚本,研究二天后,终于将这个脚本写出来了,以后部署起来方便多了,废话不多说,直接贴上shell脚本,有需要的朋友可以根据自己项目修改前面的程序代码数组.程序名称…
有个程序必须用 kill -9 pid号   关闭后,才能重新启动,每次都要手动查找pid号,麻烦容易出错,写个shell脚本 就三行很方便,自动查找pid号-关闭程序-重启程序 #!/bin/bash pid=`ps aux|grep xxx|grep -v grep|awk '{print $2}'` kill -9 $pid service xxx start…
贡献一个自己写的shell脚本,很简单,但又可以高效率的自动执行jmeter压测脚本. #!/bin/bash #author:zhangyl #version:V1 #该脚本放置于压测脚本的上一层目录执行,即与下面script平级的目录 #script:存放压测脚本的绝对路径,result:存放测试结果文件的绝对路径 #先执行登录,后执行各场景的多并发压测 jmeter -n -t script/登录.jmx -Jload.num=20 -Jload.time=300 -l result/登录…
最近在搞一个shell脚本启动jar文件个关闭jar文件的东东.搞得我都蛋疼了.今天晚上终于弄好了 话说,小弟的linux只是刚入门,经过各方查资料终于搞定了.话不多说,下面开始上小弟写的shell脚本 #!/bin/bash #description: 启动重启server服务 #端口号,根据此端口号确定PID PORT= #启动命令所在目录 HOME='/usr/etc/server/java/server' #查询出监听了PORT端口TCP协议的程序 pid=`netstat -anp|g…
这本书买了好久了,除了刚到手的那几天翻看了一下以外,竟然到今天都没有看过.突然想要写一个shell脚本,发现什么也不会,是时候开始学习了,今天先把最简单的一章再看一遍顺便做一些笔记,明天继续后面的! man命令用来访问存储在Linux系统上的手册页面.在想要查找的工具的名称前面输入man命令,就可以找到那个工具相应的手册条目. 如果你是新接触bash shell,可能一开始会觉得手册页并不太有用.但是,如果养成了阅读手册的习惯,尤其是阅读第一段或是DESCRIPTION部分的前两段,最终你会学到…
终于到shell 脚本这章了,在以前笔者卖了好多关子说shell脚本怎么怎么重要,确实shell脚本在linux系统管理员的运维工作中非常非常重要.下面笔者就带你正式进入shell脚本的世界吧. 到现在为止,你明白什么是shell脚本吗?如果明白最好了,不明白也没有关系,相信随着学习的深入你就会越来越了解到底什么是shell脚本.首先它是一个脚本,并不能作为正式的编程语言.因为是跑在linux的shell中,所以叫shell脚本.说白了,shell脚本就是一些命令的集合.举个例子,我想实现这样的…