ctdb-scripts: Simplify logic in debug_via_proc_locks()
[Samba.git] / ctdb / tests / UNIT / eventscripts / stubs / stat
blob71508f6795df635d9f8250bf39f4c5844565131e
1 #!/bin/sh
3 usage ()
5 echo "stat -c FMT FILE ..."
6 exit 1
9 format=""
11 while getopts "c:h:?" opt ; do
12 case "$opt" in
13 c) format="$OPTARG" ;;
14 \?|h) usage ;;
15 esac
16 done
17 shift $((OPTIND - 1))
19 fake_device_id ()
21 _path="$1"
23 _t=$(echo "$FAKE_FILE_ID_MAP" |
24 awk -v path="${_path}" '$1 == path { print $2 }')
25 _major_minor="${_t%:*}"
26 _major="0x${_major_minor%:*}"
27 _minor="0x${_major_minor#*:}"
28 _device_id=$((_major * 256 + _minor))
29 echo "$_device_id"
32 fake_inode ()
34 _path="$1"
36 _t=$(echo "$FAKE_FILE_ID_MAP" |
37 awk -v path="${_path}" '$1 == path { print $2 }')
38 echo "${_t##*:}"
41 if [ -n "$format" ] ; then
42 for f ; do
43 if [ ! -e "$f" ] ; then
44 continue
46 case "$f" in
47 /*) path="$f" ;;
48 *) path="${PWD}/${f}" ;;
49 esac
51 case "$format" in
52 "s#[0-9a-f]*:[0-9a-f]*:%i #%n #")
53 inode=$(fake_inode "$path")
54 echo "s#[0-9a-f]*:[0-9a-f]*:${inode} #${f} #"
56 "%d:%i")
57 device_id=$(fake_device_id "$path")
58 inode=$(fake_inode "$path")
59 echo "${device_id}:${inode}"
62 echo "Unsupported format \"${format}\""
63 usage
65 esac
66 done
68 exit
71 usage