#!/bin/sh
for A in file.txt
do
egrep 'pattern1' ${A}.txt > ${A}_p1.temp
egrep 'pattern2' ${A}.txt > ${A}_p2.temp
for B in *_p*.temp
do
C=`basename ${B} .temp`
D=`cut -c 5-15 ${C}`
awk '{print '"${D}"',$0}' ${A}_p1.temp >> allresults.tab
awk '{print '"${D}"',$0}' ${A}_p1.temp >> allresults.tab
done
exit;
1. egrep 'pattern1' ${A}.txt > ${A}_p1.temp --> Why have you given ${A}.txt? Is there a file by name "file.txt.txt"?
2. Why do you want to use for-loop for just one file "file.txt"?
3. Your first for-loop has a "do" but doesn't have a corresponding "done".
4. "exit" is really not required at the end because your script will end anyway. Use exit only if you want to abruptly terminate the program after some conditional check.
5. And please indent your script.
------------------------
Ah, methyl has already replied!
Last edited by balajesuri; 12-15-2011 at 07:03 AM..
Reason: Late reply
@lucasvs regarding post #3. Is it safe to assume that your error message has gone?
Read post #4 first. There are useful comments about filenames and whether the first "for" is needed.
It is quite difficult to advise on a script which is failing unless we know what the script is intended to achieve. It always helps to post sample input (blotting anything confidential) , brief description of the process, sample expected output.
I've just realised the second awk command has to look in ${A}_p2.temp (not p1).
Sorry methyl, I should have explained before.
Briefly, I try to:
1) find different patterns (more than 50 in total) in a text file (called file.txt),
2) extract them,
3) and put them in a same file called allresults.tab.
After adding the second "done", I don't have "unexpected end of file" error message.
Now it seems there is a problem with the cut command,
and with the awk command:
Based on what we know so far the whole process can be boiled down to:
I am concerned about the use of the word "pattern" (which has special meaning in unix). Can we assume that you mean "string".
If the 50 strings were held in a file, you may wish to look at "grep -f".
Can't see what the "basename" , "cut" , "awk" lines are trying to achieve.
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)
Hello all,
I am running a script to generate a report and mail it to an email address.
When I am trying to validate whether the file is a 0 kb file, I am getting the below error.
Error: "Syntax error; unexpected end of file"
Any suggestions please?
Code:
#!/bin/sh
.... (1 Reply)
This is a script I got off the web for transferring Safari's "reading list" to the Pocket app. I ran it in terminal with the command bash exportsafarireadinglist.sh and got syntax error: unexpected end of file. Thanks for any help! The code:
#!/bin/bash
# Script to export Safari's reading... (2 Replies)
While i m running below code, it is giving me the error"syntax error at line 15: `end of file' unexpected".
Pls let me know what is wrong here..i tried many ways, but no luck
dbSID="SWQE"
usrname="apps"
password="Wrgthrk3"
count=0
while
do
sqlplus $usrname/$password@$dbSID... (5 Replies)
Hi All,
Please hav a look at the below peice of script and let me know if there are any syntax errors.
i found that the below peice of Script is causing issue. when i use SFTP its working fine, but there is a demand to use FTP only. please find below code and explain if anything is wrong... (1 Reply)
Hi Techies,
can anyone please debug the following Script and let me know what is going wrong here.
im getting the following error
#!/usr/bin/bash
# ##############################################################################################
#
# Variables
#
#... (2 Replies)
Well, this is a very crazy issue, and I'm scratching my head to find a solution.
This is a simple code to tranfer a file, in my main script I need to add a conditional statement (IF/THEN) like the below example:
#!/bin/bash
if ; then
ftp -inv "192.168.1.10" << EOFTP
user... (8 Replies)
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)
I have a trouble in my script when i use EOF inside block if.
If i use EOF whitout block if I donīt have problem.
Guys any ideas?
Sorry for my terrible English.
#!/bin/sh
set -xv
HOST='ftp.fiction.com.br'
USER='fictionuser'
PASS='fictionpass'
FILE='ftpteste.txt'
busca=`find... (4 Replies)