Может ли кто-нибудь объяснить мне, почему echo 'test \'hi\'' > test не работает? Он не пишет hi в test файла. Одиночные кавычки, похоже, правильно экранированы, не так ли?
Благодарю.
Вы не можете вставлять одинарные кавычки в одинарные кавычки. Вместо этого вы должны помещать и экранировать одинарные кавычки за пределами строки в кавычках.
Например:
echo 'test '\''hi'\' > test
Это пишет:
test из 'test ' (с одним пробелом после слова test - подсветка синтаксиса не отражает это здесь ...)\' быть написанным как буквальная цитатаhi от 'hi' .\' быть написанным как буквальная цитатаtest 'hi' записывается в файл с именем test .