Salin semua teks dari seluruh halaman `man` dari Terminal.app

20

Saya membaca halaman manual yang sangat panjang ( man ssh). Saya ingin menyimpan semua teks itu untuk bacaan yang lebih nyaman dalam editor teks.

Sayangnya, memilih salah satu dari:

  • Edit → Pilih Semua → Salin

  • Shell → Ekspor Teks Sebagai ...

hasil dalam menyimpan hanya layar penuh teks, tidak semua teks yang digulir oleh.

Bagaimana cara mengekstrak teks dari seluruh manhalaman?

Basil Bourque
sumber
Ada Man Reader aplikasi pihak ke-3 gratis. Membuka jendela dengan daftar di sebelah kiri semua halaman manual yang memungkinkan. Ketika Anda memilih satu itu mencetak konten di panel tengah. Cukup bagus.
jmh

Jawaban:

25

Anda dapat mendorong teks biasa ke clipboard dengan memipipkan ke pbcopy, untuk menempelkan di mana saja seperti biasa.

man ssh | col -b | pbcopy

atau setara

man -P "col -b | pbcopy" ssh

yang terakhir lebih baik jika Anda ingin menggunakannya sebagai alias, seperti mancp ssh, diberikan:

alias mancp='man -P "col -b | pbcopy"'

Ada beberapa metode untuk menuju ke HTML / PDF: Bisakah halaman manual dikonversi ke format html dan / atau pdf?


Jika itu hanya pengalaman membaca yang lebih baik yang Anda kejar, Anda dapat mengklik kanan pada pilihan perintah dan membuka halaman manualnya sebagai jendela / tab terpisah, dengan pengguliran normal dan pencarian findF.

Membaca lebih baik

Anda dapat menyesuaikan seperti apa tampilan ini di Preferensi Terminal → Profil, di bawah profil Halaman Man yang merupakan salah satu profil default yang ada.
Ini termasuk keluarga font dan ukuran (juga lihat menu Tampilan) dan warna latar / latar depan.

Preferensi profil halaman manual

GRG
sumber
2
Klik kanan untuk halaman manual tidak berfungsi dengan iTerm. Di mesin saya itu berfungsi semacam dengan terminal. Jendela berkedip pada saya kira 10 kali per detik. Saya bisa menghentikannya dengan mengklik tetapi saya tidak tahu di mana saya mengklik ...
jmh
@jmh Tampaknya merupakan bug Mojave, kerlipan ini, juga ada di sini
nohillside
1
pbcopydan pbpasteadalah dua dari utilitas terbaik yang tersedia di Macos.
Christopher Schultz
1
Terima kasih! Semua Jawabannya informatif dan bermanfaat, tetapi saya harus menerimanya. The man ssh | col -b | pbcopysolusi langsung membahas secara spesifik Pertanyaan saya. Dan kemudian, seperti icing pada kue, pembaca halaman manual Terminal.app mengalahkan itu untuk kemudahan penggunaan.
Basil Bourque
Perluasan yang bermanfaat dari solusi Anda juga dapat mencakup lebar kolom, dan / atau membukanya langsung di editor teks pilihan, misalnya: MANWIDTH=80 MANPAGER="col -bx" man tmutil | open -fa "TextMate"
Asmus
13

Jika Anda ingin membaca halaman manual dalam Pratinjau, yang diformat dengan baik sebagai PDF, Anda dapat menjalankannya

man -t ssh | open -f -a Preview

Atau

man ssh | col -b | open -f -e

untuk membuka versi teks di TextEdit.

nohillside
sumber
6

Pipa output standar menjalankan manperintah ke colutilitas builtin . Jalankan baris perintah berikut:

man ssh | col -b > ssh.txt

Nimesh Neema
sumber
@BasilBourque Saya juga menemukan ini artikel yang indah.
Nimesh Neema
4

Pengalaman membaca terbaik untuk tugas-tugas ini dicapai ketika menggunakan aplikasi khusus untuk itu.

Dua kandidat:

AquaLess

AquaLess adalah pager teks untuk Mac OS X. Ini memungkinkan Anda untuk menelusuri file teks biasa dan - yang lebih penting - output teks dari alat baris perintah Unix. AquaLess adalah pengganti Kakao untuk perintah yang kurang, yang dibatasi ke jendela terminal. AquaLess membuka jendela terpisah untuk setiap teks, sehingga Anda dapat tetap bekerja di terminal saat Anda membaca.

Atau ManOpen

ManOpen adalah aplikasi MacOS X GUI untuk melihat halaman buku panduan Unix, yang merupakan dokumentasi standar untuk program baris perintah Unix, pustaka programmer, dan informasi sistem lainnya. Ia dapat membuka file secara langsung atau diberi judul, dalam hal ini ia akan menampilkan output dari program baris perintah `man '. Antarmuka apropos juga disediakan, yang pada dasarnya merupakan pencarian cepat dan kotor dari basis data halaman manual. Layanan disediakan untuk aplikasi lain untuk membuka file / judul yang dipilih atau melakukan pencarian dengan menggunakan teks yang dipilih. ManOpen dapat berguna untuk membuka halaman manual tanpa jatuh ke baris perintah, menjelajah dan mencari melalui halaman manual yang panjang dan rumit, atau hanya untuk mencetaknya.

Juga disertakan adalah alat baris perintah `openman ', yang mirip dengan man kecuali itu akan menampilkan halaman manual di ManOpen.app alih-alih langsung ke terminal.

