Date: Wed, 26 Aug 2020 09:57:35 +0200 From: Christoph Kukulies <kuku@kukulies.org> To: Tim Daneliuk <tundra@tundraware.com> Cc: "Dr. Nikolaus Klepp" <dr.klepp@gmx.at>, freebsd-questions@freebsd.org Subject: Re: Sed pattern help - not FreeBSD related Message-ID: <725F5FBC-A6EC-4694-8916-917B98872458@kukulies.org> In-Reply-To: <98370951-3D75-4B31-B7EE-D7578BB44D2E@kukulies.org> References: <6B02E882-D3EE-4721-B572-BFAF5C6BAC66@kukulies.org> <81c68558-175c-efef-7e43-e6cb87f3329b@tundraware.com> <5f319e25-5eaf-1ae1-3695-9a1fcc01f9be@tundraware.com> <202008260125.55781.dr.klepp@gmx.at> <dc18cd27-aa0b-9897-748c-10f742a4357d@tundraware.com> <98370951-3D75-4B31-B7EE-D7578BB44D2E@kukulies.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail=_64718891-B3EC-45BF-A074-6E4B692072F7 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 my solution: $ sed = 's/^\([A-Z0-9]*\)\(:*\)\([[:space:]]*\)\(DC[[:space:]]*[*][+]2\)/\1\2\3DC = \1+2/' <el2 LOOP: DC LOOP+2 DO: DC DO+2 J: DC J+2 ENCL: DC ENCL+2 PDP-11 VERSION OF ENCLOSE KEY DC KEY+2 EMIT DC EMIT+2 QTERM DC QTERM+2 Thanks for helping. =E2=80=94 Christoph > Am 26.08.2020 um 09:04 schrieb Christoph Kukulies <kuku@kukulies.org>: >=20 >=20 >=20 >> Am 26.08.2020 um 01:46 schrieb Tim Daneliuk <tundra@tundraware.com>: >>=20 >> On 8/25/20 6:25 PM, Dr. Nikolaus Klepp wrote: >>> Anno domini 2020 Tue, 25 Aug 18:05:45 -0500 >>> Tim Daneliuk scripsit: >>>> On 8/25/20 5:44 PM, Tim Daneliuk wrote: >>>>> On 8/25/20 4:02 PM, Christoph Kukulies wrote: >>>>>> Excuses, the result should look like: (forgot the DC) >>>>>>=20 >>>>>>> LOOP: DC LOOP+2 >>>>>>> DO: DC DO+2 >>>>>>> J: DC J+2 >>>>>>> ENCL: DC ENCL+2 PDP-11 VERSION OF ENCLOSE >>>>>>> KEY DC KEY+2 >>>>>>> EMIT DC EMIT+2 >>>>>>> QTERM DC QTERM+2 >>>>>=20 >>>>> Here is a one-liner using sed and awk. It suffers from two = deficiencies: >>>>>=20 >>>>> - It does not handle arbitrarily long comments >>>>> - It's really ugly >>>>>=20 >>>>> sed s/':'//g < myfile | awk '{print $1":", $2, $1"+2", $4, $5, = $6, $7, $8, $9. $10}' >>>>>=20 >>>>=20 >>>>=20 >>>> Oops, not quite right because it inserts colons blindly in the = first field - >>>> which appears not what you want. More correct implementation in = Python: >>>>=20 >>>> !/usr/bin/env python >>>>=20 >>>> import sys >>>>=20 >>>> for line in sys.stdin.readlines(): >>>>=20 >>>> line =3D line.strip().split() >>>> label =3D line[0] >>>> comment =3D " ".join(line[3:]) >>>> print("%s DC %s+2 %s" %(label, label.replace(':', ''), = comment)) >>>>=20 >>>>=20 >>>>=20 >>>=20 >>>=20 >>> sed 's#^\([^ \t]*\)\([^*]*\)[*]#\1\2\1#' <el2 >>>=20 >>>=20 >=20 >=20 > My problem was that BSD sed doesn=E2=80=99t recognize [ \t] as white = space. GNU sed does. >=20 > I was trying the command under FreeBSD sed and macOS sed. >=20 >>> nik >>>=20 >>>=20 >>>=20 >=20 --Apple-Mail=_64718891-B3EC-45BF-A074-6E4B692072F7 Content-Disposition: attachment; filename=smime.p7s Content-Type: application/pkcs7-signature; name=smime.p7s Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCCc0w ggSQMIIDeKADAgECAggYVYMhomAL1zANBgkqhkiG9w0BAQsFADBmMQswCQYDVQQGEwJERTEzMDEG A1UECgwqREdOIERldXRzY2hlcyBHZXN1bmRoZWl0c25ldHogU2VydmljZSBHbWJIMSIwIAYDVQQD DBlkZ25zZXJ2aWNlIENBIDIgVHlwZSBFOlBOMB4XDTIwMDUxNjE1Mjc1OVoXDTIxMDUxNjE1Mjc1 OVowbzELMAkGA1UEBhMCREUxITAfBgNVBAUTGDQwMDAwMDAwNWVjMDA4ZGQzNzNhZDhlYzEbMBkG A1UEAwwSQ2hyaXN0b3BoIEt1a3VsaWVzMSAwHgYJKoZIhvcNAQkBFhFrdWt1QGt1a3VsaWVzLm9y ZzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKug1655hQWRmOtGAShZLbMwDtrm7rAH 7p1oPtE/5KpTpJZe8LHPxxvW0EAd2JcLtEhdvAi7smhZ/giJ3IBK7OYmdaCvuQ6MFvJpkmLkQ9TO 4+RLW+PkBk8nFIUe+PQG+VurpWc8pbU4IRsWS3pEUgov9+LF6VtyYBHKD2HZwe46YBwUq7l0EHxc aa98ewCMO43XznlqjE+oKxwaS2nl1rL/SPVlfGmKqHkdSKEKl6yR1LCcI3J3HP56kqmIrvtySr7q UZVsibA+D6vArqklO99WKQmt0b4IX6TXouvAA6bNoF1FhYUyihm4omMWZkdTs7Gv5rr1fzPWXcev cMfJdtUCAwEAAaOCATcwggEzMB0GA1UdDgQWBBSQh9N17gCH/igJy5ftrVaJNm6SCTAMBgNVHRMB Af8EAjAAMB8GA1UdIwQYMBaAFOnGk9HVDwZkcupqlj66EPJUVLJ5MFYGA1UdIARPME0wSwYMKwYB BAH7KwIBAwIIMDswOQYIKwYBBQUHAgEWLWh0dHA6Ly9zZWM1LmRnbnNlcnZpY2UuZGUvcG9saWNp ZXMvaW5kZXguaHRtbDA+BgNVHR8ENzA1MDOgMaAvhi1odHRwOi8vc2VjNS5kZ25zZXJ2aWNlLmRl L2NybC9jcmwyLXR5cGUtZS5jcmwwDgYDVR0PAQH/BAQDAgSwMB0GA1UdJQQWMBQGCCsGAQUFBwMC BggrBgEFBQcDBDAcBgNVHREEFTATgRFrdWt1QGt1a3VsaWVzLm9yZzANBgkqhkiG9w0BAQsFAAOC AQEALUBRNzLAUiPi29LLATqWmrUlyacMVAtjdROQMd/AVPj0mUqTMoDO+YoWICOSEn/nEyb2Lrrz JNGqC6KO0CNROaWcEhFadKx4qtp9t26Qe/EkO0XbXexIfBxFl1ynQA54D0qtPb/SUZvTy0tq8oBt FdsIU+cXAzigEz2Z9nziHBMqThoKzAZSrk/sPvxT6MNMC/BMGlHGl0DV//wwI5vlzJiKS8iXFyxf 5VrN1IwgRyqXD8JsgF1BuEqcloSJ3JnWUGQCTURFasZDJlP0f/KJS8odUpEWDKnn6tt0RjBk0jUN i7z42ozzPn/o154AgXC2cNmROxC0gnvd+V/yIuAryDCCBTUwggQdoAMCAQICCFUcStdmrSX2MA0G CSqGSIb3DQEBCwUAMGExCzAJBgNVBAYTAkRFMTMwMQYDVQQKDCpER04gRGV1dHNjaGVzIEdlc3Vu ZGhlaXRzbmV0eiBTZXJ2aWNlIEdtYkgxHTAbBgNVBAMMFGRnbnNlcnZpY2UgUm9vdCA3OlBOMB4X DTE2MTAyNjA5MjI0MVoXDTI0MTAyNjA5MjI0MVowZjELMAkGA1UEBhMCREUxMzAxBgNVBAoMKkRH TiBEZXV0c2NoZXMgR2VzdW5kaGVpdHNuZXR6IFNlcnZpY2UgR21iSDEiMCAGA1UEAwwZZGduc2Vy dmljZSBDQSAyIFR5cGUgRTpQTjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANyl8pQ/ dMejR9KXZs5ro81tFwNhloThlXe8sat79Tjjk6xFqE5E94//0vifJxMrp9RrCkNOo5oPG1djGOgk 0L0ucpHFUH9SQF/SHbm83QvWJXgqEJpjxOKZXTPbJRKVvY25niB0FTr2omRqypiP4A/w5xA6jSJ2 P02vV6WgcPfaLQkM+SEGPxV/pzpvuY3KfzJ9li9mXPNXaJD9y+jqIUvHbCAbuYKQ5nwEAcYMXDpP RQgDQGTrRiFExHEjsZeMzEFADZj9deg/h29AMO0w2YrSvkNReh/zvDZutdy25DZvjE3AUgStWgBC 7x+2ddOb2I61o6xbIsxlfq/mzNpAGoECAwEAAaOCAeowggHmMBIGA1UdEwEB/wQIMAYBAf8CAQAw HwYDVR0jBBgwFoAUAQwWG3Ry0zwU7iZ3t0kUU9j7ixswWwYIKwYBBQUHAQEETzBNMEsGCCsGAQUF BzABhj9odHRwOi8vcm9jc3AtZGduLmRnbnNlcnZpY2UuZGU6ODA4MC9lamJjYS9wdWJsaWN3ZWIv c3RhdHVzL29jc3AwagYDVR0gBGMwYTBfBgwrBgEEAfsrAgEEAgEwTzBNBggrBgEFBQcCARZBaHR0 cDovL3d3dy5kZ25zZXJ2aWNlLmRlL3RydXN0Y2VudGVyL3B1YmxpYy9kZ25zZXJ2aWNlL2luZGV4 Lmh0bWwwgZkGA1UdHwSBkTCBjjCBi6CBiKCBhYaBgmxkYXA6Ly9sZGFwLmRnbnNlcnZpY2UuZGU6 Mzg5L0NOPUNSTC0xLE89REdOJTIwU2VydmljZSUyMEdtYkgsQz1ERT9jZXJ0aWZpY2F0ZVJldm9j YXRpb25MaXN0P2Jhc2U/b2JqZWN0Q2xhc3M9Y1JMRGlzdHJpYnV0aW9uUG9pbnQwHQYDVR0OBBYE FOnGk9HVDwZkcupqlj66EPJUVLJ5MA4GA1UdDwEB/wQEAwIBBjAbBgkrBgEEAcBtAwUEDjAMBgor BgEEAcBtAwUBMA0GCSqGSIb3DQEBCwUAA4IBAQCrvDn6Rcn7/FNq3SOJNfgYNfkdR5CiGoC4sZ+i 0dypCqqMXwbpRQjSriLS2eEe2V2Fms0E4SuBOEaxOg1nVjYafQVGtytRT0ueFIzB3VcnQl7oRFJ0 SHi9d/xjElAZkk8I8lytuWG57SabA72duEp7AaCWG3lVZIdNLy+rkNrfNvEUbqUh0TrZXgqpwwCL JjYF8vyC4I+xxNaXm3EmuNvgQ2j2dGp3Oxc0QbfLLOCbK/rOdDikaBN7kTqpfHls7pcIOhQrgrPV LzY/NHqG9zEpmjuQora63YHdu7BTzGp/DvcQwfyKa/gtb9LHn3AoSUqOKOMd02sUb/AxGhsNjMzJ MYIDFDCCAxACAQEwcjBmMQswCQYDVQQGEwJERTEzMDEGA1UECgwqREdOIERldXRzY2hlcyBHZXN1 bmRoZWl0c25ldHogU2VydmljZSBHbWJIMSIwIAYDVQQDDBlkZ25zZXJ2aWNlIENBIDIgVHlwZSBF OlBOAggYVYMhomAL1zANBglghkgBZQMEAgEFAKCCAXMwGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEH ATAcBgkqhkiG9w0BCQUxDxcNMjAwODI2MDc1NzM1WjAvBgkqhkiG9w0BCQQxIgQghDL4QhZ2JACL AsXk5UId557YiZY6mjTGgNwQlfNbuq8wgYEGCSsGAQQBgjcQBDF0MHIwZjELMAkGA1UEBhMCREUx MzAxBgNVBAoMKkRHTiBEZXV0c2NoZXMgR2VzdW5kaGVpdHNuZXR6IFNlcnZpY2UgR21iSDEiMCAG A1UEAwwZZGduc2VydmljZSBDQSAyIFR5cGUgRTpQTgIIGFWDIaJgC9cwgYMGCyqGSIb3DQEJEAIL MXSgcjBmMQswCQYDVQQGEwJERTEzMDEGA1UECgwqREdOIERldXRzY2hlcyBHZXN1bmRoZWl0c25l dHogU2VydmljZSBHbWJIMSIwIAYDVQQDDBlkZ25zZXJ2aWNlIENBIDIgVHlwZSBFOlBOAggYVYMh omAL1zANBgkqhkiG9w0BAQEFAASCAQAG2yKgWTP24Ei69VeI85UUQmxqmMi7YGtMva1ADYE/DWa1 7AOUHaaFeCZIEJKLKDrye3IcH32AHAMhEqhDHAK6L9e/Oq0lxVNqbzPKY1OfXtlDB5ryk4s+QFk4 /SmqFdnwQ0JYsNCtsaa4C/UbQ0zrYI052AISTqs19aTVljwHvcfPUnioIfVKgY3ZnT+196Ihb5NS qRRWPs+2ZGsvm1BaR8WiTCjbFj1raEIjG/RNb2+MiJrGH8MzfOt+OsdyHMLbcr9KFsogbqkSPwbz WAJms6O+fafI9UIovUkprjSvWCU/+aXN4TvzXCk62dTw0zkaV0LhyBtSu9sOerz8CD5dAAAAAAAA --Apple-Mail=_64718891-B3EC-45BF-A074-6E4B692072F7--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?725F5FBC-A6EC-4694-8916-917B98872458>