Mở tệp từ dòng lệnh trên Windows


62

Trên Mac OS X và Gnome trên Linux, có các lệnh có thể được sử dụng để mở tệp từ dòng lệnh trong trình chỉnh sửa GUI được liên kết của chúng: opengnome-open, tương ứng. Có lệnh nào như thế này cho Windows không?


@badp: Tôi đã đề cập đến "Gnome trên Linux" không chỉ Linux.
Wuffers

Rất tiếc, xin lỗi.
badp

@badp: Không phải lo lắng. ;)
Wuffers

xdg-open là ví dụ phổ biến hơn về Linux, nếu có ai quan tâm
furicle

Câu trả lời:


58

Nếu bạn hiện đang ở trong dấu nhắc lệnh và có một tệp được gọi test.pngvà, được đặt trong đó, c:\testbạn có thể làm như sau:

Nếu bạn đang ở thư mục (nên nói c:\test>) chỉ cần gõ:

test.png

mà sẽ mở thử nghiệm trong trình chỉnh sửa hình ảnh png mặc định.

Nếu tên tệp chứa khoảng trắng, thì chỉ cần đặt tên tệp trong ""

 "this image.png"

Bạn có thể gõ thay thế:

c:\test\test.png

sẽ mở tập tin bất kể bạn đang ở đâu.

Cuối cùng, bạn có thể chuyển hình ảnh sang chương trình khác. Ví dụ: nếu bạn có trình chỉnh sửa hình ảnh có tên là imageedit.exe và nó hỗ trợ mở tệp thông qua các dòng lệnh (và nếu chương trình được dẫn / truy cập hoặc bạn đang ở trong thư mục hiện tại của nó), bạn có thể nhập như sau:

 imageedit c:\test\test.png

Chỉ tò mò: có cách nào để đóng tệp hoặc chương trình hoặc cửa sổ thông qua dấu nhắc lệnh không?
Miles Johnson

@MilesJohnson chỉ bằng cách gọi các công cụ khác như taskkill.exe
William Hilsum

1
hoạt động từ cmd, nhưng không phải từ PowerShell hay Git Bash - explorer là cách phổ quát hơn
furicle

49

Nếu đó là tiện ích mở rộng đã đăng ký, bạn có thể sử dụng "bắt đầu" như trong

start WordDoc.doc

6
Câu trả lời tốt cho những người sử dụng Bash hoặc shell khác.
Yves Junqueira

Đây thực sự là câu trả lời chính xác. Nó thậm chí sẽ mở trình duyệt mặc định nếu bạn cung cấp một URL.
kumarharsh

1
Khi tôi đặt tên trong dấu ngoặc kép, thay vào đó nó sẽ mở một cửa sổ shell mới vì một số lý do.
Erhannis

3
Như Steven Digby đề cập bên dưới tham số đầu tiên của start là tiêu đề cửa sổ để một cái gì đó giống như start "" WordDoc.docsẽ hoạt động
Tony Brix

bắt đầu làm những việc khác nhau tùy thuộc vào vỏ bạn sử dụng. Với Powershell, nó gọi Start-Process Với cmd, nó gọi khởi động truyền thống Với Git Bash, nó gọi cmd Start Bắt đầu cmd Start không xử lý các vị trí mạng. Phiên bản PowerShell sẽ, như 'thám hiểm' như chi tiết bên dưới.
furicle

10

Trên dòng lệnh DOS explorer "<PATH>"sẽ mở đường dẫn tệp với các chương trình liên kết mặc định của Windows. Điều này cũng sẽ xử lý tất cả các URI (http :, https :, ftp :) và các giao thức tệp khác được xác định trong Hệ điều hành Windows. Nếu tệp hoặc giao thức không được liên kết với bất kỳ chương trình nào thì một Open Withhộp thoại sẽ hiển thị. Nếu không có tập tin thì My Documentsthư mục mặc định sẽ mở ra. Nó cũng có thể mở các tệp thực thi (tệp EXE, BAT) và đường dẫn không gian tên shell.

Ví dụ

explorer "http://www.google.com"- sẽ mở http://www.google.com trong trình duyệt mặc định của windows.

explorer "file:///C:\temp\"sẽ mở thư mục tạm thời nếu có

explorer "file.txt"sẽ mở file.txttrên đường dẫn thư mục hiện tại .ie %CD%path

explorer ::{645ff040-5081-101b-9f08-00aa002f954e}sẽ mở RecyclBin .

Bạn có thể tham khảo về các công tắc dòng lệnh hữu ích khác của explorer tại đây



1

Tham số đầu tiên của Bắt đầu là tiêu đề cửa sổ, vì vậy nếu bạn có khoảng trắng trong tên tệp và bạn nhập

