Изменить файл хоста со скриптом на Mac
Я пытаюсь добавить строку в файл hosts на Mac. Я использую команду:
sudo echo "192.168.99.100 test" >> /private/etc/hosts
Этот метод работает на Windows и Linux, но на Mac у меня нет прав для запуска, даже когда он работает в sudo
Режим.
Кто-нибудь может сказать мне, что я делаю неправильно и как я могу это исправить?
StefanJanssen
1 ответ
Пытаться echo '192.168.99.100 test' | sudo tee -a /private/etc/hosts
,
>>
это синтаксис самой оболочки, которая работает как ваш пользователь. sudo echo "192.168.99.100 test" >> /private/etc/hosts
работает echo "192.168.99.100 test"
как корень и >>
"pipe to file" запускается как ваш пользователь.
tee
это обычная команда, с которой вы можете запускать с правами root sudo
который выводит как стандартный вывод и файл, так echo 'line' | sudo tee -a file
будет делать то, что вы хотите. tee -a
добавит файл вместо перезаписи.