我经常编辑启动文件,例如我的.bashrc
文件
然后我将它们复制到另一个方向,例如~/Dropnot/level1/setups/bash1
有什么办法可以cp
使用别名之类的东西将这些文件保存到上述位置吗?
我目前有一个别名可以 cd 到它alias n='cd ~/Dropnot/level1/setups/bash1'
我想要一些可以处理我传递给它的任何文件的东西。
答案1
哦,是的,你可以!
打开
~/.bash_aliases
文件并在文件末尾键入以下内容(~/.bash_aliases
如果不存在则创建一个新文件):alias mycp='cp ~/.bashrc ~/Dropnot/level1/setups/bash1'
这将创建一个别名
mycp
(您可以为 指定一个不同的名称mycp
),它将您的~/.bashrc
文件复制到所需的位置。您可以创建一个包含长路径的 shell 变量,然后使用该变量代替长路径。例如,在您的
~/.bashrc
:export fav_path=/usr/share/help/nl/gnome-help/figures/
然后
source ~/.bashrc
使用cp ~/.bashrc "$fav_path"
请记住对包含空格的路径使用"
。
答案2
如果您有 GNU cp
(在 Linux 上,答案很可能是“是”),您可以使用以下-t
选项:
alias fcp="cp -t ~/Dropnot/level1/setups/bash1"
这样做fcp somefile
总是会将文件放在~/Dropnot/level1/setups/bash1
目录中。多个参数也可以工作(例如fcp somefile otherfile1
都将转到~/Dropnot/level1/setups/bash1
)
如果 GNUcp
不可用,您始终可以使用一个函数:
fcp () {
cp "$@" ~/Dropnot/level1/setups/bash1
}
答案3
你的意思是这样的吗:
alias c='cp ~/.bashrc ~/Dropnot/level1/setups/bash1'
我建议改为移动那里的文件并使用符号链接来完全避免复制:
mv ~/.bashrc ~/Dropnot/level1/setups/bash1/
ln -s ~/Dropnot/level1/setups/bash1/ ~/.bashrc
我一直在用这个点文件多年来,它对于保留备份非常有帮助。