使用 linux 命令在 txt 文件中设置范围

Setting up a Range in txt file with linux commands

我有一个包含数字范围的文件

例如:

12345 00/99
123456 20/80

我想将它们翻译成 1234500 并自动写入每个数字,直到 1234599。

有没有办法用 shell 做到这一点?

Perl 来拯救!

perl -lne 'if (m{(.*) (.*)/(.*)}) { print , $_ for  ..  }'
  • -n逐行读取输入
  • -l 为每个 print
  • 添加一个换行符
  • m{}是匹配运算符
  • . 匹配除换行符以外的任何内容
  • *表示"zero or more times"
  • 括号创建 "capture groups"
  • 所以,我们匹配任何东西,space,任何东西,斜杠,任何东西;所有的东西都分别记在 $1、$2 和 $3 中
  • ..是范围运算符