如何在Bash中设置别名实现向CURL命令追加自定义参数
Bash 实现带参数的 qrcode 命令别名
基础无依赖实现
直接在你的 ~/.bashrc 或 ~/.bash_profile 配置文件中添加以下函数:
qrcode() { curl "qrenco.de/$1" }
保存文件后执行 source ~/.bashrc 让配置立即生效,之后直接输入 qrcode google.com 即可完成原有需求。如果需要传入带空格的内容,用引号包裹参数即可:qrcode "自定义文本内容"。
原有配置失效原因
Bash 的别名(alias)设计仅支持命令前缀替换,无法直接处理后续传入的位置参数。你编写的 $(read) 逻辑是等待从标准输入手动输入内容,和读取命令后跟随的参数逻辑完全不匹配,因此无法正常运行。
可选优化版本(支持特殊字符内容)
如果你需要生成包含特殊符号、多段空格的网址/文本的二维码,可以添加URL编码逻辑避免解析出错,该版本需要提前安装 jq 工具:
qrcode() { local encoded_content=$(printf '%s' "$*" | jq -sRr @uri) curl "qrenco.de/$encoded_content" }
内容的提问来源于stack exchange,提问作者Manoj
相关产品推荐
相关产品推荐

