03-05-2009
Sed inside bash script - accessing multiple files
I have a file (email) containing email addresses.
I have a second file (terms) that contains simple regular expressions and words/characters. Here are some examples:
\.trainee
\.group
\.web
I want to go through email and delete lines containing the expressions/words from terms and write to a new file - newemail.
So I thought I would use sed in a shell script. Here is what I tried.
#!/bin/bash
for x in `cat /usr/local/terms`
do
sed '/"$x"/d' email > newemail
done
When I run the above, all I get is a cat of the complete email file. I am thinking that I am missing some punctuation or delimiter or this can't be done with sed inside a script.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
hi,
Is there a way to access the redirected file inside the script. Here is what the command line looks like:
$ shar * > archive_file.arc
I know I can't access the name of archive_file.arc with positional parameters like $1, $2.. Is there any way to figure out what file the output of the... (3 Replies)
Discussion started by: milhan
3 Replies
2. Shell Programming and Scripting
I have a directory full of zip files.
How would I write a bash script to enumerate all the zip files, remove the ".zip" from the file name, create a directory by that name and unzip each zip file into its corresponding directory?
Thanks!
Siegfried (3 Replies)
Discussion started by: siegfried
3 Replies
3. Shell Programming and Scripting
Hi All,
I have some files in my directory, and i want to pull all data using for loop....I am using following code but getting error..!
for file in {file1, file2, file3, ..... filen}
do
L="$(tail -1 $file)";NUM=${L%%|*};DAT=${L##*|}
echo $NUM>>filedata.txt
done
Error:
tail:... (3 Replies)
Discussion started by: fidelis
3 Replies
4. Shell Programming and Scripting
I'm trying to write a bash script and call it "compile" such that running it allows me to compile multiple files with the options "-help," "-backup," and "-clean". I've got the code for the options written, i just can't figure out how to read the input string and then translate that into option... (5 Replies)
Discussion started by: travis.batzer
5 Replies
5. Shell Programming and Scripting
Hi, I have a bunch of media files in a directory that have been converted (from MTS to MOV format), so my directory contains something like this:
clip1.mts
clip1.mov
clip2.mts
clip2.mov
The problem is that the .mov files that have been created have the timestamps of the conversion task,... (2 Replies)
Discussion started by: Krakus
2 Replies
6. Shell Programming and Scripting
I have 2 files generated in linux that has common output and were produced across multiple hosts with the same setup/configs. These files do some simple reporting on resource allocation and user sessions. So, essentially, say, 10 hosts, with the same (2) system reporting in the files, so a... (0 Replies)
Discussion started by: jdubbz
0 Replies
7. Shell Programming and Scripting
Hi,
I'm using awk command in bash script. I'm able to pass multiple files to awk for processing.The code i can use is as below(sample code)
#!/bin/bash
awk -F "," 'BEGIN {
...
...
...
}' file1 file2 file3
In the above code i'm passing the file names manually and it is fine till my... (7 Replies)
Discussion started by: shree11
7 Replies
8. Shell Programming and Scripting
Hi Everybody,
I'm a newbie to shell scripting, and I'd appreciate some help. I have a bunch of .txt files that have some unwanted content. I want to remove lines 1-3 and 1028-1098.
#!/bin/bash
for '*.txt' in <path to folder>
do
sed '1,3 d' "$f";
sed '1028,1098 d' "$f";
done
I... (2 Replies)
Discussion started by: BabyNuke
2 Replies
9. Shell Programming and Scripting
Hi,
I need to perform the untar and rm operation if the file found is a .tar and does not have test.tar or hello.tar as the file names.
Below is the loop to check the same.
for tf in *.tar
do if ]
then found=1
... (1 Reply)
Discussion started by: mohtashims
1 Replies
10. Shell Programming and Scripting
I want to run commands inside a bash script.
An example is
I want to pass the command in a string as regexp as an argument to the script, then run sed on the bash variable
sed.sh regexp
sed.sh "-i \"s/<p>//g\""
then call
sed "$regexp" $fl (3 Replies)
Discussion started by: Kangol
3 Replies
LEARN ABOUT SUSE
calibre-smtp
CALIBRE-SMTP(1) calibre CALIBRE-SMTP(1)
NAME
calibre-smtp - part of calibre
SYNOPSIS
calibre-smtp [options] [from to text]
DESCRIPTION
Send mail using the SMTP protocol. calibre-smtp has two modes of operation. In the compose mode you specify from to and text and these are
used to build and send an email message. In the filter mode, calibre-smtp reads a complete email message from STDIN and sends it.
text is the body of the email message. If text is not specified, a complete email message is read from STDIN. from is the email address
of the sender and to is the email address of the recipient. When a complete email is read from STDIN, from and to are only used in the SMTP
negotiation, the message headers are not modified.
Whenever you pass arguments to calibre-smtp that have spaces in them, enclose the arguments in quotation marks.
OPTIONS
--version
show program's version number and exit
-h, --help
show this help message and exit
-l, --localhost
Host name of localhost. Used when connecting to SMTP server.
-o, --outbox
Path to maildir folder to store failed email messages in.
-f, --fork
Fork and deliver message in background. If you use this option, you should also use --outbox to handle delivery failures.
-t, --timeout
Timeout for connection
-v, --verbose
Be more verbose
COMPOSE MAIL
Options to compose an email. Ignored if text is not specified
-a, --attachment
File to attach to the email
-s, --subject
Subject of the email
SMTP RELAY
Options to use an SMTP relay server to send mail. calibre will try to send the email directly unless --relay is specified.
-r, --relay
An SMTP relay server to use to send mail.
--port Port to connect to on relay server. Default is to use 465 if encryption method is SSL and 25 otherwise.
-u, --username
Username for relay
-p, --password
Password for relay
-e, --encryption-method
Encryption method to use when connecting to relay. Choices are TLS and SSL. Default is TLS.
SEE ALSO
The User Manual is available at http://calibre-ebook.com/user_manual
Created by Kovid Goyal <kovid@kovidgoyal.net>
calibre-smtp (calibre 0.6.53) July 2010 CALIBRE-SMTP(1)