在 Mac 上使用脚本更改主机文件
Change host file with script on Mac
我正在尝试向 mac 上的主机文件追加一行。
我使用的命令是:
sudo echo "192.168.99.100 test" >> /private/etc/hosts
此方法在 windows 和 linux 上有效,但在 Mac 上我没有 运行 的权限,即使 运行 宁它在 sudo
模式下。
任何人都可以告诉我我做错了什么以及如何解决这个问题吗?
斯特凡詹森
尝试echo '192.168.99.100 test' | sudo tee -a /private/etc/hosts
。
>>
是 shell 本身的语法,运行ning 作为您的用户。 sudo echo "192.168.99.100 test" >> /private/etc/hosts
运行s echo "192.168.99.100 test"
作为 root 并且 >>
"pipe to file" 是 运行 作为您的用户。
tee
是一个普通命令,您可以 运行 作为 root 使用 sudo
输出到标准输出和文件,因此 echo 'line' | sudo tee -a file
将执行您想要的操作。 tee -a
将追加到文件而不是覆盖它。
我正在尝试向 mac 上的主机文件追加一行。 我使用的命令是:
sudo echo "192.168.99.100 test" >> /private/etc/hosts
此方法在 windows 和 linux 上有效,但在 Mac 上我没有 运行 的权限,即使 运行 宁它在 sudo
模式下。
任何人都可以告诉我我做错了什么以及如何解决这个问题吗?
斯特凡詹森
尝试echo '192.168.99.100 test' | sudo tee -a /private/etc/hosts
。
>>
是 shell 本身的语法,运行ning 作为您的用户。 sudo echo "192.168.99.100 test" >> /private/etc/hosts
运行s echo "192.168.99.100 test"
作为 root 并且 >>
"pipe to file" 是 运行 作为您的用户。
tee
是一个普通命令,您可以 运行 作为 root 使用 sudo
输出到标准输出和文件,因此 echo 'line' | sudo tee -a file
将执行您想要的操作。 tee -a
将追加到文件而不是覆盖它。