Я использовал grep
, чтобы выяснить, существует ли конкретная строка в файле или не нравится:СЕПГ команда выдает ошибку: SED: -e выражение # 1, символ 50: незавершенная команда `S'
my $grepval=`grep "$conn[$i]" filename`;
который является правильным, но после этого я теперь хочу, чтобы удалить grepval
из файла с использованием СЭД, как это:
sed -i "s/$grepval//g" filename`;
, который дает мне ошибку command` sed: -e expression #1, char 50: unterminated
S'. Пожалуйста, помогите, как его решить.thanks
есть, вероятно, в/$ $ grepval также может быть многострочный - RC. 39 мин. Назад
SA291 КОД ОШИБКИ ---- >>> -3 ERROR_NO_RESULT_FOUND. Это мой $ grepval.I использовал другой разделитель и вот так: sed -i "s | $ grepval || g"/home /abc/Desktop/xyz.txt.but, но все равно дает мне ту же ошибку.
есть, вероятно, '/' в '$ grepval' также может быть мультилинии –
SA291 \t ERROR CODE ---- >>> -3 \t ERROR_NO_RESULT_FOUND .this мой $ grepval.I используется другой разделитель также выглядит так: 'sed -i 's | $ grepval || g" /home/abc/Desktop/xyz.txt'.but его все еще дает мне ту же ошибку – user2702225
Вопрос в том, почему вы первый grep, чтобы получить строка, затем выполнить подстановку, чтобы избавиться от этой строки? А потом выложите «sed» внутри Perl? Sheesh. Откройте файл в perl, напечатайте строки до копии файла, но не печатайте строки, соответствующие вашему значению grep. Готово. – TLP