rwxrob-dot/scripts/changed

20 lines
506 B
Plaintext
Raw Normal View History

2022-02-09 07:29:05 +00:00
#!/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 "$@"