Bisakah saya membuka file teks di Preview dari Terminal?

12

Saya tahu bahwa saya dapat membuka file dengan program eksternal dari Terminal open, dan itu berfungsi untuk sebagian besar aplikasi. Namun, ketika saya mencoba menggunakan perintah seperti open -a Preview info.txt, itu meluncurkan Pratinjau, tetapi file tidak dibuka.

Saya di Mavericks 10.10.2.

Apakah ada cara untuk menggunakan openperintah (atau perintah bawaan lainnya) untuk benar-benar membuka file di Pratinjau dari Terminal?

Ben
sumber
Pratinjau tidak dapat membuka file teks, tetapi perintah itu open -a Preview photo.jpgberfungsi untuk saya, itu membuka gambar di Pratinjau.
Lyes

Jawaban:

12

Pratinjau hanya berfungsi dengan file PDF dan beberapa file gambar (png, jpg, gif, tiff, bmp) sehingga Anda tidak akan dapat membuka file teks pada Preview.

Untuk membuka file info.txt Anda dari terminal, Anda harus memilih aplikasi yang dapat membuka file teks, seperti TextEdit atau editor teks lainnya.

Anda juga bisa menggunakan open -e file, untuk membuka file apa saja menggunakan TextEdit.

leandrojmp
sumber
Jika Anda tidak ingin mengambil risiko mengedit file, coba open -a Safari info.txt.
lhf
1
Saya tidak berpikir pertanyaannya adalah tentang membuka file teks. Masih ada pertanyaan bagaimana cara membuka file pdf di Preview dari terminal? . Anda gagal menjawab pertanyaan itu.
Walter
1
Tidak ada pertanyaan tentang 'cara membuka file pdf dalam pratinjau', karena pengguna menyatakan pada contohnya, ia sudah tahu cara membuka file dalam Pratinjau dari terminal tetapi tidak mengerti mengapa itu tidak bekerja ketika mencoba untuk buka file txt. Saya baru saja menjawab menjelaskan jenis file apa yang dapat Anda buka dengan Preview dan bagaimana membuka file apa pun dari terminal menggunakan editor teks default. Juga, pengguna lain menjawab hal yang sama, menggunakan contoh lain dengan file gambar. Tapi Anda ada benarnya, saya bisa menjawab dengan cara yang lebih baik.
leandrojmp
5

NB - Jika ada pertanyaan lebih lanjut tentang jawaban ini, silakan komentar.

MEMPERBARUI

Tidak ada yang salah dengan jawaban lain, yang satu ini memanfaatkan perintah sistem untuk mengonversi file teks ke tipe file yang kompatibel untuk Pratinjau (yaitu PDF).

Diberikan file sampel yang dapat Anda jalankan:

cupsfilter info.txt > info.pdf

(untuk menyembunyikan penggunaan hasil debug cupsfilter info.txt > info.pdf 2> /dev/null)

Setelah itu orang dapat menerapkan jawaban asli untuk membuka info.pdffile baru di Pratinjau. Anda dapat mempelajari lebih lanjut dengan menjalankan man cupsfilter. Saya percaya ini hanya memperlihatkan fungsionalitas Save As PDF dasar yang ada di sistem cetak CUPS.

( Sumber )

Selain itu

Seperti yang tercantum dalam komentar, seseorang dapat dengan mudah mengirimkan perintah untuk membuka file langsung ke Pratinjau. Ini bekerja untuk saya:

cupsfilter info.txt 2> /dev/null | open -f -a Preview

(Jawaban Asli)

Untuk membuka file Pratinjau yang didukung dari Terminal, seperti pdf, png, jpg, gif, tiff, bmp:

open -a Preview <nameOfSupportedFileType>

Jadi misalnya:

open -a Preview [email protected]

Buka png dari folder saat ini di Pratinjau.

Tommie C.
sumber
1
Bagus! Saya mencoba cupsfiltertetapi tidak terpikir oleh saya untuk mengarahkan ulang stderr (doh!). Dengan pengalihan, Anda dapat mengirim stdout langsung ke open( cupsfilter info.txt 2> /dev/null | open -f -a /Applications/Preview.app)
John N
2

Ada, tetapi Anda perlu mengonversi file ke postscript atau PDF terlebih dahulu. Misalnya, saya memiliki fungsi pmanyang berfungsi persis seperti biasa man, tetapi membuka manhalaman di Preview.app:

pman () 
{ 
    man -t $* | open -f -a /Applications/Preview.app
}

The -tpilihan menceritakan manbahwa output perlu diformat (menggunakan groff) sebagai postscript.

Anda ingin membuka file teks di Preview.app. Untuk tahap "convert to PDF" yang saya gunakan paps, yang saya instal menggunakan brew:

brew install paps

Setelah itu mudah!

paps info.txt | open -f -a /Applications/Preview.app

Itu akan terbuka info.txtdi Pratinjau. Jika Anda sering melakukan ini, Anda mungkin ingin membuat fungsi (dalam ~/.bash_profileatau serupa Anda):

preview ()
{
    if [ -z "$*" ]; then
        echo "Usage: preview [FILE]"
    else
        paps $1 | open -f -a /Applications/Preview.app
    fi
}
complete -f -X '!*.txt' preview
John N.
sumber