aboutsummaryrefslogtreecommitdiffstats
path: root/examples/functions/lowercase
diff options
context:
space:
mode:
Diffstat (limited to 'examples/functions/lowercase')
-rw-r--r--examples/functions/lowercase27
1 files changed, 27 insertions, 0 deletions
diff --git a/examples/functions/lowercase b/examples/functions/lowercase
new file mode 100644
index 0000000..3cf6bde
--- /dev/null
+++ b/examples/functions/lowercase
@@ -0,0 +1,27 @@
+#! /bin/bash
+#
+# original from
+# @(#) lowercase.ksh 1.0 92/10/08
+# 92/10/08 john h. dubois iii (john@armory.com)
+#
+# conversion to bash v2 syntax done by Chet Ramey
+
+lowercase()
+{
+ for file; do
+ [ -f "$file" ] || continue
+ filename=${file##*/}
+ case "$file" in
+ */*) dirname=${file%/*} ;;
+ *) dirname=.;;
+ esac
+ nf=$(echo $filename | tr A-Z a-z)
+ newname="${dirname}/${nf}"
+ if [ "$nf" != "$filename" ]; then
+ mv "$file" "$newname"
+ echo "lowercase: $file -> $newname"
+ else
+ echo "lowercase: $file not changed."
+ fi
+ done
+}