diff options
-rw-r--r-- | ISSUES.markdown | 2 | ||||
-rwxr-xr-x | bin/sqs | 11 | ||||
-rwxr-xr-x | bin/stex | 8 |
3 files changed, 18 insertions, 3 deletions
diff --git a/ISSUES.markdown b/ISSUES.markdown index e5a84a79..a47092bf 100644 --- a/ISSUES.markdown +++ b/ISSUES.markdown @@ -16,5 +16,3 @@ Known issues it would be great, probably using ImageMagick import(1) * sxhkd(1) might be nicer than xbindkeys; it's in Debian Testing now * I don't think that the the timeout for dmp(1df) is working -* stex(1df) and sqs(1df) both overwrite files without checking, which is a - bit rude @@ -1,9 +1,10 @@ #!/bin/sh # Chop a trailing query string off filenames +self=sqs # Check args if [ "$#" -eq 0 ] ; then - printf >&2 'Need a filename\n' + printf >&2 '%s: Need a filename\n' "$self" exit 2 fi @@ -17,6 +18,14 @@ for sn ; do # Ignore this file if its name wouldn't change [ "$sn" != "$dn" ] || continue + # Ignore this file if its name already exists (don't overwrite) + if [ -e "$dn" ] ; then + printf >&2 '%s: File named %s already exists\n' \ + "$self" "$dn" + ex=1 + continue + fi + # Attempt a rename, flag an error if there was one mv -- "$sn" "$dn" || ex=1 done @@ -21,6 +21,14 @@ for sn ; do # Ignore this file if its name wouldn't change [ "$sn" != "$dn" ] || continue + # Ignore this file if its name already exists (don't overwrite) + if [ -e "$dn" ] ; then + printf >&2 '%s: File named %s already exists\n' \ + "$self" "$dn" + ex=1 + continue + fi + # Attempt a rename, flag an error if there was one mv -- "$sn" "$dn" || ex=1 done |