如何默认使用 cp -i 为 cp 指定别名

如何默认使用 cp -i 为 cp 指定别名

有没有一个好方法将命令别名cp file1 file2cp -i file1 file2

答案1

您应该在启动脚本中添加一个别名:

alias cp='cp -i'

你可以直接把它放进去~/.bashrc,但我把它放在我的~/.bashrc

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

~/.bash_aliases有:

alias realias='source ~/.bash_aliases'
alias cp='cp -i'
alias rm='rm -i'

当我向该文件添加/更改内容时,我会执行此操作realias(这不会从您出于该用途而取出的正在运行的 shell 中删除别名unalias)。

如果您这样做man bash并搜索别名,您将找不到示例,但:

For almost every purpose, aliases are superseded by shell functions
The (`bash`) shell function alternative for the above alias is:

cp () { command cp -i "$@" ; }

shell 函数更强大,但对于简单的事情,别名就足够了。
我仍然倾向于使用它们。

答案2

如果您使用的是 bash,Anthon 和 michas 的答案就可以正常工作。但是,如果您使用 csh 或 tcsh,则添加命令将为

alias cp "cp -i"

然后您将其添加到您的.cshrc文件中。

答案3

 alias cp="cp -i"

将此行放入 shell 启动脚本中。 (可能~/.bashrc)

相关内容