首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何向bash中的变量分配以下命令中的文本

问如何向bash中的变量分配以下命令中的文本
EN

Stack Overflow用户
提问于 2014-06-03 18:29:48
回答 3查看 218关注 0票数 0

您如何将命令后面的文本分配给bash中的变量?

示例: /path/ to /script值要赋值给变量

我正在写一个脚本,它基本上过滤掉了我喜欢的格式的挖掘和其他人的信息。现在,我已经将它设置为要查询的域的变量分配用户输入。我是用“读”来做这个的。所以看起来:

阅读-p“域:”域

这需要运行命令,然后放入域中,而我则希望将域放在命令之后,类似于在进行正常挖掘时所做的操作。

例如:./script google.com

我设想这并不太复杂,这是将stdin(0)重定向到变量的问题。虽然我不知道该怎么做。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-06-03 18:41:56

您可以将bash中的CLI参数作为有序索引阅读,这与AWK非常相似。

因此,如果您的脚本名为better-dig.sh,则在发出以下命令时:

代码语言:javascript
复制
$ better-dig.sh google.com

在脚本中,必须在$1内捕获参数google.com,在$0内捕获scriptname。

然后:

代码语言:javascript
复制
#!/bin/bash
echo "hi I'm $0 - will call dig with $1"
dig $1 | awk 'the rest of your script'
票数 0
EN

Stack Overflow用户

发布于 2014-06-03 18:35:53

命令行上的论点是$1,$2.

票数 0
EN

Stack Overflow用户

发布于 2014-06-03 18:48:29

命令行参数已经分配给变量1,2,3,4.要访问它们,只需使用$1,$2。

代码语言:javascript
复制
echo "argument one is $1"  

也可以将其赋值给另一个变量。

代码语言:javascript
复制
site=$1
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24022378

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档