![在 zsh 中设置别名,存储附加信息](https://linux22.com/image/1478315/%E5%9C%A8%20zsh%20%E4%B8%AD%E8%AE%BE%E7%BD%AE%E5%88%AB%E5%90%8D%EF%BC%8C%E5%AD%98%E5%82%A8%E9%99%84%E5%8A%A0%E4%BF%A1%E6%81%AF.png)
我正在尝试在 zsh 中构建三个别名。jc、g1、g2、
jc arg1 arg2
与命令相同
cp -r arg1 arg2
和g1
cd arg1
和
g2
是相同的cd arg2
我的想法是,我完全放弃使用 cp,而使用 jc,但是这样我就可以使用 g1 或 g2 将自己移动到那里,而不是 cd 到 arg1 或 arg2。
我该如何做呢?
答案1
因此,如果我理解正确的话,您需要使用一个命令 cp 然后 cd 进入复制的目录。
我认为最简单的方法是将以下内容添加到您的.bashrc
或.zshrc
文件中:
function cpcd {
command (cp -R $1 $2) && (cd $1)
}
确保如果执行失败,&&
您不会遇到任何问题。和是传递给命令的参数。cd
cp
$1
$2
cpcd
请记住,当您复制非目录的内容时,这将产生未定义的行为。