Shell脚本读取TXT姓名文件 实现调用名变量执行echo输出对应姓氏
Shell脚本实现名字变量直接输出姓氏的方案
需求说明
现有存储姓名的TXT格式文件,要求无需定义单一变量存储所有值,执行echo $小写名字命令时直接输出对应姓氏。
测试用File.txt内容如下:
Fox chasin
Sandra jhonsan
Nancy linoy
预期效果:执行echo $fox输出chasin
实现代码
将以下代码添加到你的Shell脚本中,或直接在当前终端执行即可生效:
while read -r first_name last_name; do declare "${first_name,,}=$last_name" done < File.txt
效果验证
执行对应变量输出命令即可得到结果:
echo $fox→ 输出chasinecho $sandra→ 输出jhonsanecho $nancy→ 输出linoy
注意要点
- 代码依赖Bash 4.0及以上版本,内置的小写转换语法
${变量,,}需要该版本支持 - 若需要每次打开终端都生效,可将上述代码追加到
~/.bashrc文件中
内容的提问来源于stack exchange,提问作者Fox Chasin
相关产品推荐
相关产品推荐

