如何通过BASH脚本传入countries或capitals参数打印对应国家或首都内容
解决方法
假设你的国家首都存储文件名为 country_capital.txt,可按以下步骤实现需求:
1. 编写BASH脚本
新建脚本文件 list_info.sh,内容如下:
#!/bin/bash # 校验传入参数数量 if [ $# -ne 1 ]; then echo "用法: $0 <countries|capitals>" exit 1 fi # 校验参数合法性并输出对应内容 case "$1" in "countries") # 提取第二列(国家)输出,自动忽略列之间的多余空白符 awk '{print $2}' country_capital.txt ;; "capitals") # 提取第三列(首都)输出,自动忽略列之间的多余空白符 awk '{print $3}' country_capital.txt ;; *) echo "非法参数!仅支持传入 countries 或 capitals" echo "用法: $0 <countries|capitals>" exit 1 ;; esac
2. 赋予脚本执行权限
运行命令:chmod +x list_info.sh
3. 执行测试
- 输出国家列表:
./list_info.sh countries - 输出首都列表:
./list_info.sh capitals
如果你使用的存储文件名不是
country_capital.txt,直接替换脚本中对应的文件名即可。
内容的提问来源于stack exchange,提问作者user3451894
相关产品推荐
相关产品推荐

