|
|
Obtaining Random LIne from A file
Posted:
Feb 16, 2013 1:07 AM
|
|
Hello,
I would like to get a random line from a file, I know this can be done with Mathematica but I am playing with using sed to see if it goes faster, say I want to get line 1000
In mathematica it would be:
<<"! sed -n p1000 filename.txt"
However, I am trying to put the filename as a variable, say
filename="hugefile.txt"
cmd="! sed -n p1000 "<>filename <<cmd
does not work.
How can I do this?
Lastly, I am getting a randomline using mathematica doing:
getRandomLine[file_, n_] := Block[{i = RandomInteger[{1, n}], str = OpenRead[file], res}, Skip[str, "String", i]; res = Read[str, Expression]; Close[str]; res[[2]] ]
However, it is very slow so I was going to try with sed.Any suggestions?
Thanks in advance, Ramiro
|
|