为什么 `sudo cp src dst` 会忽略 /etc 中的无破坏规则?

为什么 `sudo cp src dst` 会忽略 /etc 中的无破坏规则?

在使用 时,我的全局首选项alias cp='cp -iv'被忽略。sudozsh

我正在设置一个新系统,并且正在为我的用户帐户尝试 zsh。 root 用户仍然有 bash。在/etc我有:

/etc/bash.bashrc
/etc/zsh/zshenv

这两个都有上面的别名,alias cp='cp -iv'

在用户目录中,这些目录都不包含/etc全局配置中的命令。

~/.zshenv
/root/.bashrc 

如果我切换到 root 用户su -并尝试使用 copy 来破坏文件,我会得到正确的提示。cp: overwrite 'fruits/apple.txt?'家庭用户也是如此。但是,如果我sudo在 zsh 中为家庭用户执行 copy 命令,则文件会被覆盖!使用 bash 时,我以前没有遇到过这个问题,所以我不知道该去哪里查找。

答案1

sudo使用别名的解决方法,例如sudo cp...

alias sudo='sudo '

相关内容