feat(user/bkphotorights):Run command array with error reporting
[BK-2020-03.git] / unitproc / bkt-randFloat
index 138653f0838aea890d77de0014991c637913adbc..7d61707ba6887c42b0117eeb3b2758154c76f92a 100644 (file)
@@ -2,11 +2,11 @@
 
 #==BEGIN Function Definitions==
 randFloat() {
-    # Desc: Output random float with no newline
+    # Desc: Output random float
     # Usage: randFloat arg1
     # Inputs: arg1: number of decimal places
     # Output: stdout: float as decimal string
-    # Version: 0.0.1
+    # Version: 0.1.1
     # Note: Outputs float from 0.000... to 0.999...
     # Note: Default number of decimals is 5.
     # Ref/Attrib: Integer test regular expression https://stackoverflow.com/a/806923
@@ -21,16 +21,19 @@ randFloat() {
            echo "ERROR:Not an integer." >&2; exit 1;
        fi;
     else
-       echo "ERROR:Invalid number of arguments:${@}";
+       echo "ERROR:Invalid number of arguments:${*}";
     fi;
 
     # Produce output
-    decimals="$(head -c ${arg1:-5} < <(LC_ALL=C tr -cd "[:digit:]" < <(cat /dev/urandom)))";
-    echo 0."$decimals";
-}
+    decimals="$(head -c "${arg1:-5}" < <(LC_ALL=C tr -cd "[:digit:]" < <(cat /dev/urandom)))";
+    printf "0.%s\n" "$decimals";
+}; # output random float [0.00000 1.00000] to stdout
 #==END Function Definitions==
 
 #==BEGIN sample code==
+time randFloat;
+dec=5
+time randFloat;
 dec=70
 time randFloat;
 time (randFloat && randFloat && randFloat && randFloat && randFloat && randFloat && randFloat && randFloat && randFloat && randFloat);