Atau baca halaman-halaman itu di Safari? Lalu pergi bwana

Unduh Bwana dan letakkan di folder aplikasi Anda. Kemudian, bahkan tanpa menjalankannya, Anda dapat mulai melihat halaman manual Unix menggunakan browser Anda. Cukup ketik "man:" diikuti oleh halaman manual yang Anda cari di bidang URL browser Anda. Tekan enter dan biarkan Bwana melakukan sisanya.

Halaman manual yang dihasilkan oleh Bwana sederhana dan to the point. Kami hanya melemparkan beberapa warna, beberapa tajuk tebal dan membersihkannya sedikit, sehingga mudah dilihat mata. Sebenarnya, Bwana sangat sederhana - tidak banyak lagi yang bisa kita katakan tentang itu. Jadi unduh Bwana sekarang untuk melihat betapa mudahnya mengintegrasikan dengan browser Anda dan apa bedanya dalam melihat halaman manual.

Anda kemudian dapat membangun fungsi shell untuk itu seperti ini:

function sman
    open -a Bwana man:$1
end

Demi kelengkapan: jika Anda telah menginstal X11, maka Anda juga memilikinya xman.

Kandidat lain mungkin Man Reader ($) , Manpager , Manpower ($) , Man Viewer .

LаngLаngС
sumber
3

Mengapa membuat segala sesuatunya menjadi lebih rumit dari sebelumnya?

https://man.openbsd.org/ssh

Karena Anda dapat memposting di sini, Anda jelas memiliki akses ke internet.

Jika Anda sedikit mencari di Google mungkin Anda dapat menemukan versi yang diformat dengan cara yang berbeda, misalnya, pdf atau lebih.

db
sumber
4
+1 untuk pragmatisme meskipun sekarang Anda harus mencari tahu versi halaman manual yang Anda cari, kadang-kadang (untuk berbagai alat di mana argumen baris perintah berbeda antara misalnya Linux dan BSD, atau di mana banyak hal berubah di antara versi )
lembut
dan di samping komentar @ fluffy, ini tidak akan berfungsi untuk alat macOS yang ada banyak, misalnya tmutil untuk Time Machine.
grg
1
@grg Ya itu ss64.com/osx/tmutil.html
db
1
Itu situs web yang berbeda, apakah Anda mendapatkannya dengan mencari dari tautan Anda di pos atau hanya Google? Saya sadar ada banyak halaman manual online, termasuk referensi pengembang Apple sendiri yang memang berisi halaman manual tmutil, tetapi kemudian jawaban ini menjadi tidak lebih dari 'Google itu'?
grg
@grg saya mendapatkannya dari Google. Ya, tetapi tujuan dengan pertanyaan itu adalah untuk menyederhanakan membaca halaman manual dan halaman web adalah cara yang baik untuk mencapai tujuan itu.
db
2

Jika Anda ingin memiliki salinan PDF dari halaman manual Anda, berikut adalah fungsi yang saya tambahkan ke .bash_profilefile saya untuk membuat PDF dari setiap perintah BSD. Saya akan memeriksa halaman manual untuk:

manp () 
{ 
    docDir="$HOME/Documents/BSD Commands"
    [[ ! -d $docDir ]] && mkdir -p "$docDir"
    if [[ ! -f $docDir/$1.pdf ]]; then
        man -t "$1" | pstopdf -i -o "$docDir/$1.pdf"
        open "$docDir/$1.pdf"
    else
        open "$docDir/$1.pdf"
    fi
}

Jadi, di Terminal , mengetik misalnya manp bashbukan man bashsebuah PDF akan dibuat, jika belum sudah, dan kemudian dibuka oleh aplikasi yang terdaftar untuk menangani PDF dokumen. The standar adalah Preview , namun pada sistem saya itu diatur untuk menggunakan Skim , sebagai fungsi pencarian yang lebih baik maka Preview dan sebagai soal fakta akan menemukan string pencarian ketika Preview hanya tidak akan.

Perhatikan bahwa saat pertama kali fungsi digunakan, ia akan menghitung beberapa font pada output di Terminal , namun ini adalah penghitungan satu kali font-font tersebut.

Yang menyenangkan tentang salinan PDF adalah mempertahankan format, yaitu huruf tebal dan huruf miring, dll.


Sebagai catatan tambahan, ketikkan saja nama perintah di Terminal dan kemudian klik kanan padanya dan pilih Open man Page , tampilkan dalam jendela Terminal yang sepenuhnya dapat digulir dan dicari , yang jauh lebih baik daripada mengetik misalnya man bash.

pengguna3439894
sumber