09-16-2008
ghostdog74: If $var contains whitespace or special characters, it needs to be double-quoted. The solution posted by Franklin52 seems more succinct and workable anyway; the built-in ${#var} length operator doesn't require any external processes, and doesn't have issues with quoting etc.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi all,
pls help me in finding the length of the given string,
do we need to write a code seperately or is there any command??
pls help. (3 Replies)
Discussion started by: vasikaran
3 Replies
2. Shell Programming and Scripting
Hi guys, I hope you can help me with my problem.
I have a text file that contains lines like this:
78 ANGELO -809.05
79 ANGELO2 -5,000.06
I need to find all occurences of amounts that are negative and replace them with x's
78 ANGELO xxxxxxx
79... (4 Replies)
Discussion started by: amangeles
4 Replies
3. Shell Programming and Scripting
Hello All,
Plz help me with:
I have a csv file with data separated by ',' and optionally enclosed by "". I want to check each of these values to see if they exceed the specified string length, and if they do I want to cut just that value to the max length allowed and keep the csv format as it... (9 Replies)
Discussion started by: ozzy80
9 Replies
4. Shell Programming and Scripting
I need to compare two files with exactly same length as example: -
File1 contain 500 records with length of 640 chars of each line.
File2 contain 1500 records with length of 640 chars of each line.
I need get an output to be written in File3 which will contain 1000 records difference.
but... (4 Replies)
Discussion started by: elj3dah
4 Replies
5. UNIX for Dummies Questions & Answers
HI
In my script, i am reading the input from the user and want to find the length of the string.
The input may contain leading spaces. Right now, when leading spaces are there, they are not counted.
Kindly help me
My script is like below. I am using the ksh.
#!/usr/bin/ksh
echo... (2 Replies)
Discussion started by: dayamatrix
2 Replies
6. Shell Programming and Scripting
Need a script that manipulates a fixed length file that will compare 2 fields in that file and if they are equal write that line to a new file.
i.e. If fields 87-93 = fields 119-125, then write the entire line to a new file. Do this for every line in the file. After we get only the fields... (1 Reply)
Discussion started by: Muga801
1 Replies
7. UNIX for Dummies Questions & Answers
I have two very large datasets (>100MB) in a simple vertical list format. They are of different size and with different order and formatting (e.g. whitespace and some other minor cruft that would thwart easy regex).
Let's call them set1 and set2.
I want to check set2 to see if it contains... (2 Replies)
Discussion started by: uiop44
2 Replies
8. Shell Programming and Scripting
Hi All,
One of my source file is having Date column and the format of the column is YYYY-MM-DD. As per my business logic I have to check if the date format either YYY-MM-DD or YYYY-M-DD. If any records are in this format then I have print all the records and send those invalid records through... (4 Replies)
Discussion started by: suresh_target
4 Replies
9. Shell Programming and Scripting
Hi,
I want to compare strings length to a number but i am getting error. I want first name should be length of 8.
Please help.
#bin !/bin/bash
clear
echo -n "Enter name "
read name
IFS=_
ary=($name)
for key in "${!ary}"; do echo "$key${ary}"; done
##First name should be equal to 8... (8 Replies)
Discussion started by: rajneesh4U
8 Replies
10. UNIX for Beginners Questions & Answers
I have below code inside my awk script
if ( $0 ~ /SVC IN:/ )
{
svc_in=substr( $0,23 , 3);
if (msg_start == 1 && msg_end == 0)
{
msg_arr=$0;
}
}
else if ( $0 ~ /^SVC OUT:/ )
{
svc_out=substr( $0, 9, 3);
if (msg_start == 1 && msg_end == 0)
... (6 Replies)
Discussion started by: bhagya123
6 Replies
LEARN ABOUT DEBIAN
perl::critic::policy::valuesandexpressions::prohibitinterpolatio
Perl::Critic::Policy::ValuesAndExpressions::ProhibitInteUseraContrPerl::Critic::Policy::ValuesAndExpressions::ProhibitInterpolationOfLiterals(3pm)
NAME
Perl::Critic::Policy::ValuesAndExpressions::ProhibitInterpolationOfLiterals - Always use single quotes for literal strings.
AFFILIATION
This Policy is part of the core Perl::Critic distribution.
DESCRIPTION
Don't use double-quotes or "qq//" if your string doesn't require interpolation. This saves the interpreter a bit of work and it lets the
reader know that you really did intend the string to be literal.
print "foobar"; #not ok
print 'foobar'; #ok
print qq/foobar/; #not ok
print q/foobar/; #ok
print "$foobar"; #ok
print "foobar
"; #ok
print qq/$foobar/; #ok
print qq/foobar
/; #ok
print qq{$foobar}; #preferred
print qq{foobar
}; #preferred
Use of double-quotes might be reasonable if the string contains single quote (') characters:
print "it's me"; # ok, if configuration flag set
CONFIGURATION
The types of quoting styles to exempt from this policy can be configured via the "allow" option. This must be a whitespace-delimited
combination of some or all of the following styles: "qq{}", "qq()", "qq[]", and "qq//".
This is useful because some folks have configured their editor to apply special syntax highlighting within certain styles of quotes. For
example, you can tweak "vim" to use SQL highlighting for everything that appears within "qq{}" or "qq[]" quotes. But if those strings are
literal, Perl::Critic will complain. To prevent this, put the following in your .perlcriticrc file:
[ValuesAndExpressions::ProhibitInterpolationOfLiterals]
allow = qq{} qq[]
The flag "allow_if_string_contains_single_quote" permits double-quoted strings if the string contains a single quote (') character. It
defaults to off; to turn it on put the following in your .perlcriticrc file:
[ValuesAndExpressions::ProhibitInterpolationOfLiterals]
allow_if_string_contains_single_quote = 1
SEE ALSO
Perl::Critic::Policy::ValuesAndExpressions::RequireInterpolationOfMetachars
AUTHOR
Jeffrey Ryan Thalhammer <jeff@imaginative-software.com>
COPYRIGHT
Copyright (c) 2005-2011 Imaginative Software Systems. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of this license
can be found in the LICENSE file included with this module.
perl v5.14.2 Perl::Critic::Policy::ValuesAndExpressions::ProhibitInterpolationOfLiterals(3pm)