在linux shell脚本里,设置一个变量,但是变量是一个命令,需要将执行结果放到变量里,并输出,例如:ip='ifconfig eth0' echo $ip,怎样可以叫页面显示的是eth0的网络状况?就是ifconfig eth0的结果?
1、shell一般都是放在/bin或者/user/bin目录下,我们可以使用命令cat /etc/shells命令,查看当前linux系统可用的shell是什么。
2、我们使用echo $SHELL命令来查看当前系统的默认Shell,并且输出Shell的环境变量。
3、shell中用于输出字符串的echo命令,我们将需要输出的字符串用双引号包裹,在双引号没有成对出现之前可以任意换行。
4、第一层命令使用PS1,第二层命令使用PS2,>便是第二层命令,如我们在输入完命令没有结束的情况下,显示的便是第二层命令。
5、我们使用echo $PS1和echo $PS2来查看提示符的当前格式,同样我们也可以修改命令提示符。
6、我们创建一个shell脚本了,使用vi test(自定义的脚本名)进入到脚本编辑页面,test便是该脚本的名字,后缀名为.sh即可。
可以使用ip=`ifconfig eth0`命令将 ifconfig eth0的结果赋值给ip,然后进行传递。
注意ifconfig eth0前后的符号不是单引号 ' ,而是反引号(也有叫飘号或尖叫号的,在数字1的左边,需在英文状态下输入)。
在linux命令行或者shell脚本里面输入以下命令:ip = `ifconfig eth0`,即可先把ifconfig eth0的值存在ip变量之内,然后再进行其他操作。例如将ifconfig eth0的结果输入到a.txt 文档种的命令为:
ip=`ifconfig eth0`
echo $ip >a.txt
扩展资料
linux下反引号的作用:
linux里面反引号` `就是将反引号内的Linux命令先执行,然后将执行结果赋予变量。
例如: list=`ls -la`
是将Linux命令ls -la 赋予list,list的值就是该命令的执行结果。
本回答被网友采纳你好,
将结果定义为变量,然后输出即可。
list=`ls -l /home`那这个键表示的什么意思呢?为什么用这个键就可以了呢?
追答这就跟你问linux下显示文件目录的命令是ls一样。
人家就这么规定的,使用反引号可以把一个命令的输出插到另一个命令中去。
相同功能的写法还有$() 功能通` ` 效果是一样的。不过某些unix系统不支持$()这种写法。
但是` `在任何unix或linux系统下都可以使用。