diff options
Diffstat (limited to 'misc/mksh')
-rwxr-xr-x | misc/mksh | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/misc/mksh b/misc/mksh new file mode 100755 index 0000000..6b43300 --- /dev/null +++ b/misc/mksh @@ -0,0 +1,11 @@ +#!/bin/sh +# Sorry in advance to 'mksh' users (users of the shell, not this script) +newname() { defname="script"; name=$defname`ls | grep "^$defname[0-9]*" | wc -l | tr -d '[:blank:]'`; } # Remove blank space for certain non-GNU wc implementations +[ -z "$1" ] && newname || name="$1" +[ -z "$2" ] && shebang="#!/bin/sh" || shebang="$2" +touch "$name" +echo "$shebang" > "$name" +chmod +x "$name" +$EDITOR "$name" || vim "$name" +# Delete file if it is just exited w/o being changed +[ "`cat "$name"`" = "$shebang" ] && rm "$name" && echo "Removed empty script \"$name\"" || echo "Saved script \"$name\"" |