각 데이터 포인트 앞뒤에 0을 삽입하는 스크립트가 필요합니다. 우분투에서 이것을하려고합니다.
예:
1
2
3
4
5
나는 필요하다:
0
1
0
0
2
0
0
3
0
0
4
0
0
5
0
답변1
사용 awk
:
awk '{ print "0" ORS $0 ORS "0" }' < input
또는:
awk '{ print "0"; print $0; print "0" }' < input
나에게 이것은 awk에서 "각 줄 앞뒤에 0을 인쇄하는" 간단한 구현입니다.
답변2
GNU sed를 사용하여,나제로섬을 삽입하다ㅏ각 줄에 0을 추가합니다.
sed -e 'i\0' -e 'a\0' data
전임자.
$ printf '%d\n' 1 2 3 | sed -e 'i\0' -e 'a\0'
0
1
0
0
2
0
0
3
0
답변3
GNU sed
호출을 통해:
seq 5 |sed 's/.*/0\n&\n0/'
표준 구문은 동일합니다 sed
.
seq 5 |sed 's/.*/0\
&\
0/'
답변4
사용 표준 sed
:
sed -e 's/^/0\
/' -e 's/$/\
0/' file
이렇게 하면 각 0
줄의 시작 부분에 개행 문자가 삽입되고 각 줄 끝에 개행 문자가 삽입됩니다.