In my shell script, i'm checking the date input against few constraints. It should be of YYYYMMDD format and the script should prompt the user with error message, if less than 8 digits are present or input contains special characters (*,&,%,^,$ ...etc). The script i'm using is given below.
But, if the input contains special characters and the size of the input is 8, the script shows error like
Before this, the snippet i tried was
This also fails for special characters.
How can i check against special characters? If the input contains operators like *,!,/,+... what will happen?
if [ $# -eq 0 ]
then
dateval=`date +%Y%m%d`
echo $dateval
exit
fi
if [ $# -ne 0 ]
then
echo $1 | grep "^[0-9]\{8\}" > /dev/null
if [ $? -ne 0 ]
then
echo "Invalid date,please re-enter in YYYYMMDD format"
exit
fi
fi
-----------
in your script ur are checking the exit status of assignment, not for grep command becouse at last assignment happening.
Hi,
I am using sed command to replace following line in gz file-
sed -n 's/""COS_12_TM_1" ( 1101110101001001010011110100000010110100010010000000100000000010XX010000000 )"/""COS_12_TM_1" ( 110111010100100101001111MM00000010110100010010000000100000000010XX010000000 )"/g' filename.gz
$x=... (4 Replies)
Hi Experts.
I'm stuck with the below AWK code where i'm trying to move the records containing any special characters in the last field to a bad file.
awk -F, '{if ($NF ~ /^|^/) print >"goodfile";else print >"badfile"}' filename
sample data
1,abc,def,1234,A *
2,bed,dec,342,* A ... (6 Replies)
Hello all, I'm writing an expect script that will connect to an IMAP server and issue IMAP commands. The problem is that some of the text I need to send includes "quotes" and also !@#$%^&* special characters.
For example, my password is VFR$5tgb but I cannot "send" this because Expect doesn't... (2 Replies)
Trying to use code that I found to send only new lines out of a log file by doing:
while :; do
temp=$(tail -1 logfile.out)
awk "/$last/{p=1}p" logfile.out #pipe this to log analyzer program
last="$temp"
sleep 10
done
Script works fine when logfile is basic text, but when it contains... (2 Replies)
i need to replace the any special characters with escape characters like below.
test!=123-> test\!\=123
!@#$%^&*()-= to be replaced by
\!\@\#\$\%\^\&\*\(\)\-\= (8 Replies)
I made menu script for users so they can run other script without going in shell just from menu.
But i must control their input.
These are criteria:
Input must have 4 signs
First two signs are always lower case letters
Input shall not have some special signs just letters and numbers
... (1 Reply)
Hi,
I am creating a script to do a find and replace single/multiple lines in a file with any number of lines.
I have written a logic in a script that reads a reference file say "findrep" and populates two variables $FIND and $REPLACE
print $FIND gives
Hi How r $u
Rahul()
Note:... (0 Replies)
I have a shell script that I have written to be a kind of to-do/notepad that's quickly executable from the command line. However, special characters tend to break it pretty well.
Ie: "notes -a This is an entry." works fine.
"notes -a This is (my) entry." will toss back a bash syntax error on... (5 Replies)
Hi,
I would like to display the following message from my shell (Korn) script
Copy "old_file.txt" to "new_file.txt"
My code looks as follows
print "Copy "old_file.txt" to "new_file.txt""
However, when I execute the script, I get the following output
Copy old_file.txt to... (6 Replies)
Hi,
I'm currently working on a project that requires parsing xml file. One of the field in the xml is shown below (don't remember exactly):
<variable="ITEM">12345678</variable>
I coded my script keeping in mind that the value denoted in bold will always be a number. After getting just the... (1 Reply)