cut 명령으로 출력된 필드 사이에 텍스트를 추가하는 방법은 무엇입니까?

cut 명령으로 출력된 필드 사이에 텍스트를 추가하는 방법은 무엇입니까?
uptime | cut -d " " -f 4,5,6,7 | cut -d "," -f 1,2

이 명령의 출력은 입니다 1 day, 20:07. 추가하고 싶습니다"가동 시간:"앞으로"1 일". ( cut출력 하고 싶다 Uptime: 1 day, 20:07)

를 사용하여 이 작업을 수행할 수 있습니까 cut?

예, awk( uptime | cut -d " " -f 4,5,6,7 | cut -d "," -f 1,2 | awk '{print "Uptime:",$1,$2,$3}')를 사용하여 이 작업을 수행할 수 있습니다. 하지만 우리도 cut그것을 사용할 수 있는지 알아야 합니다. :)

답변1

awk더 좋고 간단한 솔루션이 될 수 있습니다.

 uptime | awk '{sub(/,/,"",$5); print "Uptime: " $3,$4,$5}'

답변2

대답은 부정적이다. 매뉴얼에 따르면 이 명령의 역할은 다음과 같습니다.선택한 텍스트 인쇄, 텍스트를 추가하지 않고:

절단(1)

NAME cut - 파일의 각 줄에서 부분을 제거합니다.

요약 절단 옵션... [파일]...

설명 각 파일의 선택된 행 부분을 표준 출력으로 인쇄합니다.

가장 가까운 방법은 사용자 정의 출력 구분 기호를 추가하는 것입니다.

--output-delimiter=STRING STRING을 출력 구분 기호로 사용합니다. 기본값은 입력 구분 기호입니다.

하지만 이 경우에는 그런 것이 필요하지 않습니다.

답변3

아무것도 삽입할 수 없습니다 cut.

sed대신 삽입 문자열을 사용하는 것이 좋습니다 Uptime:.

uptime | sed 's/.*up/Uptime:/' | cut -d, -f -2

관련 정보