Якщо ви надасте подвійний дефіс, досвід у вас буде ідентичним, якби ви щойно виконали sudo su
без дефісу.
Проходження одного дефіса ідентичне проходженню -l
або --login
. Сторінка man su
описує поведінку як:
Укажіть середовище, аналогічне тому, що очікував би користувач, якщо користувач увійде безпосередньо.
Сюди входить встановлення вашого каталогу в домашній каталог та встановлення купи інших змінних середовища.
Передача подвійного дефісу команді зазвичай використовується для позначення кінця прапорів командного рядка та початку аргументів не прапорця. Наприклад, якщо ви запустите, touch -R
ви отримаєте помилку про те, що -R не є варіантом touch
, але якщо ви запустите, touch -- -R
він створить файл з назвою -R
. Це стосується багатьох інструментів командного рядка ( ls -R
буде робити рекурсивний режим, ls
тоді як ls -- -R
буде виконуватись ls
у файлі чи каталозі з іменем -R
.
Отже, щоб завершити це, коли ви переходите лише --
до su
нього, це в основному ігнорувати --
та діяти так, як ви взагалі не пройшли жодного варіанту.
sudo su -
іsudo su -l
відрізняється. На рахунку де я SSH в тільки ключі, і у мене є права на зміну SUDO до конкретного іншому користувачеві,sudo su -
змінює користувач без проблем , алеsudo su -l
іsudo su --login
буде запитувати пароль SUDO, який у мене немає (хоча, розглядаючиsudo -l
I міг виконати за/bin/su
допомогою NOPASSWD)