#!/bin/sh -efu file= handler() { local rc=$? trap - EXIT [ -z "$file" ] || rm -f -- "$file" exit $rc } trap handler EXIT HUP INT QUIT PIPE TERM file=`mktemp -t find-provides.XXXXXXXXXX` ProcessFile() { local f="$1" && shift [ -f "$f" ] || return 0 local fname="${f#$RPM_BUILD_ROOT}" fname="${fname#.}" if [ -z "${fname##/lib/klibc-*.so}" ] || [ -z "${fname##/lib64/klibc-*.so}" ]; then printf '%s\n' "$fname" >>"$file" fi } ( while IFS= read -r f; do printf '%s\n' "$f" ProcessFile "$f" done ) | "$@" LC_ALL=C sort -u < "$file"