2017-12-15 5 views
1
cut (CF info cut)에 대한 문서는 말한다

:삽입 출력 구분 유닉스로 잘라 * -c *

:

--output-delimiter=OUTPUT_DELIM_STRING

With `-f`, output fields are separated by OUTPUT_DELIM_STRING. 
The default with `-f` is to use the input delimiter. When using 
`-b` or `-c` to select ranges of byte or character offsets (as 
opposed to ranges of fields), output OUTPUT_DELIM_STRING between 
non-overlapping ranges of selected bytes. 

나의 이해는 그 때문에이있다

echo abcdefghi | cut --output-delimiter=',' -c 1-2,5-6 

ab,ef를 제공해야합니다. 그러나

어떻게 ab,ef을 달성 할 ... abef 인쇄? 나는 그 문서를 오해 했는가?

속는로 닫기 전에 있습니다 :

  • 내가 awk 또는 sed 또는 perl 또는 bash 또는 (..) (this similar question with an ugly accepted answer 참조)를 사용할 수 있음을 알고 있지만 나는 cut 솔루션 후입니다, 특히 문서에서 작동해야한다고 말하기 때문에 내가 -c하지 버전 8.22에서 -f
+0

버전은 무엇입니까? 'cut (GNU coreutils) 8.22'는 원하는 출력을 생성합니다. – bishop

+0

Red Hat Enterprise Linux Server 5.11에서 cut (GNU coreutils) 5.97 –

+0

정말 오래된 버전입니다. 업그레이드가 권장됩니다. – bishop

답변

1

, 동작은 다음과 같이 예상되는 사용하고

  • :

    $ echo abcdefghi | cut --output-delimiter=',' -c 1-2,5-6 
    ab,ef 
    $ cut --version 
    cut (GNU coreutils) 8.22 
    Copyright (C) 2013 Free Software Foundation, Inc. 
    

    당신은 공식적으로 2006 주위에 발표 된 5.9 시리즈를 사용하고 있음을 감안할 때를 생각 우리는 이것이 그 시리즈의 버그라고 결론 지을 수 있습니다. RedHat을 사용하고있는 것을 감안할 때, 버전에 보안 픽스가 다시 포팅되었지만 이와 같은 종이 컷 버그는 아닙니다.

    솔루션 업그레이드, 또는 당신이 지적했듯이 다른 도구를 사용하는 것입니다.