diff --git a/data/helpers.d/user b/data/helpers.d/user index f5d4b1680..201444f32 100644 --- a/data/helpers.d/user +++ b/data/helpers.d/user @@ -166,24 +166,16 @@ ynh_system_user_delete () { # Execute a command as another user # -# usage: ynh_exec_as --user=USER --command=COMMAND [ARG ...] -# | arg: -u, --user= - the user that will execute the command -# | arg: -n, --command= - the command to be executed +# usage: ynh_exec_as $USER COMMAND [ARG ...] # # Requires YunoHost version 4.1.7 or higher. -ynh_exec_as() -{ - # Declare an array to define the options of this helper. - local legacy_args=uc - local -A args_array=( [u]=user= [c]=command= ) - local user - local command - # Manage arguments with getopts - ynh_handle_getopts_args "$@" +ynh_exec_as() { + local user=$1 + shift 1 if [[ $user = $(whoami) ]]; then - eval "$command" + eval "$@" else - sudo -u "$user" "$command" + sudo -u "$user" "$@" fi }