Использование табуляции для автодополнения не работает для определенных типов имен файлов

Puede aumentar su espacio de intercambio reduciendo primero el volumen lógico raíz para liberar espacio, que luego puede reasignar al volumen lógico de intercambio. Debe aumentar su LV de intercambio en 769 MB para llegar a 2048 MB, y su LV raíz tiene 3,1 GB libres, por lo que puede probar lo siguiente:

  1. Reduzca su raíz LV.La opción -rhace que el sistema de archivos también cambie de tamaño:lvresize -L -769M -r c1/root
  2. Desactive temporalmente su intercambio, ya que lo modificará:swapoff
  3. Cambie el tamaño de su LV de intercambio. Alternativamente, elimínelo y vuelva a crearlo utilizando la asignación contigua para que las extensiones físicas sean adyacentes entre sí para un mejor rendimiento potencial:lvresize -L +769M c1/swap
  4. Volver a activar el intercambio:swapon
1
24.03.2019, 11:39
1 ответ

Мне кажется, что Bash игнорирует =и часть перед ним при заполнении имени файла, вероятно, для поддержки длинных опций в стиле GNU, таких как --some-file=<filename>.

Например, если файлы foofooи foobarсуществуют, ввод echo asdf=f<tab>приведет к автозаполнению префикса fooи отображению двух имен файлов.

С файлом с именем asdf=xyzecho asdf=a<tab>автоматически дополнит его в части после =, дав echo asdf=asdf\=xyz.

Так что да, вам нужно экранировать =в Bash при автозаполнении имен файлов . Это не проблема для результирующей команды, однако в этом смысле она не имеет особого значения для оболочки.

С другой стороны, тильда в именах файлов, вероятно, не является проблемой. Если у вас нет пользователя с именем =+temp=+test.sh=, его следует оставить как -.

2
28.04.2021, 23:35

Теги

Похожие вопросы