我正在为Mojave和Sierra编写一个bash脚本,用于设置基座的大小。我在外壳上使用sudo ./name_of_script,而我正在实现的bash命令是:“默认写com.apple.dock tileize -int 60; killall Dock”。可能存在权限冲突。
我已经在测试脚本上测试了“默认写com.apple.dock tileize -int 60; killall Dock”命令,但是我注意到它不需要对它进行伪装。我每次跑步“ sudo ./name_of_script”坞站的大小不受影响,但是一旦我删除了sudo部分,它就会受到影响。这是我脚本中需要sudo权限的其他一些功能。
bash代码:
#!/bin/bash
defaults write com.apple.dock tilesize -int 60; killall Dock
checkIfRoot 2> /dev/null
main
shell命令:
sudo ./script_name
期望:通过在外壳中运行sudo ./script_name文件命令来更改Mojave和Sierra上的停靠栏大小
答案 0 :(得分:0)
代替此:
defaults write com.apple.dock tilesize -int 60; killall Dock
尝试一下(假设您的用户名是jdoe
):
sudo -u jdoe "defaults write com.apple.dock tilesize -int 60; killall Dock"