그게 ed
기본적으로 프롬프트는 빈 문자열입니다. 종료하려면을 입력하십시오 q
. 접두사를 사용하지 마십시오 :
. 저장하지 않은 변경 사항이 있으면로 응답합니다 ?
. "확실합니까?"로 해석하고 q
다시 명령하여 확인할 수 있습니다. 그런데 이해하지 못하는 명령도 응답하게 ?
됩니다. 그것이 아는 유일한 오류 메시지입니다.
그 명령은 무엇 정력 / VI / 전 / SED에 기반 명령 같은 g/re/p
, %s/vi/&m/g
, 1,3d
, /pattern/,$d
, w
, q
, wq
단지 정력처럼 작동합니다.
명령 좋아 i
, a
및 c
삽입 모드로 이동합니다. 삽입 모드를 종료하고 명령 모드로 돌아가려면으로 만 이루어진 행을 입력하십시오 .
. 다른 행으로 "이동"하려면 행 번호, 또는와 같은 현재 행의 오프셋 +2
또는 -1
해당 행으로 이동하는 명령으로 정규식을 입력하십시오. .
명령 모드에서 현재 줄을 의미합니다. 당신은 당신이 어디에 있는지 알 수 있습니다. $
마지막 줄을 의미합니다.
그건 그렇고, 그것에 대해 더 배우고 싶다면, 이것은 리눅스에서 GNU 프로그램이며, 대부분의 문서는 info ed
대신에 man ed
있습니다.
다음은 주석이 추가 된 세션의 예입니다 (ed에서는 허용되지 않음).
$ ed
i # insert (on current line)
vi
. # end insert
%s/vi/&m/g # substitute vi for vim globally in all lines
i # insert (on current line)
first line
. # end insert
$a # append on last line
last line
. # end insert
%p # print all lines
first line
vim
last line
2 # move to line 2 and print it
vim
/line # move forward to line matching /line/ and print it
last line
-1 # move 1 line backwards and print it
vim
?line # move backward to line matching /line/ and print it
first line
+1 # move 1 line forward and print it
vim
g/line/p # print lines matching /line/ (grep)
first line
last line
p # print (current line)
last line
. # move to current line and print it
last line
c # change (current line)
final line
. # end insert
%p # print all lines
first line
vim
final line
/vim/,$c # change from line matching /vim/ to last line
that's all
. # end insert
%p # print all lines
first line
that's all
wq # write and quit
? # write what?
h # help with last error message
No current filename
wq # write and quit to check error message
?
H # help with all error messages
No current filename
wq # write and quit to check error message
?
No current filename
wq file.txt # write file.txt and quit
22 # wrote 22 bytes
편집 : grawity 언급처럼, 더 도움이 오류 메시지와 함께 활성화 될 수 h
또는 H
. 또한 명령의 범위 부분이 ,
아닌의 %
"모든 행"을 참조하는 공식적인 방법입니다 ed
. GNU ed
에서는이를 사용할 가능성 %
이 지원되지만 info
매뉴얼 에서는 언급되지 않았습니다 . 를 사용하는 %
모든 라인은 분명히에 의해 발명되었다 ex
, 겉으로보기 때문에, 거기 ,
수단 .,.
보다는 1,$
처럼 ed
.
EDIT2 : 다른 편집기 설정
언급 한 다른 답변과 마찬가지로 다른 편집기를 지정하려면 EDITOR
또는 VISUAL
환경 변수를 설정하여 그렇게 할 수 있습니다 . 이 둘의 차이점은 이 답변에 설명되어 있습니다.
단일 명령에 대해 설정하려는 경우 다음과 같이 수행 할 수 있습니다.
EDITOR=vi crontab -e
또는 쉘 세션에서 시작된 모든 프로그램이이를 사용하도록하려면 다음과 같이하십시오.
export EDITOR=vi
crontab -e
export
in ~/.profile
또는을 /etc/profile
각각 bash의 사용자 또는 시스템 설정으로 원하는지 여부에 따라 저장할 수 있습니다 . 이것이 편집기를 설정하는 유닉스 휴대용 방법입니다. 모든 배포에서이 작업을 수행 할 수 있습니다.
우분투에는 update-alternatives
명령도 있습니다. 현재 기본 편집기는로 볼 수 있으며 이를 update-alternatives --display editor
사용 update-alternatives --config editor
하여 설정할 수 있습니다.
$ sudo update-alternatives --config editor
There are 4 choices for the alternative editor (providing /usr/bin/editor).
Selection Path Priority Status
------------------------------------------------------------
* 0 /bin/nano 40 auto mode
1 /bin/ed -100 manual mode
2 /bin/nano 40 manual mode
3 /usr/bin/vim.basic 30 manual mode
4 /usr/bin/vim.tiny 10 manual mode
Press enter to keep the current choice[*], or type selection number: 3
update-alternatives: using /usr/bin/vim.basic to provide /usr/bin/editor (editor) in manual mode.
ed
, 기본적으로 문자 수를 제공합니다 (데비안 기반 시스템에서는 일반적으로888
"빈"crontab 템플릿의 문자 수인 데비안 기반 시스템 에서는 처음 임). 카운트가 0이면이를 수정해야합니다. Crontab -e 명령이 제대로 작동하지 않음을