[CentOS] OT: Script Help
John Doe
jdmls at yahoo.com
Tue May 21 14:17:37 UTC 2013
From: John Doe <jdmls at yahoo.com>
> From: James Pifer <jep at obrien-pifer.com>
>> I have a long file that has lines like this:
>> some text
>> some text2
>> CN=DATA.OU=XYZ.O=CO
>> some text3
>> some text4
>>
>> I need to change the middle line but leave the rest of the file as is
>> like this:
>> some text
>> some text2
>> CN=XYZ_DATA.OU=XYZ.O=CO
>> some text3
>> some text4
>
> IFS="."; cat file | while read L; do set $L; if [ "$1" =
> "CN=DATA" ]; then P1=${1#CN=}; P2=${2#OU=}; echo
> "CN=${P2}_$P1.$2.$3"; else echo $*; fi; done
Oops, if DATA means "DATA":
IFS="."; cat file | while read L; do set $L; if [ "$1" = "CN=DATA" ]; then P=${2#OU=}; echo "CN=${P}_DATA.$2.$3"; else echo $*; fi; done
If DATA is generic:
IFS="."; cat file | while read L; do set $L; if [ "${1%=*}" = "CN" ]; then P1=${1#CN=}; P2=${2#OU=}; echo "CN=${P2}_$P1.$2.$3"; else echo $*; fi; done
JD
More information about the CentOS
mailing list