bash - Bash 脚本;x.sh 脚本中的别名命令
问题描述
我正在尝试使用 bash 编写一个简单的脚本,该脚本必须采用两个变量:名称和命令;然后在“别名”命令中应用这两个变量,如下所示:别名 $1=$2。
这是一个在线学校活动,教授 bash 脚本的介绍。
我想出的是:
function doalias {
alias $1=$2
}
doalias $1 $2
接下来我要做的是在终端中写入 ./doalias.sh inst "sudo apt-get install"。
现在我从 bash 终端得到的消息是“=”未被识别为命令。为什么会这样,我该如何解决?
解决方案
在执行别名命令时,您需要将传递的参数放在引号中,因此:
function doalias {
alias "$1=$2"
}
doalias "$1" "$2"
要在当前 shell 中设置别名,您需要获取脚本,因此:
source doalias.sh inst "sudo apt-get install"
推荐阅读
- html - 我怎样才能像我发送的图像一样制作页眉和页脚..?
- apache-spark - Spark应用程序与作业与阶段与任务之间的区别?
- java - 如何以编程方式和注入安全的方式创建数据库?
- javascript - JS:检查javascript中两个数组之间的差异
- c# - System.ObjectDisposedException:无法访问已处置的对象。对象名称:“无法访问已关闭的文件。”
- java - 即使应用程序被杀死而无需重新启动服务,如何使用 WorkManager 下载文件?
- mysql - 我想在 SQL 查询中显示总工作时间和分钟数
- ios - Swift:多个 TableView 复选标记 - 选择所有行
- dynamics-crm - 在 Dynamics 9.0 中的“交互式体验案例”表单中隐藏“相关”选项卡
- cumulocity - 使用 MQTT 进行设备集成