【linux中shell脚本启动和停止jar包程序性模版】教程文章相关的互联网学习教程文章

什么是./lks.sh:运行shell脚本时Linux中的权限被拒绝了?【代码】

当我在我的系统中运行lks.sh文件时,它显示权限被拒绝:./lks.sh bash: ./lks.sh: Permission denied我该怎么做才能运行这个shell脚本? 这是我的.sh文件:lokesh = "wait" if[$lokesh == "wait"]echo "$lokesh"elsesudo shutdown -h now解决方法:您的脚本有一些问题. 首先,“权限被拒绝”很可能是因为您的脚本没有允许脚本实际运行的执行权限.所以你需要像这样chmod它:chmod 755 lks.sh然后你应该能够运行它. FWIW,7和755为您提供...

linux – 使用配置文件的ssh命令在远程机器上执行shell脚本【代码】

我想在远程机器上执行shell脚本,我使用下面的命令实现了这个,ssh user@remote_machine "bash -s" < /usr/test.shshell脚本在远程计算机中正确执行.现在我在脚本中进行了一些更改,以从配置文件中获取一些值.该脚本包含以下行,#!bin/bash source /usr/property.config echo "testName"property.config:testName=xxx testPwd=yyy现在如果我在远程机器上运行shell脚本,我没有收到这样的文件错误,因为/usr/property.config在远程机器中...

在bash / linux中并行运行shell脚本【代码】

我有一个shell脚本job.sh. 内容如下:#!/bin/bashtable=$1sqoop job --exec ${table}现在当我做./job.sh table1 该脚本成功执行. 我在表tables.txt文件中有表名. 现在我想循环遍历tables.txt文件并并行执行job.sh脚本10次. 我怎样才能做到这一点? 理想情况下,当我执行脚本时,我希望它在下面执行;./job.sh table1 ./job.sh table2 ./job.sh table3 ./job.sh table4 ./job.sh table5 ./job.sh table6 ./job.sh table7 ./job.sh tabl...

linux – 命令可以从Shell脚本运行,但不能从命令行运行?【代码】

我在发布之前很快搜索了这个,但找不到任何类似的帖子.如果它们存在,请告诉我. 正在执行的命令看起来非常简单.目录列表用作函数的输入. 该目录包含一堆名为“epi1_mcf_0 ###.nii.gz”的文件 命令行版本(bash在执行时运行):fslmerge -t output_file `ls epi1_mcf_0*.nii.gz`Shell脚本版本:#!/bin/bash fslmerge -t output_file `ls epi1_mcf_0*.nii.gz`命令行版本失败,但shell脚本完美无缺. 错误消息特定于该功能,但无论如何它都包...

通过linux中的shell脚本与正在运行的进程通信的标准方法

是否有标准的linux / unix模式用于与长时间运行的进程通信? 例如,我有几百个进程,用c编写,并在各种机器上运行,我想通过shell脚本向他们发送重载配置,启动,停止等命令.解决方法:既然您也关心远程进程,并假设您可以修改所有程序的源代码,您可以考虑使用某种方式与它们进行通信: >定义自己的小文本协议,让每个进程监听某个套接字或某个命名管道.您可能需要一些多路复用系统调用,如poll>使用现有的库和工具,如MPI,Corba或D-Bus或ONC/...

linux – 通过fork()在shell脚本中创建一个子进程【代码】

这似乎是网站上的一些答案,但似乎没有解决我的问题. 说,#/bin/sh fpfunction(){ n=1 while (($n<20)) doecho "Hello World-- $n times"sleep 2echo "Hello World2-- $n times"n=$(( n+1 )) done }fork(){count=0while (($count<=10))dofpfunction &count=$(( count+1 ))done }fork我期望将这个父进程“分叉”到10个子进程的数量. 我检查实际创建这些子进程的方法是键入“ps -l”命令. 我是shell世界的新手,请让我知道如何存档. 提前...

如何使用Shell脚本在Linux中从Excel工作表中读取数据?【代码】

大家, 我是Linux和Linux的新手.非常感兴趣编写shell脚本.这次我正在制作一张excel表.在那张excel表中会有S.No.在第1栏&第二列中的域名.我的Excel工作表中有100个域名.所以,我不想手动复制每个域名&将它们粘贴到浏览器中以检查全部.我只想编写一个shell脚本,它可以通过运行单个shell脚本将所有域打开到浏览器中. 请帮帮我.我将非常感谢你. 谢谢&问候-Reetesh Chauhan解决方法:xls2csv会将您的xls文件转换为CSV格式. 管道sed以删除双...

test命令-linux shell 脚本

