jot 명령의 출력 형식을 지정하는 방법

jot 명령의 출력 형식을 지정하는 방법

jot -r 4 0 255기본적으로 0에서 255 사이의 4개의 난수를 출력하는 매우 간단한 명령이 있습니다 .

> jot -r 4 0 255
66
14
244
155

출력 형식을 다음과 같이 지정하려면 어떻게 해야 합니까 66.14.244.155?

답변1

명령 결과 사이의 구분 문자열로 마침표 문자를 사용하십시오 jot. 터미널을 열고 다음을 입력하세요.

jot -s "." 4 0 255

결과에서 man jot:

-에스
        문자열로 구분된 데이터를 인쇄합니다. 일반적으로 줄바꿈은 데이터를 구분합니다.

다른 경우에는 공백 문자가 좋은 구분 문자열이 될 수 있습니다.

답변2

t비슷한 출력이 포함된 테스트 파일을 만들었습니다.

$ cat t
66
14
244
155

출력 형식을 다시 지정하는 방법은 여러 가지가 있으며, 명령에서 파이프되거나 cat다음 예와 같습니다.

  • bash를 read이렇게 사용하십시오

    $ cat t | while read i; do echo -n "$i."; done; echo
    66.14.244.155.
    

    각 항목을 읽고 줄 바꿈 없이 후행 점으로 에코합니다(후행 줄 바꿈을 얻으려면 끝에 일반 에코를 추가합니다).

  • tr각 개행 문자를 점으로 묶고, 다시 후행 점을 사용하고 개행 문자는 사용하지 않습니다.

    $ cat t | tr '\n' '.'
    66.14.244.155.
    
  • 동일하지만 매우 짧습니다.awk

    $ cat t | tr '\n' '.' | awk 'ORS="."'
    66.14.244.155.
    
  • tr(또는 awk) 다시, 그러나 후행 점을 개행 문자로 수정합니다.

    $ cat t | tr '\n' '.' | sed 's/.$/\n/'
    66.14.244.155
    
  • sed그게 다야분명히 더 빠르고 덜 복잡합니다.후행 점과 개행 문자 없이

    $ cat t | sed -e ':a; N; $!ba; s/\n/./g'
    66.14.244.155
    
  • paste후행 점과 개행 문자 없이 s직렬 및 구분 기호 옵션을 사용할 수 있습니다 .d

    $ cat t | paste -sd "." -
    66.14.244.155
    

원천

관련 정보