Usare bash variabile in sostituzione di comando con questa formattazione, con JSON

0

Domanda

Ho uno script bash in cui uno dei parte di un comando cambia di volta in volta.
Così ho provato a modificare lo script, in modo da poter chiedere, in una parte soltanto, ecc.... ma non si può davvero fare.

Se scrivo questo, funziona:

#!/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'`


Ho usato '" "' perché, come si vede nel comando originale richiede " " per quella parte.
Come posso aggiungere il changing_stuff nel mezzo dello script?
Grazie mille!

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

Migliore risposta

1

Il seguente dovrebbe funzionare. Non c'è bisogno di aggiungere cita nel tuo changing_stuff variabile. Mettere le virgolette intorno alla variabile quando si utilizza provoca l'intero valore (spazi inclusi) per essere passato come un unico argomento 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

Ti sembra di essere alla ricerca per il più banale

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

Le citazioni sono semplicemente un meccanismo per tenere la stringa con spazi come un unico argomento, in entrambi i luoghi.

(Tangenzialmente, anche voi volete sostituire gli apici inversi con moderne per la sostituzione di comando sintassi:)

#!/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

In altre lingue

Questa pagina è in altre lingue

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