05-07-2009
sed - matching pattern one but not pattern two
All,
I have the following file:
--------------------------------------
#
# /etc/pam.d/common-password - password-related modules common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of modules that define the services to be
# used to change user passwords. The default is pam_unix2 in combination
# with pam_pwcheck.
# The "nullok" option allows users to change an empty password, else
# empty passwords are treated as locked accounts.
#
# To enable Blowfish or MD5 passwords, you should edit
# /etc/default/passwd.
#
# Alternate strength checking for passwords should be configured
# in /etc/security/pam_pwcheck.conf.
#
# pam_make can be used to rebuild NIS maps after password change.
#
password required pam_passwdqc.so retry=5 ask_oldauthok min=disabled,8,8,8,8 passphrase=0 random=0 force=everyone
password required pam_pwcheck.so nullok
password required pam_unix2.so nullok use_authtok
#password required pam_make.so /var/yp
--------------------------------------------------------------------
What I would like to do is generate a sed command that will:
Add "use_first_pass" to a line if the line contains "pam_unix2.so" but the line does *not* contain "use_first_pass".
The remainer of the file should be left alone.
I can generate the logic with:
a regex of:
(.*pam_unix2\.so.*) (?!.*use_first_pass.*)
I am having trouble translating that into a sed expression.
Thanks,
-Robert
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
MSG="THERE WERE XX RECORDS IN ERROR TABLE,AAAA, WHEN LOADING THE BBBB TABLE WITH EXTRACT FROM CCCC INTO TABLES FOR , DATABASE DDDD."
echo "$MSG" > /tmp/mplanmsg.$$.out
I wan to replace XX with the content in $recordXX
cat /tmp/mplanmsg.$$.out|sed 's/XX/\$recordXX/g'| sed... (3 Replies)
Discussion started by: leemjesse
3 Replies
2. Shell Programming and Scripting
Hi,
I have a file which contains a word like ravi and ravi30.
i want to replace only the word ravi with xxx for that i am using the below sed command
sed -e 's/ravi/xxx/g' .
but the above command out put is xxx and xxx30 but i dont need to change ravi30
please guide me how to proceed.... (4 Replies)
Discussion started by: ravi_rn
4 Replies
3. Shell Programming and Scripting
Hi all,
if I have the following piece (repeating) of text within a file and I wish to delete it via sed
a
b
c
d
e
<tr>
<td><img alt="" height="1" width="3" src="/testweb/view/browser/images/shim.gif"></td><td><img alt="" height="1" ... (4 Replies)
Discussion started by: srage
4 Replies
4. Shell Programming and Scripting
Unfortunately this chap has been banned for some reason and I was looking forward to the resolution of his question: -
https://www.unix.com/shell-programming-scripting/123118-append-position-28-33-a.html
He was asking if you can use sed to match a pattern you want to replace within a... (6 Replies)
Discussion started by: steadyonabix
6 Replies
5. Shell Programming and Scripting
Hello All,
I have the following lines in a file
<address location="test"
ConnectionName="test" />
I want to replace the above lines by
<address location="test123" />
I am usind SED and not able to remove the new line characters between the two lines.
Can anyone please help... (4 Replies)
Discussion started by: ramk
4 Replies
6. Shell Programming and Scripting
I have a bunch of conf files, that contain the fully qualified names of servers. I would like to be able to use some sort of pattern matching with sed or vi, or whatever, to pull out the fully qualified server names, and dump them in a file.
It just needs to work across several unix os. So, I... (4 Replies)
Discussion started by: tabini
4 Replies
7. Shell Programming and Scripting
Hi
My log file is Testtmp2
cat Testtmp2
12:12:38
12:14:29
12:17:34
12:19:08
12:20:10
12:21:35
12:22:20
12:22:26
12:22:34
12:22:38
12:28:14
12:31:35
12:32:50
12:33:04 (3 Replies)
Discussion started by: rahkumar
3 Replies
8. Shell Programming and Scripting
'Hi
I'm using the following code to extract the lines(and redirect them to a txt file) after the pattern match. But the output is inclusive of the line with pattern match.
Which option is to be used to exclude the line containing the pattern?
sed -n '/Conn.*User/,$p' > consumers.txt (11 Replies)
Discussion started by: essem
11 Replies
9. Shell Programming and Scripting
HI, I have a file:
listenerport:
- 1521
- 10520
- 10521
- 10522
- 10523
instances:
listenerport:
listenerport:
- 1521
- 10540
- 10541
- 10542
- 10543
instances:
... (5 Replies)
Discussion started by: netbanker
5 Replies
10. Shell Programming and Scripting
The intended result should be :
PDF converters
'empty line'
gpdftext and pdftotext?xml version="1.0"?>
xml:space="preserve"><note-content version="0.1" xmlns:/tomboy/link" xmlns:size="http://beatniksoftware.com/tomboy/size">PDF converters
gpdftext and pdftotext</note-content>... (9 Replies)
Discussion started by: Klasform
9 Replies
LEARN ABOUT DEBIAN
pqlist
PQLIST(1) pqlist PQLIST(1)
NAME
pqlist - List available NetWare print queues
SYNOPSIS
pqlist [ -h ] [ -S server ] [ -U user name ] [ -P password
| -n ] [ -C ] [ pattern ]
DESCRIPTION
pqlist lists all the NetWare print queues available to you on some server. If you are already connected to some server, this one is used.
If pqlist does not print to a tty, the decorative header line is not printed, so that you can count the printing queue available on your
server by doing
pqlist -S server | wc -l
pqlist looks up the file $HOME/.nwclient to find a file server, a user name and possibly a password. See nwclient(5) for more information.
Please note that the access permissions of .nwclient MUST be 600, for security reasons.
OPTIONS
pattern
pattern is used to list only selected queues. You can use wildcards in the pattern, but you have to be careful to prevent shell inter-
pretation of wildcards like '*'.
-h
-h is used to print out a short help text.
-S server
server is the name of the server you want to use.
-U user name
If the user name your NetWare administrator gave to you differs from your unix user-id, you should use -U to tell the server about your
NetWare user name.
-P password
You may want to give the password required by the server on the command line. You should be careful about using passwords in scripts.
-n
-n should be given to mount shares which do not require a password to log in.
If neither -n nor -P are given, pqlist prompts for a password.
-C
By default, passwords are converted to uppercase before they are sent to the server, because most servers require this. You can turn off
this conversion by -C.
SEE ALSO
nwclient(5), nprint(1), slist(1), ncpmount(8), ncpumount(8)
CREDITS
pqlist was written by Volker Lendecke (lendecke@math.uni-goettingen.de)
pqlist 01/10/1996 PQLIST(1)