Ste*_*fen 5 syntax bash function
通常在移动文件时,我需要稍后相反.所以在我的.bashrc中我包含了这个工作代码:
rmv() {
mv $2/${1##*/} ${1%/*}
}
Run Code Online (Sandbox Code Playgroud)
现在我想知道为什么我不能把它写成一个单一的班轮.这是我试过的:
rmv() {mv $2/${1##*/} ${1%/*}}
Run Code Online (Sandbox Code Playgroud)
如果我这样做,我会收到此错误:
-bash: .bashrc: line 1: syntax error near unexpected token `{mv'
Run Code Online (Sandbox Code Playgroud)
rua*_*akh 25
在Bash中,{不会自动将其识别为特殊/单独的令牌.所以你需要{和之间的空格mv.
另外:
}需要成为命令的开始; 因此,如果它不在自己的行上,则需要;终止上一个命令.所以:
rmv() { mv "$2/${1##*/}" "${1%/*}" ; }
Run Code Online (Sandbox Code Playgroud)