File: regex.stp

package info (click to toggle)
systemtap 4.4-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 38,260 kB
  • sloc: cpp: 77,147; ansic: 61,828; xml: 49,277; exp: 42,244; sh: 11,046; python: 2,772; perl: 2,252; tcl: 1,305; makefile: 1,086; lisp: 105; java: 102; awk: 101; asm: 91; sed: 16
file content (14 lines) | stat: -rwxr-xr-x 495 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/usr/bin/env stap
# regex.stp
# Uses the regex functionality to detect opened files whose names
# match a pattern given on the command line. If no command line
# parameter is given, demonstrate by filtering for files that end with
# an extension showing them to be an archive.

probe syscall.open {
      if (filename =~ %($# == 0 %?
                         "(\\.tar\\.(gz|bz2|xz)|\\.zip|\\.tgz|\\.tbz)$"
                      %: @1 %) ) {
         printf ("opened %s\n", filename)
      }
}