считайте запись файла записью и сделайте преобразование к последующей записи на основе вышеупомянутой записи и записи в другой файл

Существует доступный SDK, таким образом, кто-то, вероятно, скоро сделает решение Linux. Существует также диск в Google+, продолжающем прямо сейчас заставить Google добавлять клиент Linux, в дополнение к Windows, Mac и клиентам Android (не говоря уже об их планах относительно клиента iOS.)

Затем они будут на одном уровне с Dropbox :) (с немного большим дополнительным свободным пространством по умолчанию)

0
12.04.2013, 17:53
2 ответа
$ cat testdata
CTD1234abcdTRN0001
AA 5678defg
BB 8910erty
CTD5678qwerTRN5678
AA 9876bvcn
BB 8765zxcv
CTDxxxxxxxxTRNyyyy
AA foobarfo
BB foobarfo
AAABBBB11115678xxxx
BBBCCCC22221234YYYY
MTD0001abcdTRN12345 abcdedfg
AA 0002bcde
BB 0003defg
CCCDDDD33331234zzzz
MTD0003qwerTRN56789 defghigk
AA 9876bvcn
BB 8765zxcv
XXXBBBB11115678aaaa
YYYCCCC22221234bbbb

$ awk '/^(C|M)TD/ { s=match($0, /[[:space:]]/); postfix=substr($0, 12, length($0)-s); print; next } /^(AA|BB)[[:space:]]/ { print $0 postfix; next } 1' testdata
CTD1234abcdTRN0001
AA 5678defgTRN0001
BB 8910ertyTRN0001
CTD5678qwerTRN5678
AA 9876bvcnTRN5678
BB 8765zxcvTRN5678
CTDxxxxxxxxTRNyyyy
AA foobarfoTRNyyyy
BB foobarfoTRNyyyy
AAABBBB11115678xxxx
BBBCCCC22221234YYYY
MTD0001abcdTRN12345 abcdedfg
AA 0002bcdeTRN12345
BB 0003defgTRN12345
CCCDDDD33331234zzzz
MTD0003qwerTRN56789 defghigk
AA 9876bvcnTRN56789
BB 8765zxcvTRN56789
XXXBBBB11115678aaaa
YYYCCCC22221234bbbb
2
28.01.2020, 02:21
  • 1
    там может быть несколькими строкой CTD в файле –  user36697 07.04.2013, 16:05
  • 2
    , И Вы хотите, чтобы первый TRNxxxx строки CTD нес в весь последующий AA и записи BB (и проигнорировал какой-либо после строк CTD)? –  Adrian Frühwirth 07.04.2013, 16:09
  • 3
    Вышеупомянутый вывод, в котором я нуждаюсь и может быть несколькими строкой CTD в файле... –  user36697 07.04.2013, 16:09
  • 4
    Вам не удается объяснить, как вывод должен посмотреть больше чем с двумя строками CTD в файле. Я обновил свой ответ с тем, что я предполагаю, что Вы просите. –  Adrian Frühwirth 07.04.2013, 16:14
  • 5
    О, я сожалею, что мой вывод должен быть похожим: CTD1234abcdTRN0001 AA 5678defgTRN0001 BB 8910ertyTRN0001 CTD5678qwerTRN5678 AA 9876bvcnTRN5678 BB 8765zxcvTRN5678 CTDxxxxxxxxT RNyyyy AA foobarfoTRNyyyy BB foobarfoTRNyyyy –  user36697 07.04.2013, 16:20

То, что оболочка Unix (вполне ограниченный), язык программирования является премией для своего задания организации работы другой программы. Это не должно использоваться для всего.

Такие относящиеся к обработке текстов работы лучше делаются с языками сценариев, конкретно созданными с этой целью, как Perl или Python.

2
28.01.2020, 02:21
  • 1
    так, может Вы. сообщить мне в Perl? –  user36697 07.04.2013, 15:50
  • 2
    @user36697 необходимо попытаться решить его сами и попросить определенную проблему, чтобы Вы встретились. –  Ulrich Dangel 07.04.2013, 16:55

Теги

Похожие вопросы