Ubuntu16.04 使用sudo cat EOF 编辑文件,提示Permission denied错误的解决办法

Posted 丁丁爸爸的技术博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu16.04 使用sudo cat EOF 编辑文件,提示Permission denied错误的解决办法相关的知识,希望对你有一定的参考价值。

 

一、执行命令报错
在Ubuntu16.04下,使用如下命令,修改hosts主机文件,居然提示权限错误:

[email protected]:~$ sudo cat <<EOF > /etc/hosts
127.0.0.1 localhost
192.168.1.101 master1
192.168.1.102 worker1
192.168.1.103 worker2
192.168.1.104 worker3
EOF
-bash: /etc/hosts: Permission denied
[email protected]:~$

二、解决办法1

[email protected]:~$ sudo bash -c "cat > /etc/hosts" <<EOF
127.0.0.1 localhost
192.168.1.101 master1
192.168.1.102 worker1
192.168.1.103 worker2
192.168.1.104 worker3
EOF
[email protected]:~$

三、解决办法2:

[email protected]:~$ sudo tee /etc/hosts >/dev/null <<EOF
127.0.0.1 localhost
192.168.1.101 master1
192.168.1.102 worker1
192.168.1.103 worker2
192.168.1.104 worker3
EOF
[email protected]:~$

 

参考链接:
https://superuser.com/questions/340074/bash-permission-denied-issue-when-trying-to-append-to-eof

https://www.iteye.com/topic/1127130

http://www.ebanban.com/?p=677

























以上是关于Ubuntu16.04 使用sudo cat EOF 编辑文件,提示Permission denied错误的解决办法的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu 16.04安装vsftpd 并开启ftp服务

ubuntu16.04之sudo问题

ubuntu 16.04 sudo nopasswd

ubuntu16.04 安装opencv 3.3.0

Ubuntu 16.04搭建ftp服务器

在 Ubuntu 16.04 上执行命令 sudo apt-get update 后出现以下错误