rwxrob-dot/scripts/changed
Rob Muhlestein 2ea0289e9f Rebase
2022-02-09 02:29:05 -05:00

20 lines
506 B
Bash
Executable File

#!/usr/bin/env bash
## Returns the full path to any changed files in the current directory
## or any subdirectories recursively one to a line. Useful for detecting
## changes and taking action (see onchange).
changed () {
local dir="${PWD}"
local tmpname="onchange${dir//\//-}"
local tmp="/tmp/${tmpname}"
if [[ ! -e "${tmp}" ]]; then
find "${dir}" -type f -not -path '*testdata*'
else
find "${dir}" -newer "${tmp}" -type f -not -path '*testdata*'
fi
touch "${tmp}"
}
changed "$@"