我有一个用括号括起来的各种数字的file.txt:

[133,406,789] [126,234,645]


我想将方括号内的所有数字解析为单独的文件:

file1.txt:
    [133,406,789]
file2.txt:
    [126,234,645]
...
...
file50.txt: [174,874,99,21,34]


我尝试使用此命令:

cat file.txt | sed s/[/\\n/g


这是我得到的:

sed: -e expression #1, char 8: unterminated `s' command

最佳答案

如果您可以保证方括号之间没有空格,那么

awk '{n=split($0, tmp, /[[:space:]]+/); for (i=1; i<=n; i++) print tmp[i] > "file_" fno++;}'


会做的。否则,您需要使您的正则表达式更加聪明。或者,您可以查看'csplit'shell命令。

关于linux - 将位于两个字符之间的文件内容分成单独的文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18265208/

10-16 12:21