sed: -e выражение #1, символ 24: неопределенная команда `s'

Вы можете использовать комбинацию zypper search, awkи xargs, чтобы удалить все пакеты из репозитория. Например:

zypper se --repo openSUSE-Tumbleweed-Debug --installed | awk '/^i(\+|\s)/ {print $3}' | xargs sudo zypper rm
0
04.11.2019, 04:20
1 ответ

Как указано в комментариях @unxnut , в вашей команде есть три экранированных одинарных кавычки \', которые не следует экранировать. Таким образом, sedне может найти соответствующую закрывающую одинарную кавычку и терпит неудачу.

Попробуйте это (с переменными в кавычках $email_temp, $email_bodyи одним sedвызовом):

sed -e 's/\$message_entry/Flex File Export completed successfully for'"$run_date"'./g'\
 -e 's/\$run_date/'"$run_date"'/g'\
 -e 's/\$flex_file_new_count/'"$flex_file_new_count"'/g'\
 -e 's/\$exported_file_count/'"$exported_file_count"'/g'\
 -e 's/\$date_data/'"$date_data"'/g'\
 -e 's/\$flex_file_old_count_data/'"$flex_file_old_count_data"'/g' "$email_temp" > "$email_body"
0
28.01.2020, 03:09

Теги

Похожие вопросы