다음을 통해 대기열 시스템에 정체된 작업을 필터링할 수 있습니다.
> 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
그러나 qjobs | grep "racon" | cut -d " " -f2
예를 들어 아무것도 반환되지 않습니다 racon-3/utg003325l-racon-3.fasta
. 내가 놓친 게 무엇입니까?
답변1
모든 공백은 필드 번호에 포함되며 선행 공백과 연속 공백도 포함됩니다. 따라서 -f9
대신 을 사용해야 합니다 -f2
. 또는 awk '{ print $2 }'
잘라내기 명령을 완전히 바꿀 수도 있습니다.
답변2
출력 간격이 일정한 경우
qjobs | grep "racon" | cut -c 16-47
다음과 유사한 출력을 생성합니다.
racon-3/utg002276l-racon-3.fasta
첫 번째 열을 PID나 다른 식별자처럼 보이게 하려면 다음을 수행하세요.
qjobs | grep "racon" | awk ' { print $1 } '
당신이 찾고 있다면utg002276l 사용자 이름과 유사한 부분:
qjobs | grep "racon" | awk -F'[/-]' ' { print $3 } '
이로 인해 awk는 슬래시와 대시 문자를 필드 구분 기호로 사용한 다음 세 번째 열을 인쇄합니다.
답변3
모든 공백을 하나로 압축할 수 있습니다.
qjobs | grep "racon" | tr -s ' ' | cut -d " " -f3