ls -rt (Làm thế nào để liệt kê chỉ tập tin LAST? ví dụ: | xargs gnome-open)


16

ví dụ thư mục chứa tệp jpeg: làm thế nào để dễ dàng mở chỉ jpeg gần đây nhất trong thư mục hiện tại?

Câu trả lời:


19

ls -rt | tail -1

Các -1kể đuôi để chỉ hiển thị một dòng nếu bạn muốn trở thành rõ ràng hơn bạn có thể sử dụng tùy chọn dài thay vì

ls -rt | tail --lines=1


4
Thậm chí tốt hơn là "ls -t | head -1". Xem bình luận của tôi dưới đây.
Andy Lester

20

Những gì bạn thực sự muốn là tập tin đầu tiên của một danh sách dựa trên thời gian không đảo ngược.

ls -t | head -1

-R dành cho con người vì chúng tôi muốn thứ cuối cùng trên màn hình đã được cuộn qua, thay vì thứ nhất. Trong trường hợp máy tìm ra nó, nó cũng có thể sử dụng headvà dừng lại sau lần đầu tiên, thay vì tailchạy qua danh sách.


3

Với zsh:

gnome-open *.jpg(om[1])

Vòng (om)loại toàn cầu sắp xếp các trận đấu theo độ tuổi tăng dần (tức là theo thứ tự chống thời gian). Vòng loại toàn cầu ([1])chỉ chọn trận đấu đầu tiên. Bạn có thể sử dụng *.jpg(om[1,4])để mở 4 tệp gần đây nhất, v.v.

Trong các vỏ khác:

gnome-open "$(\ls -t *.jpg | head -1)"

nhưng hãy cẩn thận rằng nếu bạn có ký tự không in hoặc byte trong tên tập tin của bạn (mà thường xảy ra nếu bạn có tên tập tin trong một bộ ký tự khác nhau từ miền địa phương của bạn), lssẽ thay thế chúng bằng ?, vì vậy điều này sẽ không làm việc.


Trên mac, bạn có thể sử dụng openthay vìgnome-open
Janac Meena
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.