그런 다음 이 결과는 아래 스크립트에서 벤 다이어그램을 그리는 데 사용됩니다.

그런 다음 이 결과는 아래 스크립트에서 벤 다이어그램을 그리는 데 사용됩니다.

Wien 프로그램의 다음 출력 파일이 있습니다.

[1, 2],106
[1, 3],2556
[2, 3],5207
[1, 2, 3],232
[2],7566
[3],8840
[1],5320

다음과 같은 스크립트에서 각 행의 결과 번호를 가변 인수로 가져오려면 명령이 필요합니다.

$area1=[1] 이후의 결과여야 함, $area2=[2] 이후의 결과여야 함, $area3=[3] 이후의 결과여야 함, $n12=[2] 이후의 결과여야 함 ] 결과. [1, 2] 이후의 결과, $n13=[1, 3] 이후의 결과여야 합니다, $n23=[2, 3] 이후의 결과여야 합니다, $n123=[1 이후의 결과여야 합니다. , 3] 후속 결과 [1,2,3],

그런 다음 이 결과는 아래 스크립트에서 벤 다이어그램을 그리는 데 사용됩니다.

cat << catfile >> $prefix1-VennDiagram.R
library(VennDiagram);
venn.diagram(
    x = list(
        "$sample1" = c(1:$area1, $(($area1+1)):$(($area1+$n12)), $(($area1+$n12+1)):$(($area1+$n12+$n123)), $(($area1+$n12+$n123+1)):$(($area1+$n12+$n123+$n13))),
        "$sample2" = c($(($area1+$n12+$n123+$n13+1)):$(($area1+$n12+$n123+$n13+$area2)), $(($area1+1)):$(($area1+$n12)), $(($area1+$n12+1)):$(($area1+$n12+$n123)), $(($area1+$n12+$n123+$n13+$area2+1)):$(($area1+$n12+$n123+$n13+$area2+$n23))),
        "$sample3" = c($(($area1+$n12+$n123+$n13+$area2+$n23+1)):$(($area1+$n12+$n123+$n13+$area2+$n23+$area3)),  $(($area1+$n12+1)):$(($area1+$n12+$n123)), $(($area1+$n12+$n123+1)):$(($area1+$n12+$n123+$n13)), $(($area1+$n12+$n123+$n13+$area2+1)):$(($area1+$n12+$n123+$n13+$area2+$n23)))
        ),
    filename = "$prefix1-VennDiagram.tiff",
    col = "transparent",
    fill = c("red", "blue", "green"),
    alpha = 0.5,
    label.col = c("darkred", "white", "darkblue", "white", "white", "white", "darkgreen"),
    cex = 2.5,
    fontfamily = "arial",
    fontface = "bold",
    cat.default.pos = "text",
    cat.col = c("darkred", "darkblue", "darkgreen"),
    cat.cex = 2.0,
    cat.fontfamily = "arial",
    cat.fontface = "italic",
    cat.dist = c(0.06, 0.06, 0.03),
    cat.pos = 0
    );
catfile

Rscript $prefix1-VennDiagram.R
exit

답변1

이것은 한 줄입니다.

sed 's/^.*\],/ /' yourfile|tr -d '\n'|sed -e '$a\'

이 항목을 명령에 옵션으로 전달하면 마지막 항목을 제거 sed하고 사용할 수 있습니다.

sed 's/^.*\],/ /' yourfile|tr -d '\n'

답변2

awk각 줄의 마지막 쉼표로 구분된 필드를 인쇄한 다음 (인수 목록이 제한을 초과하지 않는다고 가정) xargs이를 단일 줄로 조합할 수 있습니다 .

$ awk -F, '{print $NF}' yourfile | xargs
106 2556 5207 232 7566 8840 5320

관련 정보