Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用bash从脚本中获取值_Bash - Fatal编程技术网

使用bash从脚本中获取值

使用bash从脚本中获取值,bash,Bash,我有一个包含许多行的文件,其中的行如下: PHP_VERSION="5.3.12" NPM_VERSION="1.10" 从linux命令行中,我如何仅获取版本号?对于本例,如果我想从给定的输入文件中获得PHP版本,我将如何获得类似于5.3.12的输出 var="$(grep -F -m 1 '$variable =' file)"; var="${var#*\'}"; var="${var%\'*}" 参考资料:我会使用以下内容: var="$(grep -F -m 1 '$variabl

我有一个包含许多行的文件,其中的行如下:

PHP_VERSION="5.3.12"
NPM_VERSION="1.10"

从linux命令行中,我如何仅获取版本号?对于本例,如果我想从给定的输入文件中获得PHP版本,我将如何获得类似于
5.3.12
的输出

var="$(grep -F -m 1 '$variable =' file)"; var="${var#*\'}"; var="${var%\'*}"

参考资料:

我会使用以下内容:

var="$(grep -F -m 1 '$variable =' file)"; var="${var#*\'}"; var="${var%\'*}"

参考资料:

您是否尝试使用
bash
获取它

. /path/to/file
echo $PHP_VERSION

您是否尝试使用
bash
获取它

. /path/to/file
echo $PHP_VERSION

而不是整个文件的源代码,我只会用
eval“$(grep PHP\u VERSION/path/to/file)”评估与
PHP\u VERSION
匹配的行。谢谢,但我没有能力评估该脚本。什么?你介意更详细地解释一下吗?我不想获取整个文件的源代码,我只想用
eval“$(grep PHP\u VERSION/path/to/file)”计算与
PHP\u VERSION
匹配的行。谢谢,但我没有能力计算该脚本。请再说一遍?你介意更详细地解释一下吗?我修改了我的问题,使之不那么以意见为基础。我显然不知道怎么做,需要指导。你可以用
sed(1)
轻松拼凑一些东西。。。您需要在此处执行
sed-ne“s;${PKG}\u VERSION=;;p”yourfile
我修改了我的问题,使其不那么基于意见。我显然不知道怎么做,需要指导。你可以用
sed(1)
轻松拼凑一些东西。。。您需要在这里执行
sed-ne“s;${PKG}\u VERSION=;;p“YourFileHere
谢谢,您给我的参考帮助了我很多。我能够创建解析版本号的命令
sed-ne“s/PHP\u VERSION=*['\'\']\([^'\'\']*\)['\']./\1/p”
谢谢,您给我的参考帮助很大。我能够创建解析版本号的命令。
sed-ne“s/PHP\u VERSION=*['\'\\]\([^'\'\]*\].['\'\'\].]./\1/p