strace-log-merge: enhance usage error diagnostics

* strace-log-merge: Add --help option.  Check number of arguments.
Issue an error message when no strace output was merged.
diff --git a/strace-log-merge b/strace-log-merge
index 9dc03b8..14b3bf1 100755
--- a/strace-log-merge
+++ b/strace-log-merge
@@ -1,7 +1,8 @@
 #!/bin/sh
 
-if test $# = 0; then
-	cat >&2 <<__EOF__
+show_usage()
+{
+	cat <<__EOF__
 Usage: ${0##*/} STRACE_LOG
 
 Finds all STRACE_LOG.PID files, adds PID prefix to every line,
@@ -10,19 +11,23 @@
 It is assumed that STRACE_LOGs were produced by strace with -tt[t]
 option which prints timestamps (otherwise sorting won't do any good).
 __EOF__
+}
+
+if [ $# -ne 1 ]; then
+	show_usage >&2
 	exit 1
+elif [ "$1" = '--help' ]; then
+	show_usage
+	exit 0
 fi
 
 logfile=$1
-pfxlen=${#1}
 
 for file in "$logfile".*; do
 	[ -f "$file" ] || continue
-	suffix=${file:1+$pfxlen}
-	[ "$suffix" -gt 0 ] 2> /dev/null || {
-		echo "Skipped file '$file' (bad suffix)" >&2
+	suffix=${file#$logfile.}
+	[ "$suffix" -gt 0 ] 2> /dev/null ||
 		continue
-	}
 	pid=$(printf "%-5s" $suffix)
 	# Some strace logs have last line which is not '\n' terminated,
 	# so add extra newline to every file.
@@ -30,4 +35,9 @@
 	sed "s/^/$pid /" < "$file"
 	echo
 done \
-| grep -v '^$' | sort -k2
+| sort -s -k2,2 | grep -v '^$'
+
+rc=$?
+[ $rc -eq 1 ] &&
+	echo >&2 "${0##*/}: $logfile: strace output not found"
+exit $rc