方法一

#!/bin/bash
name=yushuang
var=name
# 要获取到yushuang
res=`eval echo '$'"$var"`
echo $res
# 输出结果:
# yushuang

解释:

第一步: "$var"  结果是 name

第二步: echo '$'"$var"  结果是 $name

第三步: `eval $name`  结果是 yushuang

原理:

使用 shell 命令 eval 详细参考 :

《linux shell eval 命令 字符串作为命令执行》

https://blog.csdn.net/whatday/article/details/105459629

方法二

#!/bin/bash
name=yushuang
var=name
# 要获取到yushuangecho "${!var}"
# 输出结果:
# yushuang

解释:

感叹号可以引用间接变量的值

注意事项

当遇到星号后,间接引用会有问题

SSHCONFIGDIR="/root/.ssh"
SSHCONFIG="*"
dir=SSHCONFIGDIR
files=SSHCONFIGls ${!dir}/${!files}
#这样是没问题的,可以输出/root/.ssh/known_hostsfiles_temp=${!files}
#这一步,shell已经把星号解析成当前目录下所有的文件了,所以files_temp不再是"*",而是当前目录下所有文件的字符串了。

linux shell 字符串作变量名 间接变量引用相关推荐

  1. js中定义用字符串拼接起来的变量名的变量

    转载:https://www.cnblogs.com/vlone/p/4602072.html js中定义用字符串拼接起来的变量名的变量 今天在写js的时候碰到了难题,我又一个页面需要生成很多的变量. ...

  2. linux shell 字符串操作(长度,查找,替换)详解 BASH

    linux shell 字符串操作(长度,查找,替换)详解 在做shell批处理程序时候,经常会涉及到字符串相关操作.有很多命令语句,如:awk,sed都可以做字符串各种操作. 其实shell内置一系 ...

  3. 在 Linux shell 字符串中,百分比符号是什么?

    当你正在学习如何完全使用 Linux shell 时,你可以能会觉得自己能够对字符串进行操作. 记住,今天q&一个文章的超级用户对读者的一个奇怪问题有答案. 今天,回答会话的问题来自超级用户的 ...

  4. php如何拼接变量名,php动态拼接变量名,可变变量,动态变量,使用花括号,使用两个$符...

    php动态拼接变量名,可变变量,动态变量,使用花括号,使用两个$符 方式一:使用花括号,前缀部分不需要用单引号 $nums10 = 100; $xxx*${bcount.$nums10}['m54'] ...

  5. 变量名与变量地址的一些理解

    今天看了各位大咖写的博文,受益良多,我对变量名与变量地址的区别又有了进一步的了解.要想彻底理解变量名与变量地址,能有一些<计算机组成原理>里与存储器相关的知识储备,和<数据结构> ...

  6. 为什么python中不需要变量名和变量类型声明?

    python是解释型语言,python的变量不需要声明,但是需要初始化,python解释器会为每个出现的对象分配内存,哪怕他们的值完全相等(注意是相等不是相同),其中变量其实通过一个标记调用内存中的值 ...

  7. linux shell字符串及字符串长度获取方式

    linux shell字符串及字符串长度获取方式

  8. Oracle入门(十三A1)之替换变量,变量名,变量名

    转载自 Oracle中的替换变量,&变量名,&&变量名 替换变量(仅用于SQL *Plus或者用于原理和SQL *Plus相同的开发工具): 临时存储值 利用它可以达到创建通用 ...

  9. c语言变量名、变量和地址的关系

    c语言变量名.变量和地址的关系 定义 变量:用来标识一块内存区域,即变量就是一块内存区域,而这个区域里面的值可以更改,故叫做'变'量 变量名:是一个标识符,用来指代一块内存区域,即变量,变量名并不占用 ...

最新文章

  1. Python Django HttpRequest请求对象常见属性和方法
  2. makefile:2: *** 遗漏分隔符 。 停止
  3. 如何更改Visual Studio 2008中类文件引用的默认名称空间?
  4. 微信开发学习日记(一):快速阅读5本书,掌握整体背景
  5. 4. 星际争霸之php设计模式--工厂方法模式
  6. php用json_encode编码后乱码,php json_encode()函数中文编码乱码解决方法_PHP教程
  7. (14)Verilog HDL参数:parameter
  8. Django学习之Cookie和Session
  9. python opencv3 —— findContours
  10. php 重写sessionid,PHP 重置 phpsessionid
  11. Python OpenCV显示图像并保存图像
  12. c10k java_c10k问题及其解决方案
  13. CalHypso——用于计算面积高程积分(HI)曲线的ArcGis扩展工具
  14. 元宇宙虚拟人迎来高峰期,哪个是你的最爱?
  15. 用python贴吧自动回帖_python基于selenium实现贴吧自动发帖
  16. 2019级软件工程应用与实践-人工智能快递柜(代码分析11)
  17. 2021-04-12——新特性Lambda表达式和Function函数式接口编程
  18. 欧姆龙气压传感器 2SMPB-02E程序编写
  19. freeCAD学习笔记三:复制草图中的对象
  20. 沈博研:企业家迷恋黄金投资的七大原因

热门文章

  1. 设计模式 — 结构型模式 — 适配器模式
  2. AWS — 重塑混合云
  3. 5G NGC — LMF 定位管理功能
  4. FD.io/VPP — VPP Agent — 架构设计
  5. MySQL — 索引的慢查询优化与 B+ 树
  6. Go 语言编程 — 基本数据类型
  7. Linux_自制系统服务启动脚本
  8. notepad++主题
  9. 微信小程序转百度小程序修改
  10. C# 设置Word文档保护(加密、解密、权限设置)