很多年后,我要尝试一下。我有过
alias rsync='rsync -av --progress --stats --human-readable'在我的bash .profile里还有很多类似的别名
alias workin='function _workin(){ rsync -avE --progress --stats --human-readable -e ssh me@$1:/there/ /here; };_workin'我一直想不出如何让这个在zsh工作。我总是犯“找不到匹配”的错误。有什么想法吗?提前感谢!
发布于 2017-06-15 12:20:53
在bash和zsh中,解决方案是完全不使用别名。
workin () {
rsync -avE --progress --stats --human-readable -e ssh me@"$1":/there/ /here
}(您是否需要引用$1取决于您正在使用的设置;zsh有点太可配置了。但是,引用它不会有什么影响,所以我会在这里这样做。)
发布于 2017-06-13 23:41:36
我不知道为什么要在bash中使用别名中的函数:那是很久以前的事了,习惯很难改变。123梅尔波涅在评论中给我指明了方向,所以如果有人想用zsh来做同样的事情,下面是一个更好的方法的StackExchange解释:https://unix.stackexchange.com/questions/33255/how-to-define-and-load-your-own-shell-function-in-zsh
https://stackoverflow.com/questions/44532723
复制相似问题