-# Sort job output into sub-directories. On large Jenkins systems that have
-# many jobs archiving so many files into the same directory makes NGINX return
-# the directory list slow.
-pushd archives/job-configs
-for letter in {a..z}
-do
- if [[ $(ls "$letter"* > /dev/null 2>&1) -eq 0 ]]
- then
- mkdir "$letter"
- find . -maxdepth 1 -type f -name "$letter*" -exec mv {} "$letter" \;
- fi
-done
-popd
+# Enable 'globbing'
+set +f
+# NGINX is very sluggish with directories containing large numbers of objects
+# Add another directory level named {a..z} and move directories to them.
+# Directories beginning with {0..9} or {A..Z} are left at the top level.
+( cd archives/job-configs
+ for letter in {a..z}; do
+ if ls -d $letter* > /dev/null 2>&1; then
+ mkdir .tmp
+ mv $letter* .tmp
+ mv .tmp $letter
+ fi
+ done
+)