Завершение пути вкладки не работает (по крайней мере, в Ubuntu и AFAIK Arch) с
sudo mount <whatever>
Файл iso, который я пытаюсь смонтировать, отсутствует /etc/fstab
. Если я просто наберу
mount <whatever>
завершение работает (но, конечно, команда терпит неудачу, так как я не root). Видимо, именно sudo
это ломает.
Как можно сделать завершение работы с sudo?
Удивительно, что с
sudo umount <whatever>
Завершение работ. Как это достигается? Это смотрит в /etc/fstab
?
Решение: я просто помещаю сценарий оболочки в /usr/local/bin
эти вызовы sudo mount ...
с передаваемыми ему аргументами. Завершение работает при вызове этого скрипта, так как нет sudo
в пути.
sudo umount
. Как указывает энзотиб, эта функция нарушена,mount
и в прошлый раз, когда я проверял, она также была нарушена на Arch./etc/fstab
который начинается с / media./etc/fstab
. Не могли бы вы проверить это?Нет, это не выглядит в fstab. Завершение Bash ищет команды в пути, псевдонимы в bashrc и / или bash_profile и пути. Так что, если вы наберете что-то вроде
sudo mount /mnt/some_folder
этого, следует выполнить автозаполнение. Может быть, когда вы сделали,umount
вы были в относительном пути для пункта назначения, и он сделал автозаполнение.источник
sudo mount /mnt/some_folder
, уверен на 100%. AFAIK это не работает на Arch Linux также. Когда я сделал это,umount
я не был в относительном пути к месту назначения.Я предполагаю, что bash не хочет быть слишком сложным и оставаться переносимым, поэтому они не будут искать в / dev, чтобы предложить завершение операции монтирования.
Однако при вызове umount он может легко просмотреть вывод df / mount / etc, чтобы узнать, какие устройства смонтированы и где.
Может быть, zsh обеспечит завершение для монтирования, черт возьми, zsh, даже автозаполнение при выполнении команды scp ...
источник
/bin/bash
/home/ali
ожидаемый результат.