Вопросы по теме 'command-substitution'

xargs: подстановка команды $ () на канал не работает
Я пытаюсь написать короткий сценарий и следующую команду: echo "aaa111 bbb111" | xargs -I {} echo {} | sed 's/111/222/g' возвращает aaa222 bbb222 , чего я и ожидал. Я ожидал следующей команды: echo "aaa111 bbb111" | xargs -I {} echo...
4153 просмотров
schedule 15.10.2021

установить переменную среды в GDB из вывода команды
Я пытаюсь использовать переполнение буфера в задаче, буфер получает значение из переменной среды. Я знаю, что в GDB вы можете установить переменные окружения с помощью команды: set environment username = test Однако мне нужно передать...
6948 просмотров

Родительская ловушка видна, но не запускается подоболочкой
Протестировано для Bash 5.0.2 Согласно Справочному руководству по GNU Bash , Bash выполняет раскрытие [подстановки команд], выполняя [эту] команду в среде подоболочки. Согласно The Open Group Base Specifications Issue 6 :...
272 просмотров

Расширение параметров в задаче Apache Ant exec
У меня есть сборка, которой нужна задача для запуска процесса и одна для его завершения в конце. У меня есть файл с идентификатором процесса, но я не могу понять, как заставить муравья расширить подстановку команд, чтобы передать содержимое этого...
284 просмотров
schedule 13.03.2022

В чем разница между `foo 1 2 3` и $ (foo 1 2 3) в bash?
У меня есть традиционные переменные, которые будут выводом сценария оболочки, например: A=`foo 1 2 3` Однако многие скрипты, которые я вижу, делают это: A=$(foo 1 2 3) Есть ли разница между этими двумя подходами?
22 просмотров
schedule 10.05.2022

Обратные кавычки против фигурных скобок в Bash
Когда я пошел отвечать на этот вопрос , я собирался использовать нотацию ${} , поскольку я видел здесь столько раз, что это предпочтительнее, чем обратные кавычки. Однако, когда я попытался joulesFinal=${echo $joules2 \* $cpu | bc} я...
39576 просмотров
schedule 16.05.2022

Как использовать `set -e` внутри замены команды bash?
У меня есть простой сценарий оболочки со следующей преамбулой: #!/usr/bin/env bash set -eu set -o pipefail У меня также есть следующая функция: foo() { printf "Foo working... " echo "Failed!" false # point of interest #1 true #...
777 просмотров
schedule 23.06.2022

Bash: вставить переменное содержимое в подстановку команд в качестве аргументов — как правильно цитировать?
Я действительно не нахожу решения этой проблемы: скажем, у меня есть переменная с несколькими строками, каждая строка должна быть одним аргументом в конце. line 1 line two ... Я получаю эти данные только во время выполнения, но они должны...
1190 просмотров

Как переменная Bash IFS влияет на подстановку команд?
Я пишу сценарий bash, который зацикливается на выводе подстановки команды, а затем пытается выполнить другую подстановку команды в теле цикла. Вот код: #!/usr/bin/bash IFS=$'\n' for i in $( xmllint --xpath "string(/*[local-name()='Project'])"...
2845 просмотров
schedule 19.12.2022

Подстановка команд с заменой строки
Можно ли сделать что-то вроде: echo ${$(ls)/foo/bar} Я почти уверен, что видел где-то рабочий пример чего-то подобного, но это приводит к ошибке «плохая замена». Я знаю, что есть и другие способы сделать это, но такая короткая вставка была...
3585 просмотров
schedule 19.06.2023

Командная подстановка разбивает аргументы в кавычках пробелами
Как показано ниже, подстановка команд изменяет интерпретацию аргументов командной строки в кавычках. Что происходит под капотом и есть ли обходной путь? $ cat dumpargs.sh #! /usr/bin/env bash for i in "$@" { echo "$i" } $ cat...
647 просмотров

Оболочка POSIX: экранирование продолжения строки в обратных кавычках подстановки команд
Я пишу оболочку, и меня немного смущает Спецификация оболочки POSIX . Скажем, у меня есть команда: echo "`echo "a\\ b"`" Должна ли оболочка выводить ab or a\ b ? Другими словами, удаляются ли снова продолжения строки...
708 просмотров

IFS и подстановка команд
Я пишу сценарий оболочки для чтения входных CSV-файлов и запуска java-программы соответственно. #!/usr/bin/ksh CSV_FILE=${1} myScript="/usr/bin/java -version" while read row do $myScript IFS=$"|" for column in $row do...
457 просмотров
schedule 22.03.2023

Как удалить известную последнюю часть из строки вывода команд в одну строку?
Перефразируя: я хочу использовать подстановку команд Bash и подстановку строк в одной строке. Мои настоящие команды длиннее, но нелепое использование эха здесь просто «замена» краткости и действует так же - с теми же ошибками;) Я знаю, что мы...
44 просмотров

Интерпретация между фигурными скобками в раскрытии фигурной скобки
В руководстве для начинающих по Bash Расширение фигурных скобок выполняется перед любыми другими расширениями, и в результате сохраняются любые символы, характерные для других расширений. Он строго текстовый. Bash не применяет синтаксическую...
22 просмотров