Đó là ed
Theo mặc định, dấu nhắc của nó là chuỗi rỗng. Nếu bạn muốn bỏ, chỉ cần nhập q
. Không tiền tố với :
. Nếu bạn có những thay đổi chưa được lưu, nó sẽ trả lời ?
. Bạn có thể hiểu là "bạn có chắc không?" Và xác nhận lại bằng cách ra lệnh q
. Bằng cách này, bất kỳ lệnh nào nó không hiểu cũng sẽ khiến nó trả lời ?
. Đó là thông báo lỗi duy nhất mà nó biết.
Lệnh của nó là gì vim / vi / cũ / sed được dựa trên, vì vậy các lệnh thích g/re/p
, %s/vi/&m/g
, 1,3d
, /pattern/,$d
, w
, q
, wq
công việc giống như vim.
Các lệnh như i
, a
và c
đi vào chế độ chèn. Để thoát khỏi chế độ chèn và quay lại chế độ lệnh, chỉ cần nhập một dòng chỉ có a .
. Để "di chuyển" sang dòng khác, chỉ cần nhập số dòng, phần bù từ dòng hiện tại như +2
hoặc -1
hoặc biểu thức chính quy như một lệnh để đi đến dòng đó. .
có nghĩa là dòng hiện tại trong chế độ lệnh. Bạn có thể sử dụng nó để biết bạn đang ở đâu. $
có nghĩa là dòng cuối cùng.
Nhân tiện, nếu bạn muốn tìm hiểu thêm về nó, đây là một chương trình GNU trong linux, hầu hết các tài liệu của nó đều ở info ed
thay vì man ed
.
Đây là một phiên ví dụ, với các ý kiến được thêm vào (không được chấp nhận bởi 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
EDIT: Giống như đề cập đến grawity, các thông báo lỗi hữu ích hơn có thể được kích hoạt bằng h
hoặc H
. Ngoài ra, ,
thay vì %
trong phần phạm vi của lệnh là cách chính thức để chỉ "tất cả các dòng" trong ed
. Trong GNU ed
, khả năng sử dụng %
cho việc này được hỗ trợ nhưng không được đề cập trong info
hướng dẫn. Sử dụng %
cho tất cả các dòng rõ ràng được phát minh bởi ex
, dường như bởi vì, ở đó, ,
có nghĩa .,.
là hơn là 1,$
thích ed
.
EDIT2: Đặt trình chỉnh sửa khác
Giống như các câu trả lời khác được đề cập, nếu bạn muốn chỉ định một trình soạn thảo khác, bạn có thể làm như vậy bằng cách đặt các biến EDITOR
hoặc VISUAL
môi trường. Sự khác biệt giữa hai được giải thích trong câu trả lời này .
Bạn có thể làm như vậy nếu bạn muốn đặt nó cho một lệnh duy nhất:
EDITOR=vi crontab -e
hoặc như thế này nếu bạn muốn tất cả các chương trình được khởi chạy trong phiên shell sử dụng nó:
export EDITOR=vi
crontab -e
Bạn có thể lưu export
vào ~/.profile
hoặc /etc/profile
, tùy theo bạn muốn nó là cài đặt người dùng hoặc hệ thống cho bash, tương ứng. Đó là cách di động unix để thiết lập trình chỉnh sửa; bạn có thể làm điều này trong bất kỳ phân phối.
Trong Ubuntu, cũng có update-alternatives
lệnh. Trình chỉnh sửa mặc định hiện tại có thể được nhìn thấy update-alternatives --display editor
và bạn có thể sử dụng update-alternatives --config editor
để đặt nó:
$ 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
: theo mặc định, nó đưa ra số lượng ký tự (mà trong các hệ thống dựa trên Debian thường888
là lần đầu tiên, là số lượng ký tự trong mẫu "crontab" trống). Nếu bạn đang thấy số 0, bạn phải sửa nó. Xem lệnh Crontab -e không hoạt động chính xác