Что такое ${@ :$ #}?

Если вы используете VMWorkstation:

Однажды я использовал GParted для увеличения моего /dev/sda1 (Ubuntu 14.04 64 ).Вот что я сделал:

  1. Скачать Исходный код GParted ISO (SourceForge).

  2. Перейдите в Настройки , найдите CD/DVD (SATA ), нажмите , используя файл ISO , и добавьте только что загруженный ISO.

  3. Запустите систему и ПРОДОЛЖАЙТЕ НАЖАТЬF2(проверьте это, может быть другое, это сложно, вы должны сделать это быстро ), или нажмите на зеленую стрелку, выберите ВКЛЮЧИТЕ БИОС(рекомендуется ).

  4. Выберите BOOT и переместите компакт-диск -ПЗУ на первый, нажмите F10 , сохраните и выйдите.

  5. Теперь подождите секунду, и вы в GParted live . (Будьте осторожны при замене памяти.)

14
08.03.2021, 14:59
1 ответ

В каждой POSIX-совместимой оболочке ,

  • $#— количество аргументов функции или скрипта, количество позиционных параметров.
  • $@— список аргументов функции или скрипта, список $1, $2и т. д. позиционных параметров.

В Баш , Кш и Зш и т. д.:

  • ${@:offset:n}— это аргументы n, начинающиеся с параметра offset, или все аргументы до конца с offset, если nотсутствует.

Таким образом, ${@:$#}— это последний аргумент, переданный рассматриваемой функции, а ${@:1:$#-1}— остальные аргументы. Последний аргумент также может быть записан${@: -1}(в версии Bash 4.3 или выше ).

25
18.03.2021, 22:27

Теги

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