bash:/etc/shells:Ubuntu 中的权限被拒绝

bash:/etc/shells:Ubuntu 中的权限被拒绝

我正在尝试将 Xonsh 添加到我的/etc/shells以使其成为我的新默认 shell,但是当我运行时sudo which xonsh >> /etc/shellsbash: /etc/shells: Permission denied我尝试使用更改权限chmod u+x /etc/shells但它会抛出changing permissions of '/etc/shells': Operation not permitted我该怎么办?

答案1

>>在执行之前,shell 可能会尝试应用输出重定向sudo,但用户 shell 没有权限这样做。

为了避免错误,以下两种配方可能会起作用:

sudo sh -c "echo $(which xonsh) >> /etc/shells"

echo $(which xonsh) | sudo tee -a /etc/shells

相关内容