Поместите скрипт в папку /etc/profile.d/
. Размещенные там скрипты запускаются при входе в систему. Поскольку в вашем скрипте есть sudo
, вы можете использовать флаг -S
, чтобы заставить sudo
принимать пароль со стандартного ввода. Вы можете использовать:
echo "ur P@ssw0rd" | sudo -S UrCommand
Перенаправление ввода может быть хорошей идеей, когда перенаправляется и вывод команды.
В определенных обстоятельствах, когда входной файл не существует, перенаправление из него вызывает ошибку оболочки без выполнения команды и без усечения выходного файла.
С другой стороны, если входной файл передается в качестве параметра команде, способной поддерживать эту схему, оболочка выполнит перенаправление вывода, усекая выходной файл до того, как вызываемая команда сможет обнаружить несуществующий -файл. ситуация с входным файлом и ошибка. В основном это нежелательное поведение.
Например
foo@bar:~$ seq 1 5 >out_file
foo@bar:~$ cat out_file
1
2
3
4
5
foo@bar:~$ cat non-existent-file >out_file
cat: non-existent-file: No such file or directory
foo@bar:~$ cat out_file
foo@bar:~$ seq 1 5 >out_file
foo@bar:~$ cat out_file
1
2
3
4
5
foo@bar:~$ cat <non-existent-file >out_file
bash: non-existent-file: No such file or directory
foo@bar:~$ cat out_file
1
2
3
4
5