我有一个文件,我需要使用shell脚本按键查找值。该文件如下所示:HereIsAKeyThisisthevalue我该如何做:MyVar=GetHereIsAKey然后MyVar应该等于“Thisisthevalue”。键没有空格,值应该是键后空格后面的所有内容。 最佳答案 如果HereIsAKey在您的文件中是唯一的,请使用grep尝试:myVar=$(grep-Po"(? 关于linux-从shell脚本解析文件中的键/值的代码,我们在StackOverflow上找到一个类似的问题:
这可能有一个比“自定义选项卡完成”更好的名称,但这是场景:通常,当我在命令行输入命令,然后按{TAB}两次时,我会得到当前目录中所有文件和子目录的列表。例如:[user@hosttmp]$catchromatron2.exeFedora-16-i686-Live-Desktop.isoisolate.pyfavicon.icofoo.exeJames_Gosling_Interview.mp3但是,我注意到至少有一个程序以某种方式过滤了这个列表:wine。考虑:[user@hosttmp]$winechromatron2.exefoo.exe它有效地将结果过滤到*.exe。认为它可能是
这可能有一个比“自定义选项卡完成”更好的名称,但这是场景:通常,当我在命令行输入命令,然后按{TAB}两次时,我会得到当前目录中所有文件和子目录的列表。例如:[user@hosttmp]$catchromatron2.exeFedora-16-i686-Live-Desktop.isoisolate.pyfavicon.icofoo.exeJames_Gosling_Interview.mp3但是,我注意到至少有一个程序以某种方式过滤了这个列表:wine。考虑:[user@hosttmp]$winechromatron2.exefoo.exe它有效地将结果过滤到*.exe。认为它可能是
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭6年前。ImprovethisquestionLinux(可能基于Java、GObject或它自己的对象类型/无)是否有类似于MicrosoftPowershell(基于.NET框架构建的面向对象的shell)的东西?编辑:特别是如果类似于bash或powershell或cmd等语法(=''标准''shell语法)
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭6年前。ImprovethisquestionLinux(可能基于Java、GObject或它自己的对象类型/无)是否有类似于MicrosoftPowershell(基于.NET框架构建的面向对象的shell)的东西?编辑:特别是如果类似于bash或powershell或cmd等语法(=''标准''shell语法)
我正在尝试获取一个bash脚本,为给定的参数生成JSDoc./jsdoc.shfile.jsanother.jsmaybe-a-third.js我卡在了如何将未知数量的参数传递给下一个shell命令。(另外,不知道如何检查参数是否存在,只有在不存在时才if[-z...])此代码最多适用于两个参数,但显然不是正确的方法......#!/bin/bash#wouldliketoknowhowtodopositivecheckif[-z"$1"]thenechonoparamelsed=$PWDcd~/projects/jsdoc-toolkit/#thisbitisobviouslynot
我正在尝试获取一个bash脚本,为给定的参数生成JSDoc./jsdoc.shfile.jsanother.jsmaybe-a-third.js我卡在了如何将未知数量的参数传递给下一个shell命令。(另外,不知道如何检查参数是否存在,只有在不存在时才if[-z...])此代码最多适用于两个参数,但显然不是正确的方法......#!/bin/bash#wouldliketoknowhowtodopositivecheckif[-z"$1"]thenechonoparamelsed=$PWDcd~/projects/jsdoc-toolkit/#thisbitisobviouslynot
我在一个文件夹中有许多.sh脚本,我想一个接一个地运行它们。单个脚本可以执行为:bashwget-some_long_number.sh-H假设我的目录是/dat/dat1/files如何依次运行bashwget-some_long_number.sh-H?我理解这些行中的某些内容应该有效:foriin*.sh;...do....;完成 最佳答案 使用这个:forfin*.sh;dobash"$f"done如果你想在脚本失败时停止整个执行:forfin*.sh;dobash"$f"||break#executesuccessfull
我在一个文件夹中有许多.sh脚本,我想一个接一个地运行它们。单个脚本可以执行为:bashwget-some_long_number.sh-H假设我的目录是/dat/dat1/files如何依次运行bashwget-some_long_number.sh-H?我理解这些行中的某些内容应该有效:foriin*.sh;...do....;完成 最佳答案 使用这个:forfin*.sh;dobash"$f"done如果你想在脚本失败时停止整个执行:forfin*.sh;dobash"$f"||break#executesuccessfull
我正在尝试计算Shell脚本中某些项目的百分比。我想四舍五入这个值,也就是说,如果结果是59.5,我应该期望60而不是59。item=30total=70percent=$((100*$item/$total))echo$percent这给出了42。但实际上,结果是42.8,我想将它四舍五入为43。"bc"可以解决问题,有没有不使用"bc"的方法?我无权安装任何新软件包。我的系统中不存在“dc”和“bc”。应该是纯Shell,也不能使用perl或python脚本 最佳答案 使用AWK(无bash主义):item=30total=70