Как передать текст в качестве аргумента из сценария bash? - PullRequest
0 голосов
/ 15 апреля 2020

Я создаю небольшой bash скрипт, где мне нужно передать аргументы, но некоторые из этих аргументов будут иметь пробелы, потому что это предложение или что-то подобное. Я не хочу хранить эти аргументы в файле, потому что они меняются каждый раз.

Кто-нибудь может предложить элегантное решение для этого. Я новичок и не знаю много о bash!

Ответы [ 2 ]

2 голосов
/ 15 апреля 2020

Вам необходимо заключить аргументы в кавычки так, чтобы ваша программа получила один аргумент.

Вот простой пример:

#!/bin/bash

echo "$1"
echo "$2"

Если вы вызываете его так:

./script.sh  'a b' 'c d'

Вывод будет:

a b
c d

Другие посты, посвященные этому:

Почему мой скрипт оболочки задыхается от пробелов или других специальных символов? Передача аргументов с пробелами между (bash) скриптом

1 голос
/ 15 апреля 2020

Двойные кавычки вокруг строки, которую вы передаете в качестве переменной, помогут вам.

Вы можете использовать переменные окружения, набрав export VARIABLE = "the_value" и получив значение $VARIABLE

...