--- /dev/null
+#!/bin/bash
+
+#!/bin/bash
+
+if [[ -z $1 ]]; then
+ echo "Usage: $(basename "$0") <Suchbegriff>"
+ exit 1
+fi
+
+pattern=$1
+
+find . -type f -name '*.zip' -print0 |
+while IFS= read -r -d '' zip; do
+ result=$(unzip -Z1 "$zip" 2>/dev/null | grep -i -- "$pattern")
+ if [[ -n $result ]]; then
+ printf '\n=== %s ===\n%s\n' "$zip" "$result"
+ fi
+done
+
--- /dev/null
+#!/bin/bash
+
+echo "=== global ==="
+sudo grep . /sys/kernel/debug/zswap/{stored_pages,pool_total_size,written_back_pages}
+
+echo
+echo "=== session ${XDG_SESSION_ID:-?} ==="
+if [ -n "$XDG_SESSION_ID" ] && [ -r "/sys/fs/cgroup/$XDG_SESSION_ID/memory.stat" ]; then
+ grep -E '^(zswap|zswapped|zswpin|zswpout|zswpwb) ' \
+ "/sys/fs/cgroup/$XDG_SESSION_ID/memory.stat"
+else
+ echo "keine passende XDG-Session-cgroup gefunden"
+fi
+
+echo
+echo "=== portage ==="
+grep -E '^(zswap|zswapped|zswpin|zswpout|zswpwb) ' \
+ /sys/fs/cgroup/openrc.portage-cgroup/memory.stat
+echo
+
+echo "=== top zswap users ==="
+echo "size_compr size_uncomp service"
+sudo find /sys/fs/cgroup -name memory.stat -type f -print0 |
+while IFS= read -r -d '' f; do
+ zswap=$(awk '$1=="zswap" {print $2}' "$f")
+ zswapped=$(awk '$1=="zswapped" {print $2}' "$f")
+
+ [ "${zswapped:-0}" -gt 0 ] || continue
+ [ "$f" = "/sys/fs/cgroup/memory.stat" ] && continue
+
+ printf '%10d %10d %s\n' \
+ "$zswap" "$zswapped" "${f%/memory.stat}"
+done | sort -k2 -nr
+