Поменяйте порядок строк и цифр во всех строках файла, используя команду оболочки regex - PullRequest
0 голосов
/ 14 января 2019

У меня есть файл, содержащий данные следующим образом. данные здесь 0-64 и им присваивается специальный символ "=>". Ожидаемый результат также показан ниже.

array databse
(
 user_content_1=>0
 no_entry=>1
 user_content_2=>2
 user_content_2=>3`
 left=>4
 ....
 )

Я хочу вывод следующим образом.

array databse
(
  0 user_content_1
  1 no_entry
  2 user_content_2
  3 user_content_2
  4 left
  ....
 )

Спасибо

1 Ответ

0 голосов
/ 14 января 2019

Это должно сделать это:

$ perl -pe 's/(\w+)=>(\d+)/$2 $1/'

Пример запуска с вашими тестовыми данными:

$ cat dummy.txt
array databse
(
     user_content_1=>0
     no_entry=>1
     user_content_2=>2
     user_content_2=>3`
     left=>4
     ....
)

$ perl -pe 's/(\w+)=>(\d+)/$2 $1/' dummy.txt
array databse
(
     0 user_content_1
     1 no_entry
     2 user_content_2
     3 user_content_2`
     4 left
     ....
)

Вам придется работать с \w+ и \d+, если ваши реальные данные содержат больше символов, чем показано в вашем примере.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...