Použitie bash premennej v príkazových s týmto formátovanie, s JSON

0

Otázka

Mám bash skript, kde jedna časť v príkazovom z času na čas mení.
A tak som sa snažil zmeniť skript, tak by sme sa mohli opýtať na to, alebo zmeniť na jednej strane len, atď., ale nemôžem to urobiť.

Ak som sa napísať tento, to funguje:

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


Použil som '" "' , pretože ako vidíte, v pôvodnom príkaz vyžaduje, " " , pre túto časť.
Ako by som mohol pridať changing_stuff do stredu skript?
Ďakujeme!

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

Najlepšiu odpoveď

1

Takto by mal fungovať. Nie je potrebné pridať do svojho citáty changing_stuff variabilný. Uvedenie citácie okolo premennej pri použití spôsobuje celú hodnotu (vrátane medzier) byť odovzdané ako jeden argument na 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

Zdá sa, že pri pohľade na triviálne

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

Úvodzovky sú jednoducho mechanizmus pre vedenie reťazec s priestory v tom, ako jeden argument, na oboch miestach.

(Tangenciálne, chcete tiež nahradiť backticks s moderným príkaz nahradenia syntax:)

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

V iných jazykoch

Táto stránka je v iných jazykoch

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