Saya hanya menghabiskan dua jam terakhir menjalankan dd
perintah (atau membayangkan skenario "sulit untuk dilakukan kembali") dari CD langsung tanpa GUI; yang saya miliki hanyalah CTRL+ALT+F#
terminal Bash "multi-jendela" ( ) terpercaya saya .
Sayangnya, selama perintah itu dd
mengeluarkan beberapa pesan kesalahan yang tidak menyenangkan dan sedikit lebih banyak informasi yang ingin saya simpan. Saya memiliki drive USB yang terhubung ke mana saya dapat menulis data, tetapi bagaimana cara mendapatkan hasil sebelumnya disimpan sebagai file teks setelah perintah sudah dijalankan?
Jika ini merupakan emulator terminal di dalam GUI yang bagus, saya cukup menggunakan mouse saya untuk memilih teks, menyalinnya, dan menempelkannya ke dalam dokumen. Dan seandainya saya tahu perintah akan menghasilkan kesalahan, saya akan memipangnya ke file untuk memulai, tetapi sayangnya, output tambahan datang sebagai kejutan.
Bagaimana cara menyimpan output teks dari perintah saya sebelumnya ke file tanpa menjalankan kembali perintah? Apakah ini mungkin?
dd if=/dev/sda of=/backups/sda.img > result.txt
. Jika demikian, masalahnya adalah saya sudah menjalankandd
perintah . Bagaimanapun, saya ingin menghindari menjalankan perintah lagi, yang dalam beberapa situasi tidak mungkin.service start gpm
.). Sapu sebuah daerah sambil menahan tombol kiri mouse. Ketikcat > outputfile
dan klik tombol kanan mouse untuk menempelkan wilayah yang baru saja Anda pilih.Jawaban:
Kernel linux harus menyimpan log di layar untuk vts Anda di
/dev/vcsa*[ttynum]
perangkat yang sesuai .Itu sebabnya yang berikut ini bekerja:
... yang mencetak ...
Perangkat yang sesuai
/dev/vcsa[ttynum]
akan menyimpan versi yang disandikan dari teks yang diformat di layar, sedangkan yang/dev/vcs[ttynum]
akan menjadi dump biasa. Thevcsa[ttynum]
perangkat akan menyandikan sepasang byte yang menggambarkan setiap char di layar dan atributnya, serta string di kepala setiap halaman logis yang menunjukkan tty direferensikan ini garis, kolom menghitung.Seperti yang ditunjukkan oleh @kasperd, saya telah salah sebelumnya dengan mengasumsikan
\a
BEL disandikan di antara setiap karakter, padahal faktanya: Kombinasi warna default terjadi bersamaan dengan karakter bel.Untuk keperluan Anda menggunakan
/dev/vcs[ttynum]
mungkin paling mudah. Berikut inil
perbedaannya:... mencetak ...
...dan...
... mencetak ...
sumber
vcsa
tidak menempatkan karakter yang sama di antara semua karakter. Ini memberi Anda pasang byte yang memberi tahu Anda karakter mana yang ada di layar dan warna apa yang dimilikinya. Kombinasi warna default terjadi bersamaan dengan karakter bel.Pergi ke (/ masuk) terminal lain dan jalankan
sudo screendump N > screenoutput.txt
, di manaN
nomor terminal yang Anda inginkan.Tidak ada jaminan, saya khawatir. Jika konsol virtual itu menyimpannya, saya belum pernah melihatnya. Tapi itu memberi Anda semua yang dapat Anda lihat di terminal itu.
sumber
/dev/vcsa*[1-9]*
- (yang saya kira izin superuser adalah untuk) . Konsol linux telah mendukung jaminan simpanan untuk sebagian besar seri 3. *, saya kira. Saya tidak yakin bagaimana orang bisa mengambilnya (menentang menggunakan/dev/vcsa*[1-9]*
perangkat) tapi mungkin ada caranya./dev/vcs$i
dan/dev/vcsa$i
. Ini memberikan hasil yang mudah dibaca. ;-)screendump
tidak berhasil, bahkan jika saya tetap di konsol yang sama.