Apakah ada cara untuk mengedit file jika tidak ada vi, vim, joe, mcedit? Dengan kata lain apakah ada cara untuk mengedit file hanya dengan menggunakan perintah shell?
linux
shell
text-editors
editing
text-editing
Eduard Florinescu
sumber
sumber
cat file
, diikuti olehcat >file
dan mengatur bagian-bagian dengan cut + paste dan / atau mengetik, selesaikan denganctrl-d
.echo <<EOF > new.file [paste here] EOF
. Edit konten file pada PC host.Jawaban:
Dalam hal itu, saya akan mencoba mentransfer file dan mengeditnya di komputer lain, kemudian mentransfernya kembali. Jika Anda memiliki ssh, Anda harus memiliki scp (saya harap), jadi Anda harus bisa mendorong file masuk dan keluar. Jika tidak, Anda juga dapat mencari ftp untuk mentransfer file masuk dan keluar.
Jika tidak, maka saya pikir pilihan terbaik Anda adalah mencoba dan memanfaatkan pengalihan cat, grep, sed, echo, dan I / O (terutama ditambahkan dengan
>>
). Dan banyak file sementara.Meskipun jika Anda memiliki akses ke perl (atau sesuatu yang serupa), Anda dapat menjalankannya tanpa argumen dan itu akan membiarkan Anda memasukkan sumber skrip dari input standar. Setelah Anda menekan ctrl + d, ia dapat menjalankan skrip. Anda dapat menggunakan metode itu untuk membuat file. Itu akan lebih kuat daripada meretas sesuatu di baris perintah seperti yang saya sebutkan sebelumnya.
sumber
Saya membayangkan Anda bisa melakukan apa yang Anda butuhkan
grep
danperl
- mencari garis yang Anda inginkangrep
, mengedit garis itu denganperl
(perl
dapat bertindak seperti pengganti besar untuksed
) dan kemudian mengonfirmasi bahwa Anda tidak membuat lebih banyak perubahan daripada yang Anda maksudkan dengan melakukandiff filename filename.new
. Jika demikian, buat perubahan itu permanen -mv filename.new filename
sumber
Dengan asumsi Anda SSH'ing ke router Anda, Anda juga dapat menggunakan berbagai utilitas untuk mentransfer file kembali dan keempat ke komputer / router Anda. Anda dapat mengunduh salinan pada PC Anda, memodifikasinya, dan kemudian SSH mengembalikannya ke router melalui SFTP (lihat Putty atau WinSCP jika Anda pengguna Windows).
Namun, jika Anda menggunakan firmware khusus pada router / gateway, Anda mungkin beruntung. Ada berbagai paket Optware yang berisi editor teks sederhana (dan kecil). Tergantung pada kebutuhan Anda, Anda bisa mendapatkan
nano
paket, atau hanya pergi untukbusybox
yang berisivi
.sumber
Salah satu caranya adalah dengan mengeluarkan hasil gema.
Ini akan membuat file berjudul bar.yxy dengan teks yang mengandung, "foo".
sumber
Apakah Anda menghapus / bin atau sesuatu? Kalau tidak, mungkin Anda bisa meretas sesuatu bersama dengan utilitas teks di GNU Coreutils yang seharusnya menjadi standar pada sistem linux.
sumber