Значение извлечения из другого столбца и замены в другом столбце

Я использую это:

ls -l | less 
0
18.11.2018, 19:32
1 ответ

Немного сложного варианта, однако это работает вполне прилично.

head -2 file 
join <(grep "Xm Gen CDS" file | cat -n) \
     <(grep "Xm Gen extracted region" file | cat -n) | \
     sed 's/^[0-9]* //;s/CDS [0-9]*\s[0-9]*\(\s.*interval="\([0-9]*\)\s<-\s\([0-9]*\)\)/CDS\t\2\t\3\t\1/;s/ Xm Gen extracted.*//'
grep "Xm Gen extracted region" file

выполнять его как сценарий оболочки

#!/bin/bash
FILE="$1"
head -2 "$FILE"
join <(grep "Xm Gen CDS" "$FILE" | cat -n) \
     <(grep "Xm Gen extracted region" "$FILE" | cat -n) | \
     sed 's/^[0-9]* //;s/CDS [0-9]*\s[0-9]*\(\s.*interval="\([0-9]*\)\s<-\s\([0-9]*\)\)/CDS\t\2\t\3\t\1/;s/ Xm Gen extracted.*//'
grep "Xm Gen extracted region" "$FILE"
3
28.01.2020, 02:28
  • 1
    Это было бы большим.. если существует какой-либо сценарий жемчуга от компьютерных экспертов –  jack 05.07.2012, 17:25
  • 2
    Большое использование соединения и grep. Можно ли сказать мне, как выполнить это как сценарий оболочки, вводимый от пользователя и дающий вывод. –  jack 05.07.2012, 18:07
  • 3
    @bioman просто копирует вторую часть в файл сценария, делает ее исполняемым файлом с chmod +x scriptname и выполнитесь как ./scriptname file_with_data. –  rush 05.07.2012, 22:10
  • 4
    спасибо. Действительно ли возможно получить код жемчуга. Поскольку генеральная строка CDS Xm может отличаться как (например, Ym Genx CDS) в различных форматах, таким образом, я не могу использовать grep –  jack 05.07.2012, 22:54
  • 5
    К сожалению, я не достаточно хорош в жемчуге. Может быть кто-то еще, поможет Вам. –  rush 05.07.2012, 23:10

Теги

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