Как проверить, $*пусто ли? Другими словами, как проверить, не было ли аргументов
Как проверить, $*пусто ли? Другими словами, как проверить, не было ли аргументов
Для сценария Bash я могу использовать "$@"для доступа к аргументам. Какой эквивалент, когда я использую
Скажем, когда я выполняю команду ls, результат будет: file1 file2 file3 file4 Можно ли отобразить только определенный столбец вывода, в данном случае file2? Я пробовал следующее безуспешно: echo ls | $2 По сути, все, что я хочу сделать, это отобразить только второй столбец, в этом случае я хочу...
У меня есть массив «опций» команды. my_array=(option1 option2 option3) Я хочу вызвать эту команду в скрипте bash, используя значения из массива в качестве параметров. Итак, command $(some magic here with my_array) "$1"становится: command -option1 -option2 -option3 "$1" Как я могу это сделать?...
Я думал, что это будет просто - но это оказывается сложнее, чем я ожидал. Я хочу перебрать все файлы определенного типа в каталоге, поэтому я пишу это: #!/bin/bash for fname in *.zip ; do echo current file is ${fname} done Это работает до тех пор, пока в каталоге есть хотя бы один соответствующий...
Я очень озадачен следующими регулярными выражениями, которые я нашел в сценарии оболочки: ${0##*/} ${0%/*} Как они
Я наблюдаю странное поведение при использовании set -e( errexit), set -u( nounset) вместе с ловушками ERR и EXIT. Они кажутся взаимосвязанными, поэтому разумно их объединить. 1) set -uне запускает ERR-ловушки Код: #!/bin/bash trap 'echo "ERR (rc: $?)"' ERR set -u echo ${UNSET_VAR} Ожидается: вызов...
В командной строке я часто использую «простые» команды, такие как mv foo/bar baz/bar но я не знаю, как назвать все части этого: ┌1┐ ┌──2───┐ git checkout master │ └──────3──────┘ └───────4─────────┘ Я (кажется, я) знаю, что 1 - это команда, а 2 - аргумент, и я бы, вероятно, назвал 3 списком...
Как я могу получить часть $@в Bash без необходимости сначала копировать все позиционные параметры в другой массив, как этот? argv=( "$@" ) echo
Согласно документации, использование vga=параметра ядра устарело с GRUB2. Тот факт, что некоторые новые ядра больше не поддерживают его на определенных адаптерах, не имеет значения, поскольку моей видеокарте уже семь-восемь лет. Проблема в том, что я хотел бы использовать текстовый режим с более...
Я пытаюсь создать метод функции в скрипте bash, который выполняет команду, которая передается методу в параметрах. Имея в виду что-то вроде этого: special_execute() { # Some code # Here's the point where the command gets executed $@ # More code } special_execute echo "abc" Я уже пробовал я $@,...
Я хотел бы написать функцию, которую я могу вызвать из скрипта с множеством различных переменных. По некоторым причинам у меня много проблем с этим. Примеры, которые я читал, всегда используют глобальную переменную, но это не сделает мой код более читабельным, насколько я могу видеть. Пример...
Что делает вывод echo $-1, echo $-2, echo $-3.. значит? На одной из моих коробок Linux он показывает мне: echo $-1 imsBEl1 echo $-2 imsBEl2 И на другой коробке Linux, это показывает: echo $-1 himBH1 echo $-2 himBH2 Они отображают некоторые области памяти или что-то...
Этот вопрос носит общий характер и применим не только к моей ситуации, но ... У меня есть небольшое устройство busybox, где я хочу, чтобы пользователь без полномочий root мог выполнять определенный сценарий с привилегиями пользователя root. Например, что-то вроде этого небольшого скрипта для...
Например, если у меня есть скрипт ./foo, который принимает 10 параметров, и я хочу передать только 8-й параметр. В настоящее время я знаю, как это сделать: ./foo '' '' '' '' '' '' '' 'bar' Есть ли более простой / лучший...
Я немного застрял. Моя задача - напечатать аргументы моего сценария в обратном порядке, кроме третьего и четвертого. Что у меня есть этот код: #!/bin/bash i=$# for arg in "$@" do case $i in 3) ;; 4) ;; *) eval echo "$i. Parameter: \$$i";; esac i=`expr $i - 1` done Поскольку я ненавижу eval (привет...
У меня есть функция для быстрого создания новой ветки SVN, которая выглядит так function svcp() { svn copy "repoaddress/branch/$1.0.x" "repoaddress/branch/dev/$2" -m "dev branch for $2"; } Который я использую, чтобы быстро создать новую ветку без необходимости искать и копировать, вставлять адреса...
Как мне это сделать: set foo bar baz unset # Something else here echo $# # Should ouput 0 Поступая set "", $#все равно будет 1 , а не
Краткое изложение вопроса: Существует ли встроенный метод bash для подсчета количества элементов в массиве bash, где имя массива является динамическим (т.е. хранится в переменной), не прибегая к созданию полной копии массива или его использованию eval? Дополнительная информация: Используя...
Можно ли ссылаться на индексы в $@? Я не могу найти какую-либо ссылку для использования, как, например, в вики-сайте GrayCat , и Руководство по расширенному написанию сценариев и другие присваивают его другой переменной, прежде чем изменять ее. $ echo ${@[0]} -bash: ${@[0]}: bad substitution Цель -...