#!/bin/bash # This is program will check you file name,which sys has or not,end print types. #2019/07/19 FSQ First release echo -e "input file name:" filename read filename test -z $filename && echo "please input a file name" && exit 0 #test -z 检查输入是否为空 test ! -e $filename && echo" $filename is not exsit" && exit 0 # test -e 检查输入的文件是否存在 test -d $filename && filetype="regulare...

linux – Shell脚本ssh $SERVER >> EOF【代码】

我有一个方便的脚本,可以返回将在7天后过期或已过期的帐户.我想允许它在多个主机上运行而不将脚本放在每个主机上,我添加了for循环和ssh $SERVER>> EOF部分,但它只是运行命令关闭运行脚本的系统. 我相信错误是ssh $SERVER>> EOF但我不确定语法看起来是否正确.#!/bin/bashfor SERVER in `cat /lists/testlist` doecho $SERVERssh $SERVER >> EOFsudo cat /etc/shadow | cut -d: -f1,8 | sed /:$/d > /tmp/expirelist.txttotalaccount...

Linux shell脚本中的RegEx Confusion【代码】

谁能解释一下这个在linux shell中的作用…..port=$((${devpath##*[-.]} - 1))我有一个名为$devpath的变量,一个可能的值是/ sys / bus / usb / devices / usb2 / 2-1. 我假设${devpath ## * [ – .]}在$devpath上执行某种正则表达式,但这对我没有意义.我理解的* [ – .]也不是指“除了换行符之外的任何一个角色中的任何一个”或者任何其他角色“ 在运行脚本时(这是从usb-devices.sh开始),似乎port的值始终是第一个数字.令我困惑的其...

linux – 错误地从bash shell脚本自动退出:set e似乎没有完成这项工作【代码】

虽然我知道20年来shell脚本并不关心错误,但我默默地对这种粗心大意感到好笑.即使你明确要求他们不要吞下错误并遵循崩溃早期原则仍然不会发生. 参考automatic exit from bash shell script on error,设置e似乎不起作用,这是一个简短的例子:#!/bin/bash -vx set +e apt-get install nonexisting1 apt-get install nonexisting2 set -e输出:#!/bin/bash -vx set +e + set +e apt-get install nonexisting1 + apt-get install nonexi...

linux – 如何使用shell脚本将文本附加到文件中的特定行?【代码】

我有一个文本文件(file.txt),其内容类似于:foo1 3464 foo2 3696 foo3 4562 它包含过程和相应的PID. 根据PID,我想使用shell脚本,在这个文件中追加一个字符串(运行/不运行). 例如,在上面的文件中,对于包含PID 3696的行,我想在末尾附加一个字符串“running”,以便该文件变为:foo1 3464 foo2 3696 running foo3 4562 我该怎么做?解决方法: $sed '/3696/ s/$/running/' file.txt foo1 3464 foo2 3696 running foo3 4562 要么$se...

linux – 如何在bash shell脚本中正确处理通配符扩展?【代码】

#!/bin/bashhello() {SRC=$1DEST=$2for IP in `cat /opt/ankit/configs/machine.configs` ; doecho $SRC | grep '*' > /dev/nullif test `echo $?` -eq 0 ; thenfor STAR in $SRC ; doecho -en "$IP"echo -en "\n\t ARG1=$STAR ARG2=$2\n\n"doneelseecho -en "$IP"echo -en "\n\t ARG1=$SRC ARG2=$DEST\n\n"fidone }hello $1 $2以上是我提供的shell脚本(SRC)& desitnation(DEST)路径.当我没有放入带有外卡的SRC路径时,它工作正常.当...

linux – 如何在shell脚本中打破字符串【代码】

我有以下格式的数据库名称username_databasename现在我想在用户名目录中放置单独的数据库备份/backups/username/backup如何从该字符串中获取usernamae 我也想要,如果字符串不包含下划线(_),那么备份应该去/backups/others/backup解决方法:你可以做:username=others if echo $name | grep '_'; thenusername=$(echo $name | cut -d'_' -f 1) fi

linux – shell脚本中整数和浮点数的比较【代码】

在shell脚本中,我们如何比较(整数和浮点),(浮点和浮点),(浮点和整数),(整数和整数)只有一个if条件. 我有几个例子set X=3.1set Y=4.1if [ $X < $Y ] thenecho "wassup"endif但从cron工作运行上面似乎没有用.解决方法:在bash中执行浮点运算的方法是使用几乎所有Linux发行版上都可用的bc.# bc will return 0 for false and 1 for true if [ $(echo "23.3 > 7.3" | bc) -ne 0 ] then echo "wassup" fi在Linux期刊上有一个关于使用bc的...