вывести эхо в файл, сохраняя при этом экранированные пробелы?

вывести эхо в файл, сохраняя при этом экранированные пробелы?

update_historyКак я могу гарантировать, что мой текстовый файл будет содержать :

hello\ world john\ doe

Вот как я могу передать $greeting $nameфункцию или команду как hello\ world john\ doe.


function update_history {
  history=/tmp/hist
  grep -qF "$1" "$history" \
    || (combinations=$(echo "$1" | cat - $history) \
        && echo "$combinations" > $history)
}

greeting=hello\ world
name=john\ doe

update_history "$greeting $name"

решение1

Заключите расширения параметров в двойные кавычки:

update_history "$greeting" "$name"

Связанный контент