The syntax for the sudo command is /<command> <player> <command [args]>
and its description is Make another user perform a command. With the command /sudo @a gc
you force every player to execute /gc
. Means everyone see the server usage information.
If you typed /sudo @a save-all
in the commandblock, be happy that it dosen't work because that could be ending in a server crash. (Everybody on the server is forced to execute the command /save-all
, what needs much hardware usage)
What I think that you missleading it with the sudo command from linux where the command is executed as root.
The problem why you can not execute the command /save-all
in a commandblock is because it is disabled from the server itself for security reasons.
In the Minecraft Wiki you find that information:
These commands are likely disabled due to limited use in command
blocks and the potential for severe, unintended consequences on
servers.
That counts for the commands:
ban, ban-ip, deop, kick, op, pardon, pardon-ip, save-all, save-off,
save-on, stop, whitelist add/remove/on/off/reload, debug, publish
If you really need that command, the only possibility is to use a command of a other plugin and not the original command /save-all
.
But make sure that it is executed only once! Keep in mind that griefer could use it to crash the server by expensive hardware usage if they spam the button!
Best Answer
a possible workaround might be to execute off of an entity in the nether.
something like this could work, granted there is a zombie pigman somewhere in the loaded nether (and not in the overworld...)
a more reliable way would be, to use multiple commands in quick succession to test whether or not there is a player in the nether and then execute off of them:
all of those commands can be run in this order from the console and they should work just fine.