Bắt đầu "Tệp tin của tôi"

bạn sẽ nhận được một cửa sổ dòng lệnh với "My File.txt" làm tiêu đề. Để giải quyết vấn đề này, hãy sử dụng một tiêu đề giả,

Bắt đầu "tiêu đề của tôi" "File.txt của tôi"

Tùy thuộc vào tệp và ứng dụng nào được mở, có lẽ sẽ không có cửa sổ để xem.


1

Nếu bạn đang ở trong PowerShell (tại dấu nhắc) và bạn muốn mở một tệp trong thư mục hiện tại, bạn có thể thử điều này . Nếu bạn đang ở trong Dấu nhắc lệnh, bạn có thể thực hiện cùng một kết quả bằng cách nhậpPS (current-directory)> .\myfile.ext

powershell -c .\myfile.ext

(Bạn phải bao gồm .\, vì PowerShell không tải tệp từ vị trí hiện tại theo mặc định.) Hoặc bạn có thể cung cấp tên thư mục (tương đối hoặc tuyệt đối) nếu tệp không nằm trong thư mục hiện tại.

Đối với kịch bản đầu tiên - nếu bạn đang ở trong PowerShell - nếu tên tệp chứa (các) khoảng trắng, hãy đặt nó trong dấu ngoặc kép (một trong hai loại) và đặt trước &ký hiệu:

PS C: \ Users \ myusername \ Pictures> & ". \ Funny cat.jpg"

(Bạn có thể thêm một khoảng trắng sau &khả năng đọc, nếu bạn thích đọc và bạn có thể sử dụng /thay vì \.) Tôi không biết làm thế nào để làm việc này trong kịch bản thứ hai (trong đó bạn đang chạy powershell -ctừ Dấu nhắc lệnh) nếu tên tệp hoặc thư mục chứa không gian (s) - trích dẫn dường như không giúp đỡ.


0

Cụ thể thực thi với cụ thể file:

Tập lệnh Git Bash trên Windows 10 :


SHORTCUTS_MAIN_START.sh:

    FILE_PATH="C:\DEV\REPO\GIT\AHK03\SHORTCUTS\SHORTCUTS_MAIN.ahk"
    EXEC_PATH="C:\DEV\REPO\GIT\AHK03\AHK_ROOT\AutoHotkeyU64.exe"

    $EXEC_PATH $FILE_PATH

Ví dụ này mở tệp được ký hiệu là $ FILE_PATH với tệp thực thi được ký hiệu là $ EXEC_PATH . Nếu điều này không phù hợp với bạn, hãy thử chuyển đổi dấu gạch chéo đơn ("\") thành dấu gạch chéo kép ("\\") cho đường dẫn.


-1

Điều này có thể đến hơi muộn, nhưng lệnh chính xác để chỉnh sửa tên tệp trong Windows 7 là "write file_name"

Điều này sẽ mở trình soạn thảo văn bản mặc định và bạn sẽ có thể chỉnh sửa tệp dễ dàng

Chỉnh sửa: Nó dường như chỉ mở Wordpad. Đối với tôi đó là trình soạn thảo văn bản mặc định.


Bí quyết đẹp. Tuy nhiên, nó không khởi động trình soạn thảo văn bản mặc định. Trình chỉnh sửa mặc định của tôi cho các tệp .txt là trình soạn thảo Crimson, nhưng lệnh này sẽ mở Wordpad.
Jan Doggen

Vâng, nó cũng làm như vậy đối với tôi. Wordpad được mặc định cho tôi. Cảm ơn các cập nhật! Bất kể, hy vọng điều này sẽ giúp các poster ban đầu.
Coder

2
writelà viết tắt write.execủa tập tin wordpad. Nó được lưu trữ trong C:\windowsđó %PATH%, vì vậy đây chỉ là cách thông thường để mở tệp bằng wordpad.
amenthes

-3

Trong dấu nhắc lệnh của Windows, bạn có thể chạy

edit [file_name]

để xem các tệp bó / nhật ký / tệp văn bản, v.v ... Lệnh này yêu cầu QBASIC.EXE, theo mặc định có trong Windows.

Xem ở đây để biết các lệnh MS-DOS hữu ích khác.


2
Dường như không hoạt động trên Windows 7 64 bit, editcũng không qbasic.exeđược công nhận. Ngoài ra, điều này chỉ hoạt động với các tập tin văn bản đơn giản.
Indrek

@Indrek, Không được công nhận trên Win8.
Pacerier 20/03/2015

Dòng lệnh Windows hiện đại KHÔNG phải là DOS.
oldherl
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.