这里是 bash 脚本的新手。已经为我的 bash_profile 配备了一些有用的函数来查询一些 mysql 数据库,但是在让 bash 将传递的参数识别为别名时遇到了麻烦。详情见下文:
function findfield() {
$2 -e
"SELECT TABLE_NAME,TABLE_SCHEMA,COLUMN_NAME AS 'Matched Field'
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME LIKE '$1';"
}
示例用法:
findfield %field% mpc
其中 mpc 是指向要查询的数据库的别名。此用法返回错误:
-bash: mpc: command not found
如果我只是硬编码 mpc 来代替 $2,上面的函数就可以工作——那么为什么它不能使用别名作为参数呢?