# cat test.sh
#!/bin/sh
whoami
ls -alsh /home/erik/bar
ls -alsh /home/erik/foo
sudo -u erik whoami
sudo -u erik sh -c "echo foo > /home/erik/bar"
sudo -u erik sh -c "echo foo" > /home/erik/foo
ls -als /home/erik/bar
ls -als /home/erik/foo
whoami
root@dhcp-10-18-194-234:~/script#
root@dhcp-10-18-194-234:~/script#
root@dhcp-10-18-194-234:~/script# sh test.sh
root
ls: cannot access '/home/erik/bar': No such file or directory
ls: cannot access '/home/erik/foo': No such file or directory
erik
4 -rw-r--r-- 1 erik erik 4 Jul 30 09:07 /home/erik/bar
4 -rw-r--r-- 1 root root 4 Jul 30 09:07 /home/erik/foo
root
root@dhcp-10-18-194-234:~/script#
Tu vois, le probleme de melanger les commandes de deux utilisateur est qu'il est tres facil d'oublier quel utilisateur fais quoi le deuxieme echo est executer en temps que l'utilisateur mais la redirection est fait en temps que root.
Comme c'est facil de mal faire des choses, je penses que c'est tres souvent mieux de separer les commandes dans des scripts differents.