cut
다음은 공백 구분 기호를 사용하여 입력을 필드로 나누고 두 번째 필드를 얻는 을 사용하는 예입니다 .
cut -f2 -d' '
구분 기호를 공백이 아닌 탭으로 어떻게 정의할 수 있나요?
답변1
답변2
탭이 기본값입니다.
참조컷 매뉴얼 페이지.
-d delim
Use delim as the field delimiter character instead of the tab
character.
그러니까 그냥 쓰셔도 돼요
cut -f 2
답변3
awk -F '\t' '{ print $2 }' inputfile
그러면 에서 각 입력 줄의 두 번째 탭으로 구분된 필드가 추출됩니다 inputfile
.
답변4
또는 cut을 함수로 래핑할 수도 있습니다.
function getColumns ()
{
local -r delimiter="${1:?}"
local -r columns="${2:?}"
if [[ "$delimiter" == '\t' || "$delimter" == "tab" ]]; then
cut "--fields=${columns}"
return
fi
cut "--delimiter=${delimiter}" "--fields=${columns}"
}