Je peux filtrer les tâches bloquées dans notre système de files d'attente avec:
> qjobs | grep "racon"
5240703 racon-3/utg001564l-racon-3.fasta H 1 1 0 10.0 0.0 150 :03
5241418 racon-3/utg002276l-racon-3.fasta H 1 1 0 10.0 0.0 150 :02
5241902 racon-3/utg002759l-racon-3.fasta H 1 1 0 10.0 0.0 150 :03
5242060 racon-3/utg002919l-racon-3.fasta H 1 1 0 10.0 0.0 150 :04
5242273 racon-3/utg003133l-racon-3.fasta H 1 1 0 10.0 0.0 150 :03
5242412 racon-3/utg003270l-racon-3.fasta H 1 1 0 10.0 0.0 150 :04
5242466 racon-3/utg003325l-racon-3.fasta H 1 1 0 10.0 0.0 150 :03
Cependant, qjobs | grep "racon" | cut -d " " -f2
n'est pas revenu, par exemple racon-3/utg003325l-racon-3.fasta
. Qu'est-ce que j'ai raté?
Chaque espace compte pour le numéro de champ, même les premiers et les consécutifs. Par conséquent, vous devez utiliser -f9
au lieu de -f2
. Vous pouvez également utiliser awk '{ print $2 }'
à la place de la commande cut entièrement.
Si la sortie est cohérente dans son espacement
qjobs | grep "racon" | cut -c 16-47
produirait une sortie comme
racon-3/utg002276l-racon-3.fasta
Si vous voulez la première colonne, qui ressemble à un PID ou à un autre identifiant, alors:
qjobs | grep "racon" | awk ' { print $1 } '
Si vous recherchez la partie tg002276l qui ressemble à un nom d'utilisateur:
qjobs | grep "racon" | awk -F'[/-]' ' { print $3 } '
Awk utilise alors les barres obliques et les tirets comme séparateurs de champs, puis imprime la troisième colonne.