05-16-2015
Quote:
Originally Posted by
RudiC
You could do it also without sed, just shell parameter expansion...
Yes, but the original problem was: read a lot (~700k) files and extract only a certain part of line 3. Shell expansion can extract that part but it is not easy to interrupt the reading process after only 3 lines. Therefore i figured there must be a tradeoff between the preserved fork() of shell expansion and the lesser I/O the
sed solution produces.
Which optimisation weighs heavier is probably different from system to system and depends on so many factors i didn't even try to take measurements. I could have, but the disks i have on all my systems all come from several EMC VMaxes (we even boot from LUNs via VIOS) and i doubt that thread-O/P has an I/O-subsystem capable of shoveling up to 700MB/s to/from the disks. This will, IMHO, have such a big impact on the tme it takes to read the 700k files that i could as well roll a dice.
I hope this helps.
bakunin
This User Gave Thanks to bakunin For This Post:
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi Friends,
Can any of you explain me about the below line of code?
mn_code=`env|grep "..mn"|awk -F"=" '{print $2}'`
Im not able to understand, what exactly it is doing :confused:
Any help would be useful for me.
Lokesha (4 Replies)
Discussion started by: Lokesha
4 Replies
2. Shell Programming and Scripting
Hi,
I have line in input file as below:
3G_CENTRAL;INDONESIA_(M)_TELKOMSEL;SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL
My expected output for line in the file must be :
"1-Radon1-cMOC_deg"|"LDIndex"|"3G_CENTRAL|INDONESIA_(M)_TELKOMSEL"|LAST|"SPECIAL_WORLD_GRP_7_FA_2_TELKOMSEL"
Can someone... (7 Replies)
Discussion started by: shis100
7 Replies
3. UNIX for Dummies Questions & Answers
strange :)
can you tell why?:cool:
#!/bin/bash
echo " enter your age "
read age
if ; then
echo " you do not have to pay tax "
elif ]; then
echo " you are eligible for income tax "
else
echo " you dont have to pay tax "
fi (3 Replies)
Discussion started by: me.
3 Replies
4. UNIX for Dummies Questions & Answers
Hi ,
i have some files of specific pattern ...i need to look for files which are having size greater than zero and move those files to another directory..
Ex...
abc_0702,
abc_0709,
abc_782
abc_1234 ...etc
need to find out which is having the size >0 and move those to target directory..... (7 Replies)
Discussion started by: dssyadav
7 Replies
5. Shell Programming and Scripting
I have a bunch of random character lines like ABCEDFG. I want to find all lines with "A" and then change any "E" to "X" in the same line. ALL lines with "A" will have an "X" somewhere in it. I have tried sed awk and vi editor. I get close, not quite there. I know someone has already solved this... (10 Replies)
Discussion started by: nightwatchrenba
10 Replies
6. UNIX for Dummies Questions & Answers
How to use "mailx" command to do e-mail reading the input file containing email address, where column 1 has name and column 2 containing “To” e-mail address
and column 3 contains “cc” e-mail address to include with same email.
Sample input file, email.txt
Below is an sample code where... (2 Replies)
Discussion started by: asjaiswal
2 Replies
7. Shell Programming and Scripting
Okay, so I have a rather large text file and will have to process many more and this will save me hours of work.
I'm not very good at scripting, so bear with me please.
Working on Linux RHEL
I've been able to filter and edit and clean up using sed, but I have a problem with moving lines.
... (9 Replies)
Discussion started by: rex007can
9 Replies
8. Shell Programming and Scripting
Hi everybody,
I am new at Unix/Bourne shell scripting and with my youngest experiences, I will not become very old with it :o
My code:
#!/bin/sh
set -e
set -u
export IFS=
optl="Optl"
LOCSTORCLI="/opt/lsi/storcli/storcli"
($LOCSTORCLI /c0 /vall show | grep RAID | cut -d " "... (5 Replies)
Discussion started by: Subsonic66
5 Replies
9. Shell Programming and Scripting
Hello.
System : opensuse leap 42.3
I have a bash script that build a text file.
I would like the last command doing :
print_cmd -o page-left=43 -o page-right=22 -o page-top=28 -o page-bottom=43 -o font=LatinModernMono12:regular:9 some_file.txt
where :
print_cmd ::= some printing... (1 Reply)
Discussion started by: jcdole
1 Replies
10. AIX
Hi 2 all,
i have had AIX 7.2
:/# /usr/IBMAHS/bin/apachectl -v
Server version: Apache/2.4.12 (Unix)
Server built: May 25 2015 04:58:27
:/#:/# /usr/IBMAHS/bin/apachectl -M
Loaded Modules:
core_module (static)
so_module (static)
http_module (static)
mpm_worker_module (static)
... (3 Replies)
Discussion started by: penchev
3 Replies
LEARN ABOUT DEBIAN
rolldice
ROLLDICE(6) Games Manual ROLLDICE(6)
NAME
rolldice - rolls virtual dice
SYNOPSIS
rolldice [ options ] dice_string dice_string ...
DESCRIPTION
rolldice rolls virtual dice. The dice strings passed on the command line contain information on the dice to roll in a format comparable to
the format used in fantasy role playing games.
OPTIONS
-h,--help
returns the usage of diceroll
-v,--version
returns the version of diceroll
-r,--random
uses /dev/random for random number generating
-u,--urandom
uses /dev/urandom for random number generating (default)
-s,--separate
prints out the result of each individual die separately, as well as the operations and totals
DICE STRING FORMAT
The dice string uses the following format:
{#x}{#}d[#|%]{*#}{+/-#}{s#}
The dice string doesn't have to be in the format that I outlined above, but this is the nicest order for me. It will try to parse any dif-
ferent string containing the same sections in the best way it can, and will throw out anything that isn't one of the sections below.
{#}d[#|%]
This is the only required part of the string, and now really isn't even required, as it defaults to 1d6 if not found. The
first number is the number of dice to roll, and the second number is the number of sides the dice have. The numbers rolled
on each die are then added up and given as the result. Hence 3d6 means "roll three six-sided dice, add them together and
return the result". If the first number is left out, then the number of dice defaults to 1. If the second number is not a
number, but a percentage sign, then the number of sides becomes 100 (for a percentage roll).
{#x} This number tells how many times to roll. For example, if you want to roll 3 6-sided dice 6 times, you would say 6x3d6.
This would return six numbers, corresponding to the six different rolls.
{*#} This number tells how many times to multiply the result of each roll. 3d6*100 would return a number in the range of
300-1800, since 3-18 is the range resulting from 3d6, which is then multipled by 100.
{+/-#} This number is the modifier to be added or subtracted, depending on the sign, from each roll. 1d4+1 would result in a range
from 2-5 (1-4 for the die, plus 1). This step is handled *after* the multiplication modifier.
{s#} This number tells the program to drop the # lowest dice rolls. This step is handled *before* the multiplication modifier.
in the order show above. For an extreme example, "3x4d6*5+1s2" would roll four six-sided dice, drop the lowest two, multiply the result by
5, add 1 to that, and repeat the process two more times, for a total of three results.
DIAGNOSTICS
The following error messages may appear on STDERR:
Failure in getting dice attributes
Either memory could not be allocated while parsing the string passed to the rolldice program or an invalid dice string was entered.
Failure in rolling dice
Memory could not be allocated while actually rolling the dice.
Unknown option
Take a wild guess ;)
BUGS
I haven't noticed any yet... rolldice is a quick hack to provide a virtual dice roller for FRPGs that I play. Any improvements are
greatly welcome, as I am not the most experienced C coder...
AUTHOR
Stevie Strickland <sstrickl@cc.gatech.edu>
VERSION
1.10 - 25 Nov 2001
Linux 25 Nov 2001 ROLLDICE(6)