05-04-2009
BEGIN{ error="false";line=1;
}
{
check_count=split($0,count," ");
if (check_count<=3)
{
printf("Not enough sub strings in line %d should have method ,figures of row and count syntax and at least on$
error="true";
}
if ($1!="row"&&$1!="all")
{
printf("Bad name of words appearance metrhod on line %d, should be "all" or "row"\n",line);
error="true";
}
digits[1] = 0;
digits[2] = 0;
len[1] = split( $2, arr1 ,"" )
len[2] = split( $3, arr2 ,"" )
for ( i = 1; i <= len[1]; i++ )
if (( arr1[i] + 0 ) == arr1[i] )
digits[1]++
for ( i = 1; i <= len[2]; i++ )
if (( arr2[i] + 0 ) == arr2[i] )
digits[2]++
for (i=1;i<=2;i++)
{
if (i==1)
str="row";
else
str="all";
if ( len[i] != digits[i]||digits[i]<0 )
{
printf("Invaild value for the %s field on line %d should be numeric and equal or great from 0\n",str,line);
error="true";
}
}
}
END {exit(error);
}
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
hello all
I have long awk function that doing manipulations on text file but when I write the out put to new text file I have carriage return between 2 print commands
How can I avoid this ?
Here is my awk :
echo $f | awk... (1 Reply)
Discussion started by: umen
1 Replies
2. Shell Programming and Scripting
Hi.
I have a script like this:
nawk 'BEGIN {FS=","; TOT1=0; REJ1=0;} {
if($7=="TOTAL") { TOT1=TOT1 +$8}
if($7=="REJS") { REJ1=REJ1 +$8}
}' FILE_123.dat
and... (1 Reply)
Discussion started by: mrodrig
1 Replies
3. Shell Programming and Scripting
I have a file with the record of person:
cat > $TMP/record.txt
John Torres M Single 102353 Address
Mark Santos M Maried 103001 Address
Carla Maria F Maried 125653 Address
#!/bin/ksh
ManipulateID(){
...
return 0;
... #or
return 1;
}
cat $TMP/record.txt | awk 'BEGIN {printf... (4 Replies)
Discussion started by: Orbix
4 Replies
4. Shell Programming and Scripting
I'm a bit stuck in getting variable from awk to shell. I tried searching but most of them showing to assign to shell variable via..
VAR=`echo $line | awk -F: '{print $1}'`
which is correct ofcourse
My problem is multiple assignments of variable like this one. The above solution will give... (10 Replies)
Discussion started by: ryandegreat25
10 Replies
5. Shell Programming and Scripting
Hi
I have 2 working script, now i'd like to get the return value from the first and give it to the 2 script (both script work correctly if I run it separately). so i think the problem is only the first line in the way i pass the variable.
in the final the "print lst", is just to check the... (2 Replies)
Discussion started by: Dedalus
2 Replies
6. UNIX for Dummies Questions & Answers
Hello, I am using awk to process a file, and need to return a row that meets specific criteria.
awk 'BEGIN{sets variables}
{processes file, updates variables}
END{need to print a row that meets the criteria in one of the variables}
I have tried code in the END block like {print NR==var}... (1 Reply)
Discussion started by: badPuppy
1 Replies
7. Shell Programming and Scripting
I have a string with the following information and want to return the number of entries enclosed by <> in awk
<stdin>: N = 441 <0.369000018/0.569000006> <0.369000018/0.569000006> <0/1> (7 Replies)
Discussion started by: kristinu
7 Replies
8. Shell Programming and Scripting
I have the following awk script that I am using to find the max value in the file and print results.
awk 'BEGIN {MAX=-1E100} {for (x=2; x<=NF; x++) if ($x>MAX) {MAX = $x; C1 = $1}} END {print substr(C1,1,11), substr(C1,13,4), substr(C1,18,2), MAX}' ABC*
Input (ABC*)
... (6 Replies)
Discussion started by: ncwxpanther
6 Replies
9. Shell Programming and Scripting
What is an awk command to print only fields with a number in it??
Input file.......
S,S,S,S,S,S,S,S,S
001S,S,S,S,S,S,S,S,S
00219S,23S,24S,43S,47S,S,S,S,S
00319S,10S,23S,41S,43S,47S,S,S,S
00423S,41S,43S,46S,47S,S,S,S,S
00510S,23S,24S,43S,46S,S,S,S,S
00610S,23S,43S,46S,47S,S,S,S,S... (2 Replies)
Discussion started by: garethsays
2 Replies
10. Shell Programming and Scripting
The below awk is used with the attached index.html and matches the specific user id in the sub portion with path of /rundb/api/v1/plugin/49/. The command does run but the output is blank. Something changed in the file structure as it used to work.
So using the first line in the output:
... (2 Replies)
Discussion started by: cmccabe
2 Replies
LEARN ABOUT OPENDARWIN
begin
BEGIN(7) SQL Commands BEGIN(7)
NAME
BEGIN - start a transaction block
SYNOPSIS
BEGIN [ WORK | TRANSACTION ] [ transaction_mode [, ...] ]
where transaction_mode is one of:
ISOLATION LEVEL { SERIALIZABLE | REPEATABLE READ | READ COMMITTED | READ UNCOMMITTED }
READ WRITE | READ ONLY
DESCRIPTION
BEGIN initiates a transaction block, that is, all statements after a BEGIN command will be executed in a single transaction until an
explicit COMMIT [commit(7)] or ROLLBACK [rollback(7)] is given. By default (without BEGIN), PostgreSQL executes transactions in ``autocom-
mit'' mode, that is, each statement is executed in its own transaction and a commit is implicitly performed at the end of the statement (if
execution was successful, otherwise a rollback is done).
Statements are executed more quickly in a transaction block, because transaction start/commit requires significant CPU and disk activity.
Execution of multiple statements inside a transaction is also useful to ensure consistency when making several related changes: other ses-
sions will be unable to see the intermediate states wherein not all the related updates have been done.
If the isolation level or read/write mode is specified, the new transaction has those characteristics, as if SET TRANSACTION [set_transac-
tion(7)] was executed.
PARAMETERS
WORK
TRANSACTION
Optional key words. They have no effect.
Refer to SET TRANSACTION [set_transaction(7)] for information on the meaning of the other parameters to this statement.
NOTES
START TRANSACTION [start_transaction(7)] has the same functionality as BEGIN.
Use COMMIT [commit(7)] or ROLLBACK [rollback(7)] to terminate a transaction block.
Issuing BEGIN when already inside a transaction block will provoke a warning message. The state of the transaction is not affected. To
nest transactions within a transaction block, use savepoints (see SAVEPOINT [savepoint(7)]).
For reasons of backwards compatibility, the commas between successive transaction_modes can be omitted.
EXAMPLES
To begin a transaction block:
BEGIN;
COMPATIBILITY
BEGIN is a PostgreSQL language extension. It is equivalent to the SQL-standard command START TRANSACTION [start_transaction(7)], whose ref-
erence page contains additional compatibility information.
Incidentally, the BEGIN key word is used for a different purpose in embedded SQL. You are advised to be careful about the transaction
semantics when porting database applications.
SEE ALSO
COMMIT [commit(7)], ROLLBACK [rollback(7)], START TRANSACTION [start_transaction(7)], SAVEPOINT [savepoint(7)]
SQL - Language Statements 2010-05-14 BEGIN(7)