hi tyler_durden,
okay it seems my problem description was a bit unclear.
file zz.lis contains a list of directory names, so no wonder you don't have them on your system.
in fact that are pieces of the freebsd ports collection.
to build this environment, you would have to:
...
file zz.lis contains a list of directory names, so no wonder you don't have them on your system.
in fact that are pieces of the freebsd ports collection.
to build this environment, you would have to:
Thanks for clearing that up.
So after executing all those commands, I have this in the directory "test" -
And here's a Perl equivalent of the shell script you posted earlier:
$ perl -lne 'foreach (glob "$_/*"){print if !/Makefile$/}' zz.lis[/code]
nice one-liner. worked fairly good!
after processing 22067 items it even helped me to find a bug in my previous result which the 2 for loops have produced (there are 2 directories, which have Makefile in their name, and i need them to be included in the output)
this is the difference:
if you could adjust your one-liner to skip Makefile.inc too, that would be just PERFECT.
...
if you could adjust your one-liner to skip Makefile.inc too, that would be just PERFECT.
...
I don't think I understood your post completely, but here's what I did.
I touch'd the files "Makefile.inc", "p5-Makefile-DOM", "p5-Makefile-Parser" and "p6-Makefile-SAX" so that my find command shows the following -
Now, my previous script would return each file path except the ones that end with "Makefile".
This means that the files "Makefile.inc", "p5-Makefile-DOM", "p5-Makefile-Parser" and "p6-Makefile-SAX" will be present in the output -
The following script skips "Makefile" as well as "Makefile.inc".
But it will still show the other three: "p5-Makefile-DOM", "p5-Makefile-Parser" and "p6-Makefile-SAX" -
Now, I see "p5-Makefile-DOM" and "p5-Makefile-Parser" in the list in your post. But you did not mention anything about them.
Did you want them skipped as well ? Is yes, then -
Note that the regular expression is very restrictive and will exclude only the file paths that either end with "Makefile", or "Makefile.inc", or "Makefile-DOM" or "Makefile-Parser".
Which means the file path ending with "Makefile-SAX" will be included in the output (and you can see that above).
You can, of course, tweak the regular expression further on to remove different types of "Makefile" files.
However, if your actual problem statement is - "Skip all files that have the characters Makefile anywhere in them", then the regular expression could be much simpler -
this one fully meets my requirement. thank you very very much.
p5-Makefile-DOM, p5-Makefile-Parser are subdirectories, which exist in the textproc directory only.
Quote:
Originally Posted by durden_tyler
Now, I see "p5-Makefile-DOM" and "p5-Makefile-Parser" in the list in your post. But you did not mention anything about them.
Did you want them skipped as well ?
i've mentioned them when i was speaking about the bug. no, they should not be skipped.
anyway, thank you for your several explanations, they will help me to better understand the syntax.
btw. sorry about my bad expression, it's bcs. english is not my native language, but after all we've worked it out :-)
hello,
i have a lot of C old code I'm updating to C11 with tgmath.h for generic math. the old code has very specific types, real and complex, like cabsl, csinhl, etc
usually for simple bulk replacements i would do something simple like this
perl -pi -e 's/cosl/cos/g' *.c
the reference... (0 Replies)
Greetings!
I've been tooling about with Perl to make a few string replacements in some files; and seem to have run into a bit of a squeeze :)
Beginning with a simple text file, test.txt, we have the following content to be worked:Now, not wanting to have anyone feel left out, I decided that... (6 Replies)
I have the following string :
Cat dog fox catepillar bear foxy
I need to replace "cat" and "fox" words from this sentence to word "animal"
I do the following:
$Str1="cat";
$Str2="fox";
$NewStr="animal";
open(F1, "<$inputFile") or die "Error: $!";
open(F2, ">$outputFile") or... (1 Reply)
Hello,
I have the following perl array:
@longname = (Fasthernet0/0 Fasthernet0/1 Serial0/1/0 Serial0/2/1 Tunnel55 Tunnel77)
with the followinh array:
@shortname = (Fa0/0 Fa0/1 Se0/1/0 Se0/2/1 Tu55 Tu77)
in other words, I need to remove the following from each element in the array... (4 Replies)
Hi ,
I need some help on perl/sed conditional replacement
The situation is like below .
I have a file contents like below .
AAA|BBB|CCC|DDD
AAA|BCF|CCC|HHH
AAA|BVF|JJJ|KKK
Here in the above file . I know my second column value (taking "|" as my delimited )
Basically I have to... (3 Replies)
Hi,
I have 3 arrays:
@arr1=("Furthermore, apigenin treatment increased the level of association of the RNA binding protein HuR with endogenous p53 mRNA","one of the mechanisms by which apigenin induces p53 protein expression is enhancement of translation through the RNA binding protein... (1 Reply)
Hey all, Im trying to write a script on windows, which Im not too familiar with. Im generally a bash scripting guy but am using perl for this case.
My question is...
I have this exact output:
2 Dir(s) 6,380,429,312 bytes free
and I just need to get the number out... (4 Replies)
I used the eval command in shell programming for assigning a value to a stored value of a variable.
Example:
VAR="Unix_Id"
eval $VAR="101"
eval echo $"$VAR"
How can i assign a value to a stored value of a variable in perl OR how i can write above code in Perl?
I need your help... (4 Replies)
Hi using the below cmd i am identifying wheether last character in each line in thousands of files as semicolon or not.If last character is semicolon i am removing semicolon .If last character is not semicolon then i am appending next line to present line .
For example my input file consists of... (4 Replies)
I want to replace a string within a file using perl.
We have a line that gets commented out, and I want to replace that line now matter how it was commented out.
for example, I'd want to replace
###ES=PR1A with ES=PR1A
or
##LJW(9/16/26)ES=PR1A with ES=PR1A
I tried: perl... (4 Replies)