Normally, one doesn't use awk or perl to read files in subfolders -- that's usually taken care of by the command line. In perl, it's possible to use the File::Find module (do a man on File::Find). But I find that module confusing and unwieldy, especially when you just want to read all the files in a directory. Better use a find pipeline into a "while read file; do perl .... $file; done" loop, or use xargs to similar effect.
Concerning question #1, do you need to plot the columns from each file separately, or do you need to aggregate them in some way? That is, all from one folder, all together, etc. If it's the latter, it might make more sense to import that data into a, for instance, MySQL database. Otherwise, you'll need to specify the command line with every single file in each group. (Or use the File::Find module with perl).
Concerning 2. You don't "plot" anything with perl/awk. You do that with another tool, such as gplot. If you want to use file2 (sender.dat) together with file1 (router2.dat), you can simply merge them together with sort:
The output should go to a temporary file or be piped into awk/perl, which can then do the interprolation. Unfortunately, I cannot interpret your formula for y. Especially the y[i+1] bit. With awk and perl, you can look *behind* a line, but ahead of one. So it would be better if you re-do the formula in terms of i and i-1.
Hello Guys,
I am refering to this great forum once again for help.
After various attempts at this, I am still failing to obtain the desire effect.
I have to write a perl script which:
1- reads two values from the user (e.g name & passwd)
2- check each value against a file containing the... (7 Replies)
Dear Collegue
Do anybody help me to convert this AWK script to Perl script
{
for (i = 2; i <= length ($0); i++) {
x = substr($0, i , 1)
if (c > 0) {
b = b x
if (x == "(") c++
... (2 Replies)
Hi All,
My Input file looks like below:
Input:
100,200,300
$fw=`head -1 test.csv | awk -F, '{print \$1}'`;
$fw="'$fw"
$fw="$fw'"
print $fw
Output:'100'
I want the first field to be printed in single quotes ('') like above.
I could get the ouptput but the problem is single... (6 Replies)
I have a script to get server information i wrote in perl because i would like to learn it (and I use it for work). It works great, however i would like to know if there is a good way to reduce the following line.
Sean (6 Replies)
awk -F "|" '{print $2$3$4 upto $30}' file1 > file2
Same logic, i want to write it in perl
I tried
#!/bin/usr/perl
my $line;
open FH, "<file1" or die " Can't open file $!";
open FH1, ">file2" or die "Can't open file ";
while (<FH1>){
$line = (split /\|/,$_);
print FH2 $line;... (3 Replies)
DEAR ALL,
i am using following command to fetch some records from more then 50000 files... command is taking more time ....
can i have perl command for the same...( i am New to perl )
awk -F "|" '{ if($4==3244898 && $5==5000185) print $66}' *.DATA (2 Replies)
Hi Everyone,
cat 1.txt
a <abc
b vfff
c 000>
d 4444
the output is:
<abcvfff000>
by using perl or awk, can get the value betwee "<abc" and ">", assume 1.txt has lots of those tags, so the output can filter out all those values.
Please advice.
Thanks (4 Replies)
Hello folks.
After awk, i have decided to start to learn perl, and i need some help.
I have following output :
1 a
1 b
2 k
2 f
3 s
3 p
Now with awk i get desired output by issuing :
awk ' { a = a FS $2 } END { for ( i in a) print i,a }' input
1 a b
2 k f
3 s p
Can... (1 Reply)
Hello,
I searched online; it seems that perl use $NR as NR in awk; however it does not work for me. For example, how to re-write the following awk using perl:
awk '{ print NR}' inputfile---------- Post updated at 01:55 PM ---------- Previous update was at 12:49 PM ----------
I found... (2 Replies)
Hello. I'm trying to convert an awk script I wrote to perl (which I just started self-teaching). I tried the a2p command but I couldn't make sense of most of it.
Here was the awk code:
BEGIN{
FS = ","
print "NAME\tLOW\tHIGH\tAVERAGE"
a=0
}
{
if(a==0){
a+=1 (1 Reply)
Discussion started by: Eric7giants
1 Replies
LEARN ABOUT V7
join
JOIN(1) General Commands Manual JOIN(1)NAME
join - relational database operator
SYNOPSIS
join [ options ] file1 file2
DESCRIPTION
Join forms, on the standard output, a join of the two relations specified by the lines of file1 and file2. If file1 is `-', the standard
input is used.
File1 and file2 must be sorted in increasing ASCII collating sequence on the fields on which they are to be joined, normally the first in
each line.
There is one line in the output for each pair of lines in file1 and file2 that have identical join fields. The output line normally con-
sists of the common field, then the rest of the line from file1, then the rest of the line from file2.
Fields are normally separated by blank, tab or newline. In this case, multiple separators count as one, and leading separators are dis-
carded.
These options are recognized:
-an In addition to the normal output, produce a line for each unpairable line in file n, where n is 1 or 2.
-e s Replace empty output fields by string s.
-jn m Join on the mth field of file n. If n is missing, use the mth field in each file.
-o list
Each output line comprises the fields specifed in list, each element of which has the form n.m, where n is a file number and m is a
field number.
-tc Use character c as a separator (tab character). Every appearance of c in a line is significant.
SEE ALSO sort(1), comm(1), awk(1)BUGS
With default field separation, the collating sequence is that of sort -b; with -t, the sequence is that of a plain sort.
The conventions of join, sort, comm, uniq, look and awk(1) are wildly incongruous.
JOIN(1)