У меня проблема, когда я использую sed, чтобы извлечь ключевое слово из файла.
Содержание в файле, как:извлечение слова из файла с помощью sed
======================= keyword begin =======================
blablabla
======================== keyword end ========================
Тогда я:
$ sed -n 's/=* \(.*\) begin =*/\1/p' test
keyword ## It is ok
$ a=`sed -n 's/=* \(.*\) begin =*/\1/p' test`
$ echo "[$a]"
]keyword ## Why the output is like this? I think it should be [keyword]
Я просто не знаю, почему появляются '] ключевое слово.
Невозможно воспроизвести. На какой платформе вы работаете? Какая версия Bash? Он печатает '[keyword]' для меня, как и должно. –
Кажется, все в порядке, пожалуйста, проверьте свою версию Bash, как было предложено @JohnZwinck. – Skynet