使用linux命令在txt文件中设置范围
我有一个包含数字范围的文件 例: 我想把它们翻译成1234500,然后自动写出1234599之前的每个数字 有没有一种方法可以用shell实现这一点?Perl来拯救它使用linux命令在txt文件中设置范围,linux,bash,shell,scripting,centos,Linux,Bash,Shell,Scripting,Centos,我有一个包含数字范围的文件 例: 我想把它们翻译成1234500,然后自动写出1234599之前的每个数字 有没有一种方法可以用shell实现这一点?Perl来拯救它 perl -lne 'if (m{(.*) (.*)/(.*)}) { print $1, $_ for $2 .. $3 }' -n逐行读取输入 -l为每个打印添加一个换行符 m{}是匹配运算符 匹配除换行符以外的任何内容 *表示“零次或多次” 括号用于创建“捕获组” 所以,我们匹配任何东西,空间,任何东西,斜线,任何东西;
perl -lne 'if (m{(.*) (.*)/(.*)}) { print $1, $_ for $2 .. $3 }'
逐行读取输入-n
为每个-l
打印添加一个换行符
是匹配运算符m{}
匹配除换行符以外的任何内容
表示“零次或多次”*
- 括号用于创建“捕获组”
- 所以,我们匹配任何东西,空间,任何东西,斜线,任何东西;所有被记住的东西分别是1美元、2美元和3美元
是范围运算符。
perl -lne 'if (m{(.*) (.*)/(.*)}) { print $1, $_ for $2 .. $3 }'