Это типичная проблема awk:
#!/usr/bin/awk -f
BEGIN{ col = -1; l = 0; r = 0; width = 0; }
/^chr[0-9]+:/ {
++col;
}
{
if ( col == 0 ) {
L[l++] = $0;
} else {
R[r++] = $0;
}
if ( length ($0) > width ) {
width = length ($0) ;
}
}
END {
for ( i = 0; i < l; ++i ) {
printf "%-*s %s\n", width, L[i], R[i];
}
}
Назовите этот скрипт "foo" и сделайте его исполняемым, l и передайте ему ваши данные:
./foo < foo.in
давая
chr10:127293562-127293909 chr11:49214073-49214804
BRUNOL4(Hs/Mm) BRUNOL4(Hs/Mm)
CPEB4(Hs/Mm) BRUNOL5(Hs/Mm)
CUG-BP(Hs/Mm) CPEB2(Hs/Mm)
DAZAP1(Hs/Mm) CPEB4(Hs/Mm)
ENOX1(Hs/Mm) CUG-BP(Hs/Mm)
FMR1(Hs/Mm) HNRNPC(Hs/Mm)
Это предполагает, что левая и правая колонки имеют одинаковое количество элементов, и что у вас только две колонки. awk имеет только одномерные массивы. Если в вашей задаче требуется больше столбцов (скажем, произвольное число), решение в awk (или, предпочтительно, в perl) будет более сложным. Для этого вам понадобится более четкий вопрос, чтобы решить, как сделать это.
Получил эту проблему на 17.04. Проблема заключается в разрешениях папки, а не файла.
Я сделал это:
sudo chown user .config/octave
sudo chown user .config/octave/qt-settings
, а затем Октав открыл OK.
Проблема в том, что почему-то программа не видит, кто является владельцем программы. Для этого вам нужно сделать следующее (, которое упоминалось всеми):
cd.config/octave
sudo chmod qt.settings
После этого откройте терминал и введите :Octave. Программа запустится
Моя система :Ubuntu 17.04 обновлена до gnome3