Skip to main content
2 of 4
sprintf
steve
  • 22.3k
  • 5
  • 53
  • 79

Hack one-liner version. Perhaps more suitable for Code Golf than this forum though. This generates split1, split2, split3 and so on, as filenames.

awk '{if($2>b+9999){a++;b=$2}print >"split" a}' file.txt

To have output files named split001, split002, split003, involves this extra sprintf:

awk '{if($2>b+9999){a++;b=$2}print >sprintf("split%03d",a)}' file.txt
steve
  • 22.3k
  • 5
  • 53
  • 79