Bash script accepting variables in valid number format
Hi Experts
I would like to ask if there is a way to validate if the variable passed is in this kind of sample format "06-10" or "10-01". It was really a challenge to me on how to start and echnically the "6-10" stands for "June 10" and "10-01" stands as "October 1", overall it needs to have like of a "Month-Day" valid in number format. I would like to have an if-then statement that would validate if the variables passed are in correct, something like these:
Code:
#!/bin/bash
# This script will ONLY accept two parameters in number format
# according to "MM-DD" which is "XX-XX" # To run this script: ./script.sh xx-xx xx-xx
DATE1=$1
DATE2=$2
if [DATE1 is in correct format] && [DATE2 is in correct format]
then
echo "Correct format"
echo "DATE1 = $DATE1"
echo "DATE2 = $DATE2"
else
echo "Not correct format"
exit 1
fi
I would like to change the format of an integer type number adding zeros to the left of it in a script in bash. For example
number=1
echo $number
00001
Thanks (3 Replies)
I write a small shell script create Payroll System my trouble is valid format birthday dd-mm-yyyy when you enter birthday if your value enter not match with format dd-mm-yyyy system will display "Fail Format Please re-enter Birthday with format dd-mm-yyyy" but i don't know how create function... (3 Replies)
I have this tcsh code that I want to convert to a bash script. Basically it accepts command line arguments supplied by the user and stores them, so they can be used to run a C++ program.
set arg_browseDir_inFileLst = ""
set allArgsUpCase = `echo "$*" | tr '' ''`
set opt_browseDir_flag =... (17 Replies)
I am trying to compare the floating number variables but i am receiving an error, can you please help what is wrong. Thank you.
#!/bin/bash
var1=100.25
var2=100.25
if (( $var1 == $var2 )); then
echo "Matching"
else
echo "Not Matching"
fi
Error:
./number.sh: line... (6 Replies)
Hi
I have Unix shell script that invokes PL/SQL procedure.
The batch job when executed terminated with the error message:-unlimited: The specified number is not valid for this command.Please let me know what is the root cause of the issue and how to fix the issue.
Thanks (1 Reply)
How can I validate if time (HH:MM:SS) argument is valid? I got this from web but I can't modify it to exit the script if the time argument is invalid.
echo $1 | awk -F ':' '{ print ($1 <= 23 && $2 <= 59 && $3 <= 59) ? "good" : "bad" }'
ex:
./script.ksh 12:34:21 = okay
./script.ksh... (10 Replies)
Hello.
I can use any particular (stupid or not) format when using bash date command.
Example :
~> date --date "now" '+%Y-%m-%d %H!%M!%S'
2019-06-03 12!55!33or
~> date --date "now" '+%Y£%m£%d %H¤%M¤%S'
2019£06£03 12¤57¤36
or
~> date --date "now" '+%Y-%m-%d %H-%M-%S'
2019-06-03 12-58-51
... (4 Replies)
Hi All,
I'm trying to run a script which issues rest commands via curl to an endpoint. If I put spaces in fields via something like insomnia, it works, but when I try from an input file, it's failing with a json error.
while IFS=, read mname oname <------ my input file... (10 Replies)
Discussion started by: say170
10 Replies
LEARN ABOUT PHP
sscanf
SSCANF(3) 1 SSCANF(3)sscanf - Parses input from a string according to a formatSYNOPSIS
mixed sscanf (string $str, string $format, [mixed &$...])
DESCRIPTION
The function sscanf(3) is the input analog of printf(3). sscanf(3) reads from the string $str and interprets it according to the specified
$format, which is described in the documentation for sprintf(3).
Any whitespace in the format string matches any whitespace in the input string. This means that even a tab in the format string can
match a single space character in the input string.
PARAMETERS
o $str
- The input string being parsed.
o $format
- The interpreted format for $str, which is described in the documentation for sprintf(3) with following differences:
o Function is not locale-aware.
o F, g, G and b are not supported.
o D stands for decimal number.
o i stands for integer with base detection.
o n stands for number of characters processed so far.
o $...
- Optionally pass in variables by reference that will contain the parsed values.
RETURN VALUES
If only two parameters were passed to this function, the values parsed will be returned as an array. Otherwise, if optional parameters are
passed, the function will return the number of assigned values. The optional parameters must be passed by reference.
If there are more substrings expected in the $format than there are available within $str, -1 will be returned.
EXAMPLES
Example #1
sscanf(3) Example
<?php
// getting the serial number
list($serial) = sscanf("SN/2350001", "SN/%d");
// and the date of manufacturing
$mandate = "January 01 2000";
list($month, $day, $year) = sscanf($mandate, "%s %d %d");
echo "Item $serial was manufactured on: $year-" . substr($month, 0, 3) . "-$day
";
?>
If optional parameters are passed, the function will return the number of assigned values.
Example #2
sscanf(3) - using optional parameters
<?php
// get author info and generate DocBook entry
$auth = "24 Lewis Carroll";
$n = sscanf($auth, "%d %s %s", $id, $first, $last);
echo "<author id='$id'>
<firstname>$first</firstname>
<surname>$last</surname>
</author>
";
?>
SEE ALSO fscanf(3), printf(3), sprintf(3).
PHP Documentation Group SSCANF(3)