Используйте переменную bash в команде подстановки с этим форматированием, используя JSON

0

Вопрос

У меня есть сценарий bash, в котором время от времени меняется одна из частей команды.
Поэтому я попытался изменить сценарий, чтобы мы могли попросить об этом, или изменить только одну часть и т. Д., Но на самом деле не смог этого сделать.

Если я напишу это, это сработает:

#!/bin/bash
changing_stuff='"Active-2021-xy Part YX"'
total_number=`Command_xy show base name "Active-2021-xy-yz Part YX" limit 1 --format json | jq '.total'`


Я использовал"""", потому что, как вы видите в исходной команде, для этой части требуется"".
Как я мог добавить changing_stuff в середину сценария?
Большое спасибо!

bash linux shell
2021-11-23 14:45:52
2

Лучший ответ

1

Должно сработать следующее. Нет необходимости добавлять цитаты в свой changing_stuff переменная. Размещение кавычек вокруг переменной при ее использовании приводит к тому, что все значение (включая пробелы) передается в качестве одного аргумента Command_xy.

#!/bin/bash
changing_stuff='Active-2021-xy Part YX'
total_number=`Command_xy show base name "$changing_stuff" limit 1 --format json | jq '.total'`
2021-11-23 15:06:37
1

Вы, кажется, ищете тривиальное

#!/bin/bash
changing_stuff='Active-2021-xy Part YX'
total_number=`Command_xy show base name "$changing_stuff" limit 1 --format json | jq '.total'`

Кавычки-это просто механизм для хранения строки с пробелами в качестве единственного аргумента в обоих местах.

(По касательной, вы также хотите заменить обратные ссылки современным синтаксисом подстановки команд:)

#!/bin/bash
changing_stuff='Active-2021-xy Part YX'
total_number=$(Command_xy show base name "$changing_stuff" limit 1 --format json | jq '.total')
2021-11-23 15:06:59

На других языках

Эта страница на других языках

Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

Популярное в этой категории

Популярные вопросы в этой категории