sed는 n° 40에서 위치 39로 행을 이동합니다.

sed는 n° 40에서 위치 39로 행을 이동합니다.

100줄의 텍스트 파일이 있고 40줄을 39줄(참조 위치)로 이동해야 합니다. sed를 사용하여 이 작업을 어떻게 수행할 수 있습니까? 나는 노력했다

sed '40 m 39' file

그리고

sed '40,39m' file

하지만 나에게 오류가 발생합니다. 감사해요

답변1

GNU sed 사용:

seq 1 43 | sed -e '39{h;d};40{p;g}' | tail -n 8

산출:

36
37
38
40
39
41
42
43

답변2

노력하다:

$ sed -e '39N;s/\(.*\)\n\(.*\)/\2\
\1/' file

관련 정보