@ -1,9 +1,30 @@ | |||||
#!/bin/sh | #!/bin/sh | ||||
CACHE=$HOME/.dmenu_cache | |||||
UPTODATE=1 | |||||
IFS=: | IFS=: | ||||
for dir in $PATH | |||||
do | |||||
for file in "$dir"/* | |||||
if test ! -f $CACHE | |||||
then | |||||
unset UPTODATE | |||||
fi | |||||
if test $UPTODATE | |||||
then | |||||
for dir in $PATH | |||||
do | do | ||||
test -x "$file" && echo "${file##*/}" | |||||
test $dir -nt $CACHE && unset UPTODATE | |||||
done | done | ||||
done | sort | uniq | |||||
fi | |||||
if test ! $UPTODATE | |||||
then | |||||
for dir in $PATH | |||||
do | |||||
for file in "$dir"/* | |||||
do | |||||
test -x "$file" && echo "${file##*/}" | |||||
done | |||||
done | sort | uniq > $CACHE | |||||
fi | |||||
cat $CACHE |