Могу ли я использовать sed для управления переменной в bash?
В моей программе я хотел бы сначала ввести пользовательский ввод и вставить \ перед каждым /
поэтому я пишу это, но это не работает.
echo "input a website"
read website
sed '/\//i\/' $website
Ответ 1
Попробуйте следующее:
website=$(sed 's|/|\\/|g' <<< $website)
Bash действительно поддерживает такой вид замены изначально:
${parameter/pattern/string} - замените первое совпадение pattern на string. ${parameter//pattern/string} - замените все соответствия pattern на string.