个人博客地址:http://ganshuo8.com/ 由于博客现在在docker中部署的,每次打包部署,需要停掉旧容器->删除旧容器->删除镜像->将新的jar包打包成镜像->再次运行,每次发布都需要重复的执行此操作...,于是想将所有命令写成脚本,jar包上传之后,运行脚本即可。...解决方法: 手动在liunx中创建test.sh脚本文件,将所有命令拷贝进去即可。拷贝后检查首字母,我这边经常会全部拷贝过去,首字母会丢失。 然后运行即可。
后面就是脚本解释器的位置,Bash 脚本的解释器一般是/bin/sh或/bin/bash。 #!/bin/sh # 或者 #!...如果缺少该行,就需要手动将脚本传给解释器。举例来说,脚本是script.sh,有 Shebang 行的时候,可以直接调用执行。 $ ..../script.sh 如果没有 Shebang 行,就只能手动将脚本传给解释器来执行。 $ /bin/sh ./script.sh # 或者 $ bash ....$ bash script.sh script.sh:行3: foo: 未找到命令 bar 可以看到,Bash 只是显示有错误,并没有终止执行。 这种行为很不利于脚本安全和除错。...$ bash script.sh script.sh:行4: foo: 未找到命令 可以看到,第4行执行失败以后,脚本就终止执行了。 set -e根据返回值来判断,一个命令是否运行失败。
When you run a .sh script in the Git Bash, there is an annoying thing is that the 'C:/Program Files/Git
只需要在sh脚本后面添加这一行: read -n 1 例如: nvm use 14 cd .
#!/bin/bash echo "开始" echo "`date "+%Y-%m-%d %H:%M:%S"` 正在杀进程..." ps -ef | grep ...
在linux服务器上,定时无人值守自动执行某个脚本实现特定功能很容易实现,shell脚本和cron程序都随手可用.很多初次接触云服务器的小白用户通常比较熟悉的是windows系统,机器不在本地,不可能插个鼠标上去点点点...目前,windows通常实现自动任务定时运行的通常做法是通过bat批处理文件来实现,Windows任务计划设置,可以定时执行bat脚本,如果还是无法正常运行,那应该是在设置bat脚本路径时,没有填上“起始于...”那一项,在这项里,填上脚本所在的目录路径就行了。...,而你的计划定时那一刻,正好服务器正在进行别的运算,如果贸然开始bat批处理,有可能造成服务器宕机,也就是我们通常说的卡死,因此,可以在此处给该任务设置一个条件,如果计划时间到服务器又是空闲的,那么就执行...bat批处理,如果不空闲则等待空闲了再继续自动执行bat批处理程序. 4 (2).jpg 5.计划任务的其他一些设置,可根据需要设置,通常默认即可. 5 (2).jpg 最后点确定,输入系统密码保存
在研究《管理Python虚拟环境的脚本》时,我们使用了source指令而没有使用sh或者bash来执行脚本,就是因为source指令可以让脚本在当前bash(sh)中执行;而sh或者bash则会新启动一个...我们可以通过下面这个脚本做测试 # test.sh # 用一个数组保存进程ID和进程名 processInfo=() # 查找父进程的进程号 findParentID() { if [ $1...source source test.sh $$ processInfo: 40883 bash 可以见得没有启动新的bash程序。 source还可以让自动注册脚本中的函数。...所以如果我们希望脚本对当前bash有所影响,就要使用source去执行脚本;如果不希望影响当前bash,则可以使用bash或者sh去执行。 需要注意的是,bash并不等价于sh。...主要目标是与POSIX标准保持一致,同时兼顾对sh的兼容,是各种Linux发行版标准配置的Shell。比如上面test.sh使用bash可以正确执行,而sh执行就会报错。
/hello.sh【hello.sh必须有x权限】 二、直接sh 加上文件名.sh,如运行hello.sh为sh hello.sh【hello.sh可以没有x权限】 方法一:绝对路径执行.sh文件...到.sh文件所在目录 比如以hello.sh文件为例,如下 2、给.sh文件添加x执行权限 比如以hello.sh文件为例,chmod u+x hello.sh,如下图 3、..../执行.sh文件 比如以hello.sh文件为例,..../hello.sh 即可执行hello.sh文件,如下图 4、sh 执行.sh文件 以hello.sh文件为例,sh hello.sh即可执行hello.sh文件,如下图 注:用“./”加文件名.sh...执行时,必须给.sh文件加x执行权限
分享一个部署boot项目的sh脚本 #环境变量 source /etc/profile #!.../bin/sh #jdk JAVA_HOME=/此处换成真实jdk路径 export PATH=$PATH:$JAVA_HOME/bin export BUILD_ID=dontkillme #定义程序名...fi } ## 编写重启方法 restart() { ## 先停止再启动 stop start } ## 程序最开始执行的 ## 根据用户输入,判断执行方法 case "$1" in "start...stop ;; "restart") restart ;; *) echo "please enter the correct commands: " echo "such as : sh...startup.sh [ start | stop | restart ]" ;; esac
/bin/sh或者#!/bin/bash 符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。...当编写脚本完成时,如果要执行该脚本,还必须使其可执行。 要使编写脚本可执行: 编译 chmod +x filename 这样才能用....1,自动执行jar项目运行的脚本 a,创建脚本文件(test-a.sh) [root@docker_t tools]# touch test-a.sh b,编辑文件 [root@docker_t...2,自动执行war项目运行的脚本 a,创建脚本文件(test-b.sh) [root@docker_t tools]# touch test-b.sh b,编辑文件 [root@docker_t.../logs/catalina.out c,执行脚本文件; 直接执行 [root@docker_t ~]# bash /home/tools/test-b.sh 编译后执行 [root@docker_t
内容: 整个脚本分为三部分,第一部分是确定NIFI各个路径 目录的确定,设置环境变量,第二部分是方法区。第三部分是脚本逻辑代码的入口,粗略的根据不同的参数去执行不同的方法。以下脚本有详细注释: #!...TARGET_FILE=$0 #跳转到当前脚本所在的目录 cd $(dirname $TARGET_FILE) ## TARGET_FILE=nifi.sh TARGET_FILE=$(basename...== # 查找文件的路径 end # ========================== # 执行nifi-env.sh 设置了NIFI的目录环境变量 ....exec命令通常用在shell脚本程序中,可以调用其他的命令。如果在当前终端中使用命令,则当指定的命令执行完毕后会立即退出终端。...# eval可读取一连串的参数,然后再依参数本身的特性来执行。
crontab是Linux一个定时执行特定任务的程序,网上也有很多使用教程,在这里举一个例子,抛砖引玉。 为了运行.py,建议使用.sh脚本批量运行,并且在.sh内输出日志。...Ubuntu系统crontab设置请参考: https://www.linuxidc.com/Linux/2013-05/84770.htm 建立.sh文件 在目录下新建xxx.sh文件,内容为:.../bin/sh . ~/.bash_profile python /home/price-monitor-server/conn_sql.py ---- 第一行是输出标准日志到crawl_log...第二行是输出标准错误日志到crawl_log_err 第三与第四行是为了实行.sh而设置的环境 第四行及之后就可以执行.py啦 设置crontab 在/var/spool/cron/(你的用户名)文件中添加一行...: */15 * * * * cd /home/xxxxx && sh crawl_item.sh 代表每15分钟去往/home/xxxxxx目录执行一次crawl_item.sh 由于日志在.sh中已经输出
Oracle巡检脚本:ORAWatcher.sh #!
原因是window编写的脚本上传到linux服务器存在换行报错提示,报错信息如图 ?...image.png 解决方案 如果centos服务器安装 yum -y install dos2unix 然后找到脚本目录执行 dos2unix carinet.sh即可 如果linux编写的脚本
shell中使用source xxx.sh ,是直接运行xxx.sh的命令,不创建子shell,而sh则创建子shell,子shell里面 的变量父shell无法使用,对环境变量的修改也不影响父shell...sh 创建了子shell和当前的shell并行执行,子shell中执行,脚本设置的变量不会影响当前shell。...一旦子Shell中的执行完毕,此子Shell随即结束,回到父Shell中,不会影响父Shell原本的环境。...sh执行脚本 source执行脚本 还有个办法可以在父shell和子shell中分别加上 echo $SHLVL ,显示当前运行层级,可以明显的看出来: 两种执行层级不同 [root@bogon home..."source son shell" echo "sh son shell" sh son.sh echo "sh son shell" [root@bogon home]# cat son.sh #
前言 我们都知道sh文件在Linux服务器上可以直接执行,基本没有怎么关注过在windows上是否可以执行,平时开发的过程当中,经常会需要将修改的代码提交到gitLab/gitHub,提交代码有时候是一个固定的流程...,对于这种情况,是否可以通过shell来进行自动化,这是需要学习的内容,本文就当做基本入门了解 首先windows的cmd窗口是无法执行.sh文件的 编写好的脚本可以在git bash 窗口进行执行例如...033[0m" echo -e "\033[32mPush to origin v5-dev\033[0m" echo -e "\033[32mPush to osc v5-dev\033[0m" 执行方式.../文件名.sh 2 sh 文件名.sh Shell脚本 Shell 脚本(shell script),是一种为 shell 编写的脚本程序 shell在线运行地址:https://www.runoob.com
今天在网上有发现一款好用的SSL检测脚本:testssl.sh:https://testssl.sh/ 检测方法就是下载源码,运行: git clone --depth 1 https://github.com.../drwetter/testssl.sh.git 1 git clone --depth 1 https://github.com/drwetter/testssl.sh.git 然后进入目录: 运行...:帮助shuom testssl.sh --help 1 testssl.sh --help 运行检测: ..../testssl.sh yourdomain.com 1 ..../testssl.sh yourdomain.com 检测结果类型如下: ########################################################### testssl.sh
前三个是表示在当前的父shell中生成一个子shell来运行*.sh文件 sh test.sh bash test.sh ./test.sh (..../和test.sh之间没有空格切实在文档所在的目录下文件要有执行权限这个命令无法自动补全) /etc/test.sh (全路径的情况下执行文件要有执行权限) 最后的这两种是相当于在父shell进程中的一部分运行...,就是没有生成子进程的shell来运行*.sh文件 . test.sh (注意....和 test.sh之间有空格) source test.sh(类似于加载文件的意思)
文章目录 一、进入 ijkplayer-android 目录 二、执行 init-android-libyuv.sh 脚本 三、执行 init-android-soundtouch.sh 脚本 参考 https...init-android-libyuv.sh 脚本 ---- 在 ijkplayer-android 目录中 , 执行 ..../init-android-libyuv.sh 命令 , 下载 libyuv 依赖库 , 之后编译 ijkplayer 需要用到 ; 执行过程 : root@octopus:~/ijkplayer/ijkplayer-android...init-android-soundtouch.sh 脚本 ---- 在 ijkplayer-android 目录中 , 执行 ..../init-android-soundtouch.sh 命令 , 下载 libyuv 依赖库 , 之后编译 ijkplayer 需要用到 ; 执行过程 : root@octopus:~/ijkplayer
ubuntu 默认sh是dash,因为dash和bash的不兼容导致此错误。...# 查看 vagrant@swarm4:~/txt$ ls -la /bin/sh lrwxrwxrwx 1 root root 4 Jun 21 17:55 /bin/sh -> dash # 错误...vagrant@swarm4:~/txt$ sh 1.sh 1.sh: 4: [: 1: unexpected operator false # Ubuntu解释器默认连接到bash sudo dpkg-reconfigure
领取专属 10元无门槛券
手把手带您无忧上云