Audited scripts/stats.sh

Shellcheck pass and code cleanup.

Set stricter error handling with sh options.

Removes the for loop and cat(1) in favor of directly calling the
file with cut(1) and piping the output to a while read loop. Read
https://github.com/koalaman/shellcheck/wiki/SC2002 for more info.

Adds proper variable globbing.

Removes the large block of commented code, if this turns out to be
necessary, we can add a condition check to the script instead of
uncommenting on a per case basis.
This commit is contained in:
Patrick Marchand 2018-11-14 14:52:01 -05:00 committed by Gitea
parent cade94a7bc
commit 547235ea7e

View file

@ -1,23 +1,13 @@
#!/bin/sh #!/bin/sh
for dir in `cat /etc/proftpd/vpasswd | cut -d : -f 6`; do set -o errexit
#for dir in /home/dalleFTP/reynaud_mila; do set -o nounset
if [ -d $dir ]; then #set -x
du -s $dir | cut -f 1 >$dir/.size
chmod 644 $dir/.size
#mtime=0 cut -d : -f 6 /etc/proftpd/vpasswd | while read -r dir; do
#export IFS=$'\n' if [ -d "$dir" ]; then
#for file in `find $dir -type f -not -name .size -not -name .last-modified`; do du -s "$dir" | cut -f 1 > "$dir"/.size
# timestamp=`stat -c %Y $file` chmod 644 "$dir"/.size
# if [ $timestamp -gt $mtime ]; then
# mtime=$timestamp
# fi
#done
#unset IFS
#echo $mtime >$dir/.lastmodified
#chmod 644 $dir/.lastmodified
fi fi
done done