Tôi có thể mở tệp văn bản trong Bản xem trước từ Terminal không?


12

Tôi biết rằng tôi có thể mở một tệp có chương trình bên ngoài từ Terminal openvà nó hoạt động với hầu hết các ứng dụng. Tuy nhiên, khi tôi cố gắng sử dụng một lệnh như thế open -a Preview info.txt, nó sẽ khởi chạy Bản xem trước, nhưng tệp không được mở.

Tôi đang ở trên Mavericks 10.10.2.

Có cách nào để sử dụng openlệnh (hoặc bất kỳ lệnh tích hợp nào khác) để thực sự mở một tệp trong Bản xem trước từ Terminal không?


Xem trước không thể mở tệp văn bản, nhưng lệnh open -a Preview photo.jpghoạt động với tôi, nó mở hình ảnh trong Xem trước.
Lyes

Câu trả lời:


12

Xem trước chỉ hoạt động với các tệp PDF và một số tệp hình ảnh (png, jpg, gif, tiff, bmp) để bạn không thể mở tệp văn bản trên Xem trước.

Để mở tệp info.txt của bạn từ thiết bị đầu cuối, bạn cần chọn một ứng dụng có thể mở tệp văn bản, như TextEdit hoặc bất kỳ trình soạn thảo văn bản nào khác.

Bạn cũng có thể sử dụng open -e file, để mở bất kỳ tệp nào bằng TextEdit.


Nếu bạn không muốn mạo hiểm chỉnh sửa tệp, hãy thử open -a Safari info.txt.
lhf

1
Tôi không nghĩ câu hỏi là về việc mở một tệp văn bản. Vẫn còn câu hỏi làm thế nào để mở tệp pdf trong Bản xem trước từ thiết bị đầu cuối? . Bạn đã không trả lời được câu hỏi đó.
Walter

1
Không có câu hỏi nào về 'làm thế nào để mở tệp pdf trong bản xem trước', như người dùng đã nêu trong ví dụ của mình, anh ta đã biết cách mở tệp trong Bản xem trước từ thiết bị đầu cuối nhưng không hiểu tại sao nó không hoạt động khi cố gắng mở một tập tin txt. Tôi vừa trả lời giải thích loại tệp nào bạn có thể mở bằng Xem trước và cách mở bất kỳ tệp nào từ thiết bị đầu cuối bằng trình chỉnh sửa văn bản mặc định. Ngoài ra, những người dùng khác cũng trả lời tương tự, sử dụng một ví dụ khác với tệp hình ảnh. Nhưng bạn đã có một điểm, tôi có thể đã trả lời theo cách tốt hơn.
leandrojmp 21/07/2015

5

NB - Nếu có bất kỳ câu hỏi nào về câu trả lời này xin vui lòng bình luận.

CẬP NHẬT

Không có gì sai với các câu trả lời khác, câu trả lời này sử dụng lệnh hệ thống để chuyển đổi tệp văn bản thành kiểu tệp tương thích để xem trước (ví dụ PDF).

Cho một tệp mẫu bạn có thể chạy:

cupsfilter info.txt > info.pdf

(để ẩn việc sử dụng đầu ra gỡ lỗi cupsfilter info.txt > info.pdf 2> /dev/null)

Sau đó, người ta có thể áp dụng câu trả lời ban đầu để mở info.pdftệp mới trong Bản xem trước. Bạn có thể tìm hiểu thêm bằng cách chạy man cupsfilter. Tôi tin rằng điều này chỉ phơi bày chức năng Save As PDF cơ bản tồn tại trong hệ thống in CUPS.

( Nguồn )

Ngoài ra

Như đã lưu ý trong các bình luận, người ta có thể chỉ cần đặt lệnh để mở tệp trực tiếp vào Bản xem trước. Điều này làm việc cho tôi:

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

(Câu trả lời gốc)

Để mở tệp Xem trước được hỗ trợ từ Terminal, chẳng hạn như pdf, png, jpg, gif, tiff, bmp:

open -a Preview <nameOfSupportedFileType>

Ví dụ:

open -a Preview avatarMask@2x.png

Mở png từ thư mục hiện tại trong Xem trước.


1
Đẹp! Tôi đã thử cupsfilternhưng nó không xảy ra với tôi để chuyển hướng stderr (doh!). Với chuyển hướng, bạn có thể chuyển stdout trực tiếp tới open( cupsfilter info.txt 2> /dev/null | open -f -a /Applications/Preview.app)
John N

2

Có, nhưng bạn cần chuyển đổi tập tin thành postcript hoặc PDF trước. Ví dụ: tôi có một chức năng pmanhoạt động chính xác như thông thường man, nhưng mở mantrang trong Preview.app:

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

Các -ttùy chọn nói manrằng sản lượng cần phải được định dạng (sử dụng groff) như postscript.

Bạn muốn mở một tệp văn bản trong Preview.app. Đối với giai đoạn "chuyển đổi sang PDF" mà tôi sử dụng paps, tôi đã cài đặt bằng cách sử dụng brew:

brew install paps

Sau đó, thật dễ dàng!

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

Điều đó sẽ mở info.txttrong Xem trước. Nếu bạn làm điều này rất nhiều, có thể bạn sẽ muốn tạo một hàm (trong ~/.bash_profilehoặc tương tự):

preview ()
{
    if [ -z "$*" ]; then
        echo "Usage: preview [FILE]"
    else
        paps $1 | open -f -a /Applications/Preview.app
    fi
}
complete -f -X '!*.txt' preview
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.