Your second read is reading from the same descriptor as the first, meaning both reads are reading your input file, meaning that your case will never get the answer you are looking for and the inner while-loop will never break (you can test that by adding a line to your input file with only an n in it, at which point the script will exit).
You need to change one of the reads to read from a different descriptor. There's a number of ways to do this. One way, for example, is to change your second read to:
well I found lot of topics about awk..about if command in awk..
but I had to implement this:
nawk -F"|" '
$47 ~ /0R0011/ { print > ("/home/user/M/MC.tmp" )}
$47 ~ /0R0012/ { print > ("/home/user/M/DuSI.tmp" )}
$47 ~ /0R0014/ { print > ("/home/user/M/FF.tmp" )}
$47 ~ /0R0018/ { print >... (9 Replies)
Im new to unix and shell scripting. I am required to write a program and im in the process of creating a menu system. I have my main menu but i want to be able to select an option that takes me onto another menu. I have tried doing this with the case statement with no luck so far. Wondering if it... (3 Replies)
Hi all,
I would like to ask whether in Unix shell/perl have any functions or command to allow grep/cat/read a file inside compressed .tgz without extract it?
I know we can tar tvf a compressed tgz but this only allow we read the path/filename contained inside the tarball. If we want to read... (3 Replies)
echo "please enter ur choice..
1. Make a file.
2. Display contents
3. Copy the file
4. Rename the file
5. Delete the file
6. Exit"
read choice
case $choice in
1 ) echo enter the file name
read fname
if
then
echo... (2 Replies)
i have a case statement which branches to different sections based on an input. Each branch needs to call a function. below is the code. FOr some reason, the code inside the function is not getting executed. the code is below for reference.
in the below code echo "Function 1" which is there... (2 Replies)
please let me know if the below code could be written efficiently inside single awk
case "$INP" in
ksh)
cat catalog | awk 'BEGIN {FS=",";} { print $2 } END {}'
;;
pset)
cat catalog | awk 'BEGIN {FS=",";} { print $3 } END {}'
;;
dml)
cat catalog | awk 'BEGIN {FS=",";} {... (2 Replies)
I need to Write a shell script that allows some system-administration tasks to be preformed automatically from a menu-driven interface. with automated following tasks:
Copy directory tree
Delete files or directories
Output Information (this part is done )
*Copy directory tree
The “Copy... (2 Replies)
Hi,
I am reading file records inside a while loop,
and want to update the record when certain condition is met.
How can I update a file while being read?
I want to avoid using temporary files, copy, rename, ...
while IFS=',' read -r f1 f2
do
function(f1,f2)
if
then
<add... (1 Reply)
Hello,
I have a problem. I want to launch a different sql queries for different shell parameter values, something like this.
#/bin/bash
case $1 in
"A")
sqlplus -s user/pass << SQL
query A;
SQL
"B") sqlplus -s user/pass << SQL2
... (3 Replies)
Discussion started by: Vares
3 Replies
LEARN ABOUT DEBIAN
hash::case
Hash::Case(3pm) User Contributed Perl Documentation Hash::Case(3pm)NAME
Hash::Case - base class for hashes with key-casing requirements
INHERITANCE
Hash::Case
is a Tie::StdHash
Hash::Case is extended by
Hash::Case::Lower
Hash::Case::Preserve
Hash::Case::Upper
SYNOPSIS
use Hash::Case::Lower;
tie my(%lchash), 'Hash::Case::Lower';
$lchash{StraNGeKeY} = 3;
print keys %lchash; # strangekey
DESCRIPTION
Hash::Case is the base class for various classes which tie special treatment for the casing of keys. Be aware of the differences in
implementation: "Lower" and "Upper" are tied native hashes: these hashes have no need for hidden fields or other assisting data structured.
A case "Preserve" hash will actually create three hashes.
The following strategies are implemented:
o Hash::Case::Lower (native hash)
Keys are always considered lower case. The internals of this module translate any incoming key to lower case before it is used.
o Hash::Case::Upper (native hash)
Like the ::Lower, but then all keys are always translated into upper case. This module can be of use for some databases, which do
translate everything to capitals as well. To avoid confusion, you may want to have you own internal Perl hash do this as well.
o Hash::Case::Preserve
The actual casing is ignored, but not forgotten.
METHODS
Constructors
$obj->addHashData(HASH)
Add the data of a hash (passed as reference) to the created tied hash. The existing values in the hash remain, the keys are adapted to
the needs of the the casing.
$obj->addPairs(PAIRS)
Specify an even length list of alternating key and value to be stored in the hash.
$obj->setHash(HASH)
The functionality differs for native and wrapper hashes. For native hashes, this is the same as first clearing the hash, and then a
call to addHashData(). Wrapper hashes will use the hash you specify here to store the data, and re-create the mapping hash.
tie(HASH, TIE, [VALUES,] OPTIONS)
Tie the HASH with the TIE package which extends Hash::Case. The OPTIONS differ per implementation: read the manual page for the
package you actually use. The VALUES is a reference to an array containing key-value pairs, or a reference to a hash: they fill the
initial hash.
example:
my %x;
tie %x, 'Hash::Case::Lower';
$x{Upper} = 3;
print keys %x; # 'upper'
my @y = (ABC => 3, DeF => 4);
tie %x, 'Hash::Case::Lower', @y;
print keys %x; # 'abc' 'def'
my %z = (ABC => 3, DeF => 4);
tie %x, 'Hash::Case::Lower', \%z;
SEE ALSO
This module is part of Hash-Case distribution version 1.02, built on March 09, 2012. Website: http://perl.overmeer.net/hash-case/
LICENSE
Copyrights 2002-2003,2007-2012 by Mark Overmeer. For other contributors see ChangeLog.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See
http://www.perl.com/perl/misc/Artistic.html
perl v5.14.2 2012-03-09 Hash::Case(3pm)