kyopages/scripts/tests/test_sudo

47 lines
924 B
Bash
Executable File

#!/bin/bash
# $1=cmd si $2: nb de tentatives pour s'identifier, sinon 1 tentative par défaut
f__sudo(){ # 11/10/2017
local nb=1 sudo isudo
# sudo --shell bash équivalent su ?
if sudo -v &>/dev/null && [ $EUID -ne 0 ] ; then
sudo="sudo su --shell $(which bash) --preserve-environment -c "
else
sudo="su --shell $(which bash) --preserve-environment -c "
fi
[ "$2" ] && nb="$2"
for (( isudo=1 ; isudo<="$nb" ; isudo++ )); do
$sudo " $1"
[ "$?" == 0 ] && break
[ "$isudo" == "$nb" ] && return 1
done
}
file="/tmp/$$/random/dmesgx"
f__sudo "dmesg -l err; \
dmesg -l crit; \
echo $file"
echo $?
echo $$
exit 0
tester:
sudo -i eq su -
-> /root
et sudo -sudo -s eq su
-> ./ pas de changement de répertoire courant
#f__sudo "echo je suis $(whoami)"3
if ! dmesg --nopager &> /dev/null; then
echo "la commande \`dmesg\` n'est pas disponible (droits root requis?)"
else
echo "all is ok"
fi