GNU/Linux >> Belajar Linux >  >> Linux

Sudoedit Vim Force Write (perbarui) Tanpa Keluar?

Saya sedang melakukan beberapa skrip dengan Vim dan saya baru saja mulai menggunakan sudoedit .

Masalahnya adalah, ketika saya :w ia menulis ke file temp, jadi pengujian skrip tidak dapat dilakukan kecuali saya keluar dari editor.

Bagaimana saya bisa memaksa pembaruan yang asli, atau apakah saya kehilangan poin sudoedit ?

Jawaban yang Diterima:

sudoedit memungkinkan Anda untuk mengedit file dengan editor yang berjalan di id pengguna Anda sendiri. Ini menyalin file ke file sementara yang kemudian dapat ditulis oleh editor Anda. Segera setelah editor ditutup, file yang diedit akan disalin kembali.

Tidak ada kemungkinan bawaan untuk menulis kembali perubahan secara otomatis saat editor masih berjalan.

Jadi, Anda membutuhkannya

  • jalankan editor pada id pengguna lain (mis. sudo vi /file/to/edit )
  • salin file secara manual kembali ke shell (terpisah) (sudo cp /tmp/... /file/to/edit ) atau dari dalam vim :!sudo cp % /file/to/edit . Dari vim Anda juga dapat memulai shell dengan :sh atau letakkan vim di latar belakang dengan Ctrl+Z dan pulihkan dengan fg .
  • gunakan https://stackoverflow.com/questions/260783/how-does-the-vim-write-with-sudo-trick-work
  • buat versi sudoedit Anda sendiri yang menulis perubahan kembali segera setelah file sementara diubah. Ini harus mudah dilakukan dengan beberapa skrip. Inotify dapat membantu Anda mendeteksi perubahan (lihat misalnya Bisakah skrip bash dihubungkan ke file? )

Linux
  1. Tulis ke file .txt?

  2. Hapus file tanpa diminta

  3. Bagaimana cara menulis file ke USB tanpa menjadi root?

  1. Memindahkan file di Linux tanpa mv

  2. Menggunakan vim untuk memaksa mengedit file saat Anda membuka tanpa izin

  3. Memasang dan memodifikasi file loopback tanpa sudo/root, apakah mungkin?

  1. Cara Keluar (Keluar) Linux Vim/Vi editor

  2. Baca Dan Tulis Ke File Yang Sama Di Linux Tanpa Menimpanya??

  3. Editor Teks yang Memperbarui File Tanpa Diminta?