Мне удалось частично решить проблему, поскольку вы сказали, что configure
вызывает Python 3, а не Python 2.
Просто перейдите в папку с двоичными файлами cd /usr/bin
и измените символическую ссылку с Python 3 на Python 2, сохранив резервную копию для восстановления после завершения установки:
sudo mv python python.old
sudo ln -s python2.7 python
Затем вы можете вернуться в папку с пакетом и запустить make
для создания Dropbox. Когда вы закончите, вы должны вернуть символическую ссылку на Python 3, иначе у вас возникнут проблемы с вашей системой:
cd /usr/bin
sudo mv python.old python
Теперь вам нужно сообщить приложению Dropbox, чтобы оно не переходило по символической ссылке /usr/bin/python
, а вместо этого переходило по уже существующей символической ссылке /usr/bin/python2
. Для этого просто откройте файл /usr/bin/dropbox
в своем любимом текстовом редакторе (, используйте sudo
, иначе вы не сможете редактировать его )и измените первую строку с #!/usr/bin/python
на #!/usr/bin/python2
.
Теперь вы сможете запустить API Dropbox, набрав dropbox start
без каких-либо проблем с совместимостью.
Для первой части вы можете попробовать это:
sed 's/_length.*[[:blank:]]\([ACGT]*\)$/ \1/' file
Выход:
NODE_13 GTTGCCTAATATCGCCAATCCAGCTCCT
NODE_24 TATCGCCAATCCAGCTCCT
NODE_36 TGCCTAATATCGCCAATCCAG
Ко второй части:
sed 's/\(^NODE_[0-9]*\)\(_.*\) [ACGT]*$/\1\2 \1/'
Выход:
NODE_13_length_50291_cov_8.067223 NODE_13
NODE_24_length_22118_cov_8.258986 NODE_24
NODE_36_length_15273_cov_5.283743 NODE_36
Первый:
sed 's|_length.*[0-9]||g' file.txt
Выход:
NODE_13 GTTGCCTAATATCGCCAATCCAGCTCCT
NODE_25 TATCGCCAATCCAGCTCCT
NODE_36 TGCCTAATATCGCCAATCCAG
Второй:
awk '{print $1,substr ($1,1,7)}' log_file.txt
Выход
NODE_13_length_50291_cov_8.067223 NODE_13
NODE_25_length_22118_cov_8.258986 NODE_25
NODE_36_length_15273_cov_5.283743 NODE_36
Если вы хотите отредактировать файл на месте:
sed -i 's|_length.*[0-9]||g' log_file.txt
awk -i inplace '{print $1,substr ($1,1,7)}' log_file.txt
Чтобы сделать это с awk
, у вас должна быть версия 4.2 или выше.
Один -вкладыш в GNUawk
awk -v sp="_length_" 'BEGIN {FS=" |"sp }
{print $1, $3 > "output"; print $1sp$2, $1 > "log"}' file1
Выход
cat output
NODE_13 GTTGCCTAATATCGCCAATCCAGCTCCT
NODE_25 TATCGCCAATCCAGCTCCT
NODE_36 TGCCTAATATCGCCAATCCAG
cat log
NODE_13_length_50291_cov_8.067223 NODE_13
NODE_25_length_22118_cov_8.258986 NODE_25
NODE_36_length_15273_cov_5.283743 NODE_36
Пробовал использовать команду «Ниже» и работал нормально
первый выход1
awk '{print substr($1,1,7),$NF}' filename
output
NODE_13 GTTGCCTAATATCGCCAATCCAGCTCCT
NODE_25 TATCGCCAATCCAGCTCCT
NODE_36 TGCCTAATATCGCCAATCCAG
Второй выход
awk '{print $1,substr($1,1,7)}' filename
выход
NODE_13_length_50291_cov_8.067223 NODE_13
NODE_25_length_22118_cov_8.258986 NODE_25
NODE_36_length_15273_cov_5.283743 NODE_36
метод Python
#!/usr/bin/python
k=open('q.txt','r')
for i in k:
j=i.split(' ')
print j[0][0:7],j[1].strip()
print "\n"
q=open('q.txt','r')
for i in q:
w=i.split(' ')
print w[0],w[0][0:7]
output
First output1
NODE_13 GTTGCCTAATATCGCCAATCCAGCTCCT
NODE_25 TATCGCCAATCCAGCTCCT
NODE_36 TGCCTAATATCGCCAATCCAG
Second output
NODE_13_length_50291_cov_8.067223 NODE_13
NODE_25_length_22118_cov_8.258986 NODE_25
NODE_36_length_15273_cov_5.283743 NODE_36