Используйте bash для объединения списка элементов

#list #concatenation

#Список #конкатенация

Вопрос:

У меня есть список элементов, таких как:

 ERR001268_chr6  
ERR001312_chr6  
ERR001332_chr6  
ERR001361_chr6
ERR001369_chr6  
ERR001413_chr6  
ERR001433_chr6 
ERR001462_chr6  
ERR001698_chr6  
ERR001734_chr6  
ERR001763_chr6
ERR001774_chr6  
ERR001799_chr6  
  

скажем, теперь я хочу объединить ERR001268_chr6 до ERR001763_chr6.
Я могу сделать cat ERR001268_chr6 ERR001269_chr6....ERR001763_chr6 > xxx
Но, очевидно, я не хочу вводить эти элементы один за другим…Итак, какие-нибудь простые команды bash для этого?
спасибо

Ответ №1:

Предполагая, что список элементов представляет собой полный список «файлов» в текущем каталоге:

 cat `ls -1 ERR*_chr6 | head -n11` > xxx
  

Комментарии:

1. Я предполагаю, что ему, вероятно, не нужно head -n11 . Сначала я был смущен, почему вы использовали -n11 вместо -n13 , но я вижу, вы поймали, что у него были только первые 11 в его примере. Я думаю, что это был только пример, но в любом случае вы отлично ответили на вопрос, поэтому проголосуйте =)

2. да, я предполагаю, что он хочет, чтобы первые 11 элементов были исключены из списка, поскольку других указаний на критерии выбора нет..