03-23-2011
Quote:
Originally Posted by
Chubler_XL
Uses dot and space as field separators, this is so we can pickup filename without extension (eg bb from bb.txt).
NR==FNR{f=$0;sub(".*/","",f);F[f]=$0;next} Store pathnames in file_2 into array F[] with index as basename of file.
$1 in F{$0=F[$1]}if field 1 (bit before any fullstop) from file_1 is available in the F[] array then assign line as the fullpathname we stored from file_1 earlier, otherwise leave it as it is.
!/NAME/If the new line from previous command does not contain NAME then print it out.[/icode]
thanks bro
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
All,
I've basic knowlege on understanding UNIX Shell Programming. Right now I need to write a script for the following requirement. Kindly help me or suggest me how to write a Shell script.
I've 8 .csv files that are containing "Detail" records. Each file getting more than 1 million. Another... (3 Replies)
Discussion started by: nvkuriseti
3 Replies
2. UNIX for Dummies Questions & Answers
Hi,
I have 3 files. The containts of the files are as followes.
File 1:
1
2
3
File 2:
A
B
C
File 3:
Ind
US
Aus (6 Replies)
Discussion started by: siba.s.nayak
6 Replies
3. Shell Programming and Scripting
Help
I read a file that has 2 fields.
look for in a second file the first field and update it with the second field of first file.
file1
1131518fat11416.txt ../newaod/2001/04/2001-04-00129233-1.txt
file2
INSERT INTO tabric
VALUES... (2 Replies)
Discussion started by: mcarlo65
2 Replies
4. Shell Programming and Scripting
Hello,
This is my first post on the forums. So I want to start by thanking anyone who is kind enough to read this post and offer advise. I hope to be an active contributor now that I've found these forums.
I have an issue that I figure would be a good first post..
I have 2 text files... (5 Replies)
Discussion started by: efciem
5 Replies
5. Programming
Hi guys,
I have a question which might be easy to answer but I don't how to do it.
The thing is I need to make a program in C which creates a file with all the content from the files in \etc.
I'm not new to C language but to UNIX.
I've read somewhere I need to use functions like f_read... (2 Replies)
Discussion started by: sussil
2 Replies
6. Shell Programming and Scripting
Hi, I need help with merging two files. My requirement is as below:
File 1:
MachineA
MachineB
File 2:
Process1
Process2
Desired File:
MachineA Process1
MachineB Process2
If file 2 contains only one entry Process1, then second line in the desired output should be:
MachineA Process1... (1 Reply)
Discussion started by: chiru_h
1 Replies
7. UNIX Desktop Questions & Answers
Hi,
Im a newbie to scripting. I have a file that looks like the one below. How can i change the last "/" to become a space.
Thank You so Much for the help. :)
hostname date Feb-9 /u100/DEVCO/Patching/a.log
hostname date Jun-25 /u100/DEVCO/DumpCleaner/a.log
hostname date Jun-25... (2 Replies)
Discussion started by: lienyca
2 Replies
8. UNIX for Dummies Questions & Answers
Hi All,
i have a requirement as below.
There are two files.
In 1st file a.txt i have four lines as below
Ramesh
Suresh
Pradeep
Franklin
In 2nd file b.txt i have 5 lines as below
Francis
Elizabeth
David
John
Ravi
The output file suppose c.txt should contain 1st line of... (5 Replies)
Discussion started by: sureshk_85
5 Replies
9. UNIX for Beginners Questions & Answers
Hi All,
I have two file . I need to merge both file based on a match.
File 1:
Column1
column2
column3
column4
File 2:
column3
column5
I need to combine the two file based on match , Which in my case is column3 and combine the file as below
Combined file
Column1 (10 Replies)
Discussion started by: arunkumar_mca
10 Replies
10. Shell Programming and Scripting
Dear all, I have an AWK related issue.
I have two data files; the first, FileA has fewer lines, the second, FileB has more. FileA is a subset of FileB . Both files are tab delimited.
What I want to do?
When the first two columns for FileA match the first two columns of FileB, I want to... (4 Replies)
Discussion started by: A_Human_Person
4 Replies
LEARN ABOUT DEBIAN
shell-quote
SHELL-QUOTE(1p) User Contributed Perl Documentation SHELL-QUOTE(1p)
NAME
shell-quote - quote arguments for safe use, unmodified in a shell command
SYNOPSIS
shell-quote [switch]... arg...
DESCRIPTION
shell-quote lets you pass arbitrary strings through the shell so that they won't be changed by the shell. This lets you process commands
or files with embedded white space or shell globbing characters safely. Here are a few examples.
EXAMPLES
ssh preserving args
When running a remote command with ssh, ssh doesn't preserve the separate arguments it receives. It just joins them with spaces and
passes them to "$SHELL -c". This doesn't work as intended:
ssh host touch 'hi there' # fails
It creates 2 files, hi and there. Instead, do this:
cmd=`shell-quote touch 'hi there'`
ssh host "$cmd"
This gives you just 1 file, hi there.
process find output
It's not ordinarily possible to process an arbitrary list of files output by find with a shell script. Anything you put in $IFS to
split up the output could legitimately be in a file's name. Here's how you can do it using shell-quote:
eval set -- `find -type f -print0 | xargs -0 shell-quote --`
debug shell scripts
shell-quote is better than echo for debugging shell scripts.
debug() {
[ -z "$debug" ] || shell-quote "debug:" "$@"
}
With echo you can't tell the difference between "debug 'foo bar'" and "debug foo bar", but with shell-quote you can.
save a command for later
shell-quote can be used to build up a shell command to run later. Say you want the user to be able to give you switches for a command
you're going to run. If you don't want the switches to be re-evaluated by the shell (which is usually a good idea, else there are
things the user can't pass through), you can do something like this:
user_switches=
while [ $# != 0 ]
do
case x$1 in
x--pass-through)
[ $# -gt 1 ] || die "need an argument for $1"
user_switches="$user_switches "`shell-quote -- "$2"`
shift;;
# process other switches
esac
shift
done
# later
eval "shell-quote some-command $user_switches my args"
OPTIONS
--debug
Turn debugging on.
--help
Show the usage message and die.
--version
Show the version number and exit.
AVAILABILITY
The code is licensed under the GNU GPL. Check http://www.argon.org/~roderick/ or CPAN for updated versions.
AUTHOR
Roderick Schertler <roderick@argon.org>
perl v5.8.4 2005-05-03 SHELL-QUOTE(1p)