我想为移动命令创建一个别名 -
trash='mv <some files> /home/$USER/.local/share/Trash/files'
我该如何让它工作?
我希望目的地始终相同。但我希望能够传递要移动的文件。
答案1
使用函数代替别名,定义在.bashrc
nano ~/.bashrc
# put inside .bashrc:
trash() {
for item in "$@" ; do
echo "Trashing: $item"
mv "$item" /home/$USER/.local/share/Trash/files
done
}
然后在 shell 提示符下你可以使用:
$ trash file1 file2
答案2
您只能附加参数到别名。幸运的是,mv
允许你这样做,选择-t
alias trash='mv -t ~/.local/share/Trash/files'
答案3
您还可以创建一个 bash 脚本并使用别名运行该脚本。
垃圾.sh:
#!/bin/sh
for arg in $*; do
mv $arg /home/$USER/.local/share/Trash/files
done
exit 0
.bashrc:
alias trash="/path/to/script/trash.sh"