вывести в консоль текст со спец. символами (\\) без необходимости добавлять нечто для каждых отдельных частных случаев, чтобы вывод не изменился (\\ => \\\\)? Или флаг в echo, может альтернативный скрипт ему.
> echo -E '\\' \\
Спасибо Есть ли вариант подобный, но для двойных ковычек? В тексте используются одинарные.
Если в bash передавать, то он примет за символ экранирования перед самой командой.
Да. echo "$var"
> echo "Exa'mple te'xt" Exa'mple te'xt
Он обратные слеши же хочет в двойных кавычках.
» var="Hello! \\ ''' '' " » echo $var Hello! \ ''' '' » echo "$var" Hello! \ ''' '' Не понял.
@Centuriononon ^^
echo -E "\\ Exa'mple te'xt \\" | sed 's/\\/\\\\/g' 👹
Вот это окей, спасиб. Только -Е уже не нужен, если правильно понял.
cat <<'EOF' \\\\ EOF Так тоже сработает. Но у тебя проблема XY, если ты вручную через echo такое пишешь. Поэтому лучше сразу скажи зачем тебе это вообще?
Пхах, забавный баг: » var="\\ <-- ok; \ <-- cool" » echo $var | sed 's/\\/\\\\/g' \\ <-- ok; \\ <-- cool
А баг в чем? Ты так и не прочитал мое предыдущее сообщение)
Для ascii артов. Странно, что подобный кейс не имеет однозначного решения.
А баг в том, что при решении одной задачи появляется другая, которую я не предвидил.
Имеет - не кидать в командную оболочку символы экранирования, а кидать напрямую командам.
Кидать напрямую командам текст? О каких командах идёт речь?
Речь идёт о том, зачем тебе весь этот дроч с экранированием?
Он мне не нужен, в этом и дело :). Мне нужно вывести текст в консоль со следующими характеристиками: наличие одинарных ковычек и несколько бэкслэшей подряд.
Зачем нужно вывести текст в консоль со следующими характеристиками: наличие одинарных ковычек и несколько бэкслэшей подряд?
Почему нет? xD
Тогда почему бы тебе не набирать по 4 бекслеша, чтобы в конечном итоге получилось 2?) Почему нет?) Все равно делать же нечего)
Можно, но кейс в том, чтобы сделать это автоматизировано. Почему нет?) Все равно делать же нечего)
@Centuriononon тогда вот тебе решение. Зачем флудишь дальше?
Спасибо, идеальный вариант.
Пока не упрешься в символ переноса строки))
Обсуждают сегодня