Хорошо.Так что я не совсем уверен, почему, но удаляю все в:
/etc/apt/sources.list.d
Исправлено. Хотя единственными вещами там были дополнения к исходному списку для менделей и возвышенного -текста.
Вздох.
Мне непонятно, хотите ли вы, чтобы 41
были включены в ваш вывод. Соответственно вот два набора опций
1. Удаление текста до41
Если вы используете bash
, вы можете использовать встроенную -для обработки переменных
line='##SHUTDOWN_MAINT##41 * * * * /vend/oracle/util/bin'
printf "%s\n" "${line#*41}"
Если вы можете гарантировать, что на линии нет других 41
, вы можете использоватьsed
line='##SHUTDOWN_MAINT##41 * * * * /vend/oracle/util/bin'
printf "%s\n" "$line" | sed 's/^.*41//'
Если у вас GNU grep
, вы можете удалить все, что следует за41
line='##SHUTDOWN_MAINT##41 * * * * /vend/oracle/util/bin'
printf "%s\n" "$line" | grep -Po '(?<=41).*'
2. Удаление текста до 41
, но без него, с использованием ##
в качестве маркера
Если вы используете bash
, вы можете использовать встроенную -в обработке переменных
line='##SHUTDOWN_MAINT##41 * * * * /vend/oracle/util/bin'
printf "%s\n" "${line#*?##}"
Если вы можете гарантировать, что на линии нет других ##
, вы можете использоватьsed
line='##SHUTDOWN_MAINT##41 * * * * /vend/oracle/util/bin'
printf "%s\n" "$line" | sed 's/^..*##//'
Если у вас GNU grep
, вы можете удалить все, что следует за##
line='##SHUTDOWN_MAINT##41 * * * * /vend/oracle/util/bin'
printf "%s\n" "$line" | grep -Po '(?<=.##).*'
Вы можете использовать sed для удаления всего до первой цифры
echo '##SHUTDOWN_MAINT##41 * * * * /vend/oracle/util/bin' | sed 's/[^0-9]*//'
Если вы хотите изменить его в файле, используйте
sed -i 's/[^0-9]*//' filename
Надеюсь, это поможет
Ура