[shell] sed를 사용하여 줄의 처음 ‘N’문자를 어떻게 인쇄합니까?
사용 sed
첫 번째 인쇄 할 수있는 하나의 라이너 무엇 n 문자는 ? 다음을 수행하고 있습니다.
grep -G 'defn -test.*' OctaneFullTest.clj | sed ....
답변
사용하지 말고 다음을 sed
사용하십시오 cut
.
grep .... | cut -c 1-N
반드시 사용해야하는 경우 sed
:
grep ... | sed -e 's/^\(.\{12\}\).*/\1/'
답변
colrm x
예를 들어, 처음 100자가 필요한 경우 :
cat file |colrm 101
수년 동안 사용되어 왔으며 대부분의 Linux 및 bsd (확실히 freebsd)에 있으며 일반적으로 기본적으로 제공됩니다. 입력해야했던 기억이 안 나apt-get install colrm
.
답변
grep도 사용할 필요가 없습니다
예 :
sed -n '/searchwords/{s/^\(.\{12\}\).*/\1/g;p}' file
답변
엄격하게 sed :
grep ... | sed -e 's/^\(.\{N\}\).*$/\1/'
답변
N 개의 첫 번째 문자를 인쇄하려면 행 끝까지 N + 1 문자를 제거 할 수 있습니다.
$ sed 's/.//5g' <<< "defn-test"
defn
답변
방법에 대해 머리 ?
echo alonglineoftext | head -c 9