vi 7.2 та 7.3 не існує . Є лише vi 050325 та vim 7.2 , дві повністю окремі програми з подібними функціями. Якщо ви хочете vim , введіть vim.
Причина, що ваш псевдонім не працює, полягає в тому, що псевдоніми розширюються вашою оболонкою, а оболонка не знає, що буде робити кожна програма - " sudo" бачить команду " vi myfile" як команду і " " як аргументи, і лише намагається розгорнути перше слово , " sudo", не наважуючись торкатися аргументів.
Ви можете сказати bash для розширення псевдонімів, виконуючи певні команди, додавши псевдонім, наприклад:
alias sudo="sudo "
Пробіл покаже bash, що перше слово після " sudo" - це команда, яку слід розширити - наприклад, "sudo vi ..."до " sudo vim ..." буде працювати зараз.
Відповіді, які розповідають про, /root/.bashrcє неправильними з кількох причин. По-перше, sudoвиконує задану команду без запуску оболонки. (Це можна змінити, використовуючи або , але якщо не вказано жодної опції, поведінка за замовчуванням полягає у виконанні команди безпосередньо, без оболонки.)sudo -s cmdsudo -i cmd
По-друге, bash буде розширювати псевдоніми лише тоді, коли він запускається в інтерактивному режимі, а не при запуску як , що і для чого використовується. (Знову ж таки, це можна змінити, але типовим налаштуванням є лише інтерактивне розширення псевдонімів.)bash -c cmdsudo