Convert to lower case based on pattern


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Convert to lower case based on pattern
# 1  
Old 04-18-2014
Convert to lower case based on pattern

Hi Gurus,

I am trying to convert some lines in a file based on the patter.Below is an example. Text after cn= and uid: should be converted to lower case.

Code:
Input:
dn: cn=XXX,ou=111,dc=222,dc=333,dc=444
uid: XXX
userPassword:: aAbVCeDr

dn: cn=XYZ,ou=111,dc=222,dc=333,dc=444
uid: XYZ
userPassword:: aAbVCesdsaDr

dn: cn=ABC,ou=111,dc=222,dc=333,dc=444
uid: ABC
userPassword:: aAbVzcxxvcxCeDr


Code:
output:
dn: cn=xxx,ou=111,dc=222,dc=333,dc=444
uid: xxx
userPassword:: aAbVCeDr

dn: cn=xyz,ou=111,dc=222,dc=333,dc=444
uid: xyz
userPassword:: aAbVCesdsaDr

dn: cn=abc,ou=111,dc=222,dc=333,dc=444
uid: abc
userPassword:: aAbVzcxxvcxCeDr

Thanks for the help.
Samingla
# 2  
Old 04-18-2014
What have you tried so far?
# 3  
Old 04-18-2014
Code:
nawk 'BEGIN{FS=OFS="cn="} t=tolower($1); print t,$2}' input.txt

# 4  
Old 04-18-2014
Code:
awk 'BEGIN{FS=OFS=","} /cn=/{uid=substr($1,index($1,"=")+1)}
/cn=|uid/{sub(uid,tolower(uid),$1)} 1 ' input.txt

This User Gave Thanks to anbu23 For This Post:
# 5  
Old 04-18-2014
Hello,

Following may also help.

Code:
awk -F"\:|\," '/cn/ {$2=tolower($2); OFS=","}; /uid\:/ {$2=tolower($2);OFS=":"} 1' check_lower_case

Output will be as follows.

Code:
Input:
dn, cn=xxx,ou=111,dc=222,dc=333,dc=444
uid: xxx
userPassword:: aAbVCeDr
dn, cn=xyz,ou=111,dc=222,dc=333,dc=444
uid: xyz
userPassword:: aAbVCesdsaDr
dn, cn=abc,ou=111,dc=222,dc=333,dc=444
uid: abc
userPassword:: aAbVzcxxvcxCeDr


Thanks,
R. Singh

Last edited by RavinderSingh13; 04-18-2014 at 04:03 AM.. Reason: changed output as per request
This User Gave Thanks to RavinderSingh13 For This Post:
# 6  
Old 04-18-2014
Hi Singh,

Thanks for the update. I see that the empty line is missing after each section of records.

Thanks,
Sam
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Convert text to lower case except the strings within single quotes

Shell : bash that comes with RHEL 6.7 I have SQL scripts like below. I want to convert all the text in these files to lower case except the strings enclosed within single quotes . Any idea how I can achieve this ? Sample text: $ cat sample.txt SELECT ... (6 Replies)
Discussion started by: John K
6 Replies

2. UNIX for Dummies Questions & Answers

To convert Lower case to Upper Case

There is a script where we pass the parameter in lower case: say: . ./scriptName pArameter #!/bin/ksh echo "`date` Entering $0 Reloading the $1 table " mname1=$1 (code to login MYSQL Database) Truncate table $mname1; exit ! Since now there is a limitaion of MYSQL that it accept... (5 Replies)
Discussion started by: ambarginni
5 Replies

3. Shell Programming and Scripting

Conversion from Upper Case to Lower Case Condition based

Hello Unix Gurus : It would be really appreciative if can find a solution for this . I have records in a file . I need to Capitalize the records based on condition . For Example i tried the following Command COMMAND --> fgrep "2000YUYU" /export/home/oracle/TST/data.dat | tr '' ''... (12 Replies)
Discussion started by: tsbiju
12 Replies

4. Shell Programming and Scripting

Convert contents of file to lower case with SED

Hi I what to add option to existing sed code to convert target file to lower case #!/bin/ksh SOURCE_DATA_DEST=/ora TARGET_DATA_DEST=/home/oracle/alexz TARGET_DB_SID=T102_test sed -e "s/REUSE/SET/g" \ -e "s/NORESETLOGS/RESETLOGS/g" \ T102_ccf.sql > target.sql Thanks (2 Replies)
Discussion started by: zam
2 Replies

5. Shell Programming and Scripting

Script to Convert Upper case to Lower case

Hi All I have a script which extracts values from a Database (A persons name) and puts it into a variable in my script IE: $NAME However the Value in the DB is all in uppercase and contains the users first name and last name EG: > echo $NAME GRAHAM BOYLE > What I need is only the... (7 Replies)
Discussion started by: grahambo2005
7 Replies

6. Shell Programming and Scripting

convert upper case to lower case in ascript

I have a package to install and the installation script which does it . The files/directories names in the script are all lower case but the actual package has everything in upper case - file names, directories . I don't want to rename directories and files in the package - it has a lot of them . ... (2 Replies)
Discussion started by: vz6zz8
2 Replies

7. Shell Programming and Scripting

how to convert from upper to lower case

Hi I am working in ksh and need to convert the following line into lower case: N344 N228 P227 N115 P116 N332 P331 P343 P293 N342 N294 N335 N329 P330 P336 P097 P092 N098 P334 N337 P345 P338 N091 N333 so the output should look like this: n344 n228 p227 n115 p116 n332 p331 p343 p293 n342... (5 Replies)
Discussion started by: aoussenko
5 Replies

8. Shell Programming and Scripting

how to convert value in a variable from upper case to lower case

Hi, I have a variable $Ctrcd which contains country names in upper case and i want to convert them into lower case. I have tried so many solutions from already existing threads but couldn't get the correct one. Can anybody help me with this..... Thanks a lot.. (2 Replies)
Discussion started by: manmeet
2 Replies

9. Shell Programming and Scripting

Script needed to select and delete lower case and mixed case records

HELLO ALL, URGENTLY NEEDED A SCRIPT TO SELECT AND DELETE LOWER AND MIXED CASE RECORDS FROM A COLUMN IN A TABLE. FOR EXAMPLE : Table name is EMPLOYEE and the column name is CITY and the CITY column records will be: Newyork washington ... (1 Reply)
Discussion started by: abhilash mn
1 Replies

10. UNIX for Dummies Questions & Answers

lower case to upper case string conversion in shell script

How can convert a Lower case variable value to an upper case in the kron shell script. (3 Replies)
Discussion started by: dchalavadi
3 Replies
Login or Register to Ask a Question