
解析Shell脚本参数
$myscript.sh -host blah -user blah -pass blah我想将参数传递给它。我已经习惯了这样做$1,$2,$3....但我要开始对其进行命名回答:有很多方法可以解析sh中的参数。Getopt很好。这是一个简单的脚本,可以手动解析内容:#!/bin/sh# WARNING: see discussion and caveats below# this is extremely fragile and insecurewhile echo $1 | grep -...
2024-01-10
我的shell脚本在执行后停止
我正在写一个如下的shell脚本: for i in $ACTIONS_DIR/* do if [ -x $i ]; then exec $i nap fi done现在,我想要实现的是列出$ ACTIONS_DIR中的每个文件以执行该文件。$ ACTIONS_DIR下的每个文件都是另一个Shell脚本。现在,这里的问题在于,使用exec之后,脚本将停止并且不会转到下...
2024-01-10
Shell脚本波浪号扩展
这是我的脚本:#!/bin/bash echo "Digite o local em que deseja instalar o IGRAFU(pressione enter para instalar em ${HOME}/IGRAFO):"read caminhoif test -z $caminhothencaminho="${HOME}/IGRAFO"fiecho "O IGRAFU será instalado no diretório: $caminho"mkdir -pv $caminhomv...
2024-01-10
Shell脚本的单元测试
多年来,我从事的几乎所有产品都涉及到一定程度的Shell脚本(或Windows上的批处理文件,PowerShell等)。即使我们使用Java或C++编写了大量代码,但似乎总是存在一些集成或安装任务,而这些任务或任务可以通过Shell脚本更好地完成。因此,shell脚本成为附带代码的一部分,因此需要像已编译的代码一样...
2024-01-10
使用html按钮运行shell脚本
我想在网站上按下按钮时启动bash脚本。这是我的第一次尝试:<button type="button" onclick="/path/to/name.sh">Click Me!</button>但是没有运气。有什么建议么?回答:如Luke所述,您需要使用服务器端语言,例如php。这是一个非常简单的php示例:<?phpif ($_GET['run']) { # This code will run if ?run=true is set. exec("/path/to/name...
2024-01-10
获取shell脚本中的函数名称列表
我有一个具有多个功能的Bourne Shell脚本,并允许以以下方式调用:my.sh <func_name> <param1> <param2>在内部,func_name()将用param1和调用param2。我想创建一个help仅列出所有可用函数的函数,即使没有参数也是如此。问题:如何从脚本内部获取脚本中所有函数名称的列表?我想避免不得不解析它并寻找功能模...
2024-01-10
如何在shell脚本中创建服务器?
如何创建一个服务器脚本来知道文件夹中是否存在文件?如果它检测到/存在所述文件夹中存在的文件,则它将创建具有以下细节的清单文件,然后压缩除清单文件之外的文件。 该脚本将在特定时间执行,并将及时执行上述操作。如何在shell脚本中创建服务器?以下是详细信息:清单文件格式文件扩...
2024-01-10
从shell中使用Perl自定义脚本
我想将一个变量传递给自定义Perl脚本。从shell中使用Perl自定义脚本 $file="my_wa/fin" if [[ "$file" == *"fin" ]]; then script.pl fi 在我的剧本我尝试使用$file我的路径打开和读取文件my $input_filename = "$ENV{file}"; 我明白,我需要以某种方式将其导出,并接受它在我的Perl代码, 但它不承认$file。 - 如果...
2024-01-10
以qsub开头的shell脚本的参数
如何参数化在网格上执行的shell脚本(以qsub开头)?我有一个shell脚本,在这里我使用getopts读取参数。当我启动(qsub script.sh -r firstparam -s secondparam ..)这个带有qsub的工作脚本时,我收到错误消息,qsub:无效选项-sqsub:非法-r值正如qsub认为该参数本身就是。但是我还没有找到任何解决方案。谢谢...
2024-01-10
通过ssh传递外部shell脚本变量
当我偶然发现一个我想阻止公司访问的邪恶网站时,我在绑定服务器上编辑了named.conf文件,然后更新了代理服务器黑名单文件。我想用一个bash脚本来自动化它。假设我的脚本称为“evil-site-block.sh”,其中包含以下内容:ssh root@192.168.0.1 'echo "#date added $(date +%m/%d/%Y)" >> /var/named/chroot/etc/named.conf; echo "zone \...
2024-01-10
如何在启动时运行Shell脚本
在Amazon S3Linux实例上,我有两个名为的脚本start_my_app,stop_my_app它们永远启动和停止(依次运行Node.js应用程序)。我使用这些脚本手动启动和停止我的Node.js应用程序。到目前为止,一切都很好。我的问题:我还想将其设置start_my_app为在系统启动时运行。我知道我需要在其中添加文件,init.d并且知道如...
2024-01-10
Shell脚本:搜索并替换多行
我正在寻找一种通过Shell脚本搜索和替换多行的方法。这就是我想要做的:source:[stuff before]<!--WIERD_SPECIAL_COMMENT_BEGIN--> [stuff here, possibly multiple lines.<!--WIERD_SPECIAL_COMMENT_END-->[stuff after]target:[stuff before][new content][stuff after]简而言之,我想删除注释及其之间的所有内容,并替换为一些新内容。基本上...
2024-01-10
在shell脚本中嵌入可执行二进制文件
首先,我已经在Google上进行了搜索,但只找到了将压缩文件(例如.tar.gz)嵌入到Shell脚本中的示例。基本上,如果我有一个hello.c打印字符串的C程序(),请说 。我编译它以获得可执行的二进制文件gcc hello.c -o hello现在我有一个shell脚本 testEmbed.sh我要问的是是否有可能将二进制( )嵌入到shell脚本...
2024-01-10
将groovy变量传递给shell脚本
我刚开始学习groovy,我想将svnSourcePath和svnDestPath传递给svn copy命令中的shell脚本。但是网址未呈现。node { stage 'Copy Svn code'def svnSourcePath = "${svnBaseURL}${svnAppCode}${svnEnvDev}${SVN_DEV_PACKAGE}"def svnDestPath = "${svnBaseURL}${svnAppCode}${svnEnvTest}${SVN_DEV_PACKAGE}"p...
2024-01-10
如何使用jshell执行Java脚本?
鉴于Java 9已经来临,我们终于可以拥有JavaREPL了,jshell我希望有一种方法可以在脚本中添加shebang并对其进行jshell解释。我尝试创建test.jsh:#!/usr/bin/env jshell -sSystem.out.println("Hello World")/exit然而,这给出了:⚡ ./test.jsh| Error:| illegal character: '#'| #!/usr/bin/env jshell -s| ^| Error:| illegal s...
2024-01-10
使用Shell脚本获取MAC地址
当前,提到的用于获取MAC地址的所有解决方案始终使用eth0。但是,如果接口不是以eth0开头,该怎么办呢?同样在OS X上,接口名称也不同。eth0接口也可能存在但未使用。即不活跃,它没有一个IP。因此,有没有一种方法可以获取第一个可用接口Active的MAC地址(即,它具有一个inet地址,我什至不希望有...
2024-01-10
从Shell脚本调用Java方法
如何从外壳脚本内部执行Java方法?回答:您只能调用该main方法。设计您的main方法,使其调用所需的方法。当我说 调用 main方法时,您不会显式调用它。调用它是Java程序的唯一入口点。如果您的班级看起来像:package com.foo;public class Test { public static void main(String[] args) { System.out.println("Hello W...
2024-01-10
使用Shell脚本发送HTML邮件
如何使用Shell脚本发送HTML电子邮件?回答:首先,您需要撰写邮件。最低要求由以下两个标头组成:MIME-Version: 1.0Content-Type: text/html…以及适当的邮件正文:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><title></title></head><body><p>Hello, wor...
2024-01-10
如何修改并转发在shell脚本中的可变参数
我想,我正是如此运行脚本:哪些实际运行如何修改并转发在shell脚本中的可变参数adb -d logcat dalvikvm:I ActivityManager:W AndroidRuntime:W Foo:* Bar:* Tar:I Baz:D *:S logphone Foo Bar Tar:I Baz:D 如何做到这一点与任何数量的参数?请注意,订单有点重要(Foo,Bar等不能在最后)。 Bash,如果它很重要。我可以打破走下...
2024-01-10
将变量从shell脚本传递给jenkins
我从Jenkins触发了一个shell脚本,该脚本获取日期并将其导出为环境(Linux)变量$ DATE。我需要在同一詹金斯工作中使用此$DATE。我做了工作作为参数构建。创建一个字符串参数作为DATE值,如DATE = $ DATE。但这是行不通的。请建议!回答:您提到要DATE在外壳程序脚本中导出环境变量,该脚本可能是通过...
2024-01-10
在Shell脚本中读取JSON数据
在shell中,我有一个要求,我必须读取以下格式的JSON响应: { "Messages": [ { "Body": "172.16.1.42|/home/480/1234/5-12-2013/1234.toSort", "ReceiptHandle": "uUk89DYFzt1VAHtMW2iz0VSiDcGHY+H6WtTgcTSgBiFbpFUg5lythf+wQdWluzCoBziie8BiS2GFQVoRjQQfOx3R5jUASxDz7SmoCI5bNPJkWqU8ola+OYBIYNuCP1f...
2024-01-10
通过shell脚本将用户添加到sudoers
是否可以通过shell脚本将用户添加到sudoers文件中?我一直在环顾四周,仍然找不到任何东西。回答:您可以简单地echo(当然具有提升的特权)直接访问/etc/sudoers文件:sudo -iecho 'nickw444 ALL=(ALL:ALL) ALL' >> /etc/sudoers# ^^# tab(请注意用户名和第一个之间的制表符ALL)或者,对于脚本:...
2024-01-10
想要将环境变量从启动脚本导出到其他shell
我正在使用Busybox作为shell的嵌入式系统上工作。我的启动脚本rcS中导出大量的变量:想要将环境变量从启动脚本导出到其他shell UBOOT_ENV="gatewayip netmask netdev ipaddr ethaddr eth1addr hostname nfsaddr" for i in $UBOOT_ENV; do if [ -n "$i" ] ; then export `fw_printenv $i` fi done 然后将它们提供给脚本此脚本...
2024-01-10
无法在Jenkins管道中运行Shell脚本
我能够运行以下shell脚本,但无法从Jenkins管道代码运行。node('buildnode') {def value = "Myvalue"def key = "Mykey"sh '''DATA=$(printf "%-50s \"$key\"" "$value")echo "$DATA"'''}++ printf '%-50s ' ''+ DATA='尝试过sh“”“DATA=$(printf "%-50s \"$key\"" "$value")echo "$DATA"" " " :美元符号后的非法...
2024-01-10
如何在Shell脚本中仅读取单个字符
我想要类似getche()C的选项。如何仅从命令行读取单个字符输入?使用read命令可以做到吗?回答:在ksh中,您基本上可以执行以下操作:stty rawREPLY=$(dd bs=1 count=1 2> /dev/null)stty -raw...
2024-01-10
