You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
26 lines
492 B
26 lines
492 B
#!/bin/sh -f |
|
CACHE=$HOME/.dmenu_cache |
|
IFS=: |
|
|
|
qfind() { |
|
find "$@" 2>/dev/null |
|
} |
|
|
|
uptodate() { |
|
test -f $CACHE && |
|
test "$(echo "$PATH")" = "$(sed 1q "$CACHE")" && |
|
qfind $PATH -maxdepth 0 -newer $CACHE |
|
} |
|
|
|
if ! uptodate |
|
then |
|
{ |
|
echo "$PATH" |
|
qfind $PATH -type f -maxdepth 1 '(' -perm -u+x -o -perm -g+x -o -perm -o+x ')' | |
|
sed 's,.*/,,' | sort | uniq |
|
} > $CACHE.$pid |
|
mv $CACHE.$pid $CACHE |
|
fi |
|
|
|
tail -n +2 $CACHE |
|
|
|
|