ecoar em um arquivo enquanto mantém espaços de escape?

ecoar em um arquivo enquanto mantém espaços de escape?

Sem atualizar, update_historycomo posso garantir que meu arquivo de texto conterá:

hello\ world john\ doe

É assim que posso passar $greeting $namepara uma função ou comando como 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"

Responder1

Coloque as expansões dos parâmetros entre aspas duplas:

update_history "$greeting" "$name"

informação relacionada