Прежде всего, пожалуйста, извините мое невежество в UNIX. Я совсем новый.

У меня много много файлов sql, который содержит следующую строку

${DB_USERNAME}.${TABLE_NAME}

Может кто-нибудь, пожалуйста, скажите мне, как я могу изменить его в каждом файле, чтобы он оставался только

${TABLE_NAME}

Я попробовал следующую схему sed.

sed 's/^[^\.]\+\.//'

Но возвращает только "."

Пожалуйста, расскажите мне всю комбинацию grep и sed.

Мне нужно изменить файлы напрямую. Как я думаю, мы должны передать вывод grep в sed. помните, я нахожусь на AIX

1 ответ1

1

Почему так сложно? Если вы хотите удалить только определенную часть:

sed 's/${DB_USERNAME}.//g' < input-file > output-file

Если вы хотите пойти с чем-то вроде вашего оригинального выражения:

sed 's/^[^\.]*\.//g' < input-file > output-file

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .