fork download
  1. #!/bin/bash
  2.  
  3. start_timestamps=("[00:00:00:000][01-01-2024]")
  4. end_timestamps=("[23:59:59:999][31-12-2024]")
  5.  
  6. awk -v starts="${start_timestamps[*]}" -v ends="${end_timestamps[*]}" '
  7. function parsedate(date) {
  8. split(date, a, /[]:[-]+/)
  9. return a[8] "-" a[7] "-" a[6] "T" a[1] ":" a[2] ":" a[3] ":" a[4] "." a[5]
  10. }
  11. BEGIN {
  12. split(starts, start_arr, " ")
  13. split(ends, end_arr, " ")
  14. for (i in start_arr) {
  15. st[i] = parsedate(start_arr[i])
  16. et[i] = parsedate(end_arr[i])
  17. }
  18. log_count = 0
  19. }
  20. /^\[[0-9]{2}:[0-9]{2}:[0-9]{2}:[0-9]{3}\]\[[0-3][0-9]-[01][0-9]-[0-9]{4}\]/{
  21. p = parsedate($0)
  22. print("# p", p)
  23. printing = 0
  24. for (i in st) {
  25. if (p >= st[i] && p <= et[i]) {
  26. printing = 1
  27. print("# printing := 1; p >= " st[i] " && p <= ! " et[i])
  28. log_count = 1
  29. break
  30. }
  31. }
  32. }
  33. printing
  34. END {
  35. if (log_count == 0) {
  36. print "Nothing was logged at this given time frame"
  37. }
  38. }'
Success #stdin #stdout 0.01s 5288KB
stdin
[17:02:12:163][01-03-2023]some log here
a
b
c
[17:02:12:185][01-03-2023]Time taken   : 11
[17:02:12:161][01-03-2024]some log info here:
step1
step2
step3
[17:02:12:163][01-03-2024]some log here
a
b
c
[17:02:12:185][01-03-2024]Time taken   : 11
[17:02:12:163][01-03-2025]some log here
a
b
c
[17:02:12:185][01-03-2025]Time taken   : 11
stdout
# p 2023-03-01T:17:02:12.163
# p 2023-03-01T:17:02:12.185
# p 2024-03-01T:17:02:12.161
# printing := 1; p >= 2024-01-01T:00:00:00.000 && p <= ! 2024-12-31T:23:59:59.999
[17:02:12:161][01-03-2024]some log info here:
step1
step2
step3
# p 2024-03-01T:17:02:12.163
# printing := 1; p >= 2024-01-01T:00:00:00.000 && p <= ! 2024-12-31T:23:59:59.999
[17:02:12:163][01-03-2024]some log here
a
b
c
# p 2024-03-01T:17:02:12.185
# printing := 1; p >= 2024-01-01T:00:00:00.000 && p <= ! 2024-12-31T:23:59:59.999
[17:02:12:185][01-03-2024]Time taken   : 11
# p 2025-03-01T:17:02:12.163
# p 2025-03-01T:17:02:12.185