Itu ed
Secara default promptnya adalah string kosong. Jika Anda ingin berhenti, cukup masukkan q
. Jangan awali dengan :
. Jika Anda memiliki perubahan yang belum disimpan, itu akan membalas dengan ?
. Anda dapat menafsirkannya sebagai "Anda yakin?", Dan mengonfirmasi dengan memerintahkan q
lagi. Ngomong-ngomong, perintah apa pun yang tidak dimengerti juga akan menyebabkannya membalas ?
. Itulah satu-satunya pesan kesalahan yang diketahuinya.
Perintah nya adalah apa vim / vi / ex / sed didasarkan pada, sehingga perintah seperti g/re/p
, %s/vi/&m/g
, 1,3d
, /pattern/,$d
, w
, q
, wq
bekerja sama seperti vim.
Perintah suka i
,, a
dan c
masuk ke mode insert. Untuk meninggalkan mode penyisipan dan kembali ke mode perintah, cukup masukkan baris yang hanya memiliki a .
. Untuk "pindah" ke baris lain, cukup masukkan nomor baris, offset dari baris saat ini seperti +2
atau -1
, atau regex sebagai perintah untuk pergi ke baris itu. .
berarti baris saat ini dalam mode perintah. Anda dapat menggunakannya untuk mengetahui di mana Anda berada. $
berarti baris terakhir.
Ngomong-ngomong, jika Anda ingin mempelajari lebih lanjut tentang hal ini, ini adalah program GNU di linux, sebagian besar dokumentasinya ada di info ed
bukan man ed
.
Berikut adalah contoh sesi, dengan komentar yang ditambahkan (tidak diterima oleh 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: Seperti grawity menyebutkan, pesan kesalahan yang lebih bermanfaat dapat diaktifkan dengan h
atau H
. Juga, ,
alih-alih %
di bagian jangkauan perintah adalah cara resmi untuk merujuk ke "semua baris" di ed
. Dalam GNU ed
, kemungkinan untuk menggunakan %
ini didukung tetapi tidak disebutkan dalam info
manual. Penggunaan %
untuk semua lini tampaknya diciptakan oleh ex
, tampaknya karena, di sana, ,
berarti .,.
daripada 1,$
seperti di ed
.
EDIT2: Mengatur editor yang berbeda
Seperti jawaban lain yang disebutkan, jika Anda ingin menentukan editor yang berbeda, Anda dapat melakukannya dengan mengatur variabel lingkungan EDITOR
atau VISUAL
. Perbedaan antara keduanya dijelaskan dalam jawaban ini .
Anda dapat melakukannya seperti ini jika Anda ingin mengaturnya untuk satu perintah:
EDITOR=vi crontab -e
atau seperti ini jika Anda ingin semua program diluncurkan di sesi shell untuk menggunakannya:
export EDITOR=vi
crontab -e
Anda dapat menyimpan export
dalam ~/.profile
atau /etc/profile
, tergantung apakah Anda ingin menjadi pengguna atau pengaturan sistem untuk bash, masing-masing. Itulah cara portabel unix untuk mengatur editor; Anda dapat melakukan ini dalam distribusi apa pun.
Di Ubuntu, ada juga update-alternatives
perintahnya. Editor default saat ini dapat dilihat dengan update-alternatives --display editor
, dan Anda dapat menggunakannya update-alternatives --config editor
untuk mengaturnya:
$ 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
: secara default, ini memberikan jumlah karakter (yang dalam sistem berbasis Debian biasanya888
pertama kali, menjadi jumlah karakter dalam templat "kosong" crontab). Jika Anda melihat hitungan 0, Anda harus mengubahnya. Lihat perintah Crontab -e tidak berfungsi dengan baik