Tôi đang tìm lệnh lệnh cmd trong Windows XP, như "dir/b/s" bao gồm giá trị ngày và thời gian cho mỗi tệp trong kết quả. Tất cả dữ liệu - đường dẫn, tên tệp và ngày/giờ - cần phải nằm trên một dòng. Bất cứ ai có thể cung cấp một lệnh để thực hiện điều này? Cảm ơn bạn.cmd dir/b/s cộng với ngày
Trả lời
Không có cách nào trực tiếp để thực hiện việc này bằng DIR. Bạn sẽ cần phải viết một wrapper mà tước các chi tiết không liên quan từ DIR/s
Bạn có thể sử dụng hoặc PowerShell, VBScript hoặc javascript để làm điều này.
Đây là câu trả lời có liên quan khi sử dụng PowerShell: How to retrieve a recursive directory and file list from PowerShell excluding some files and folders? mặc dù bạn sẽ cần phải sửa đổi điều này để thêm ngày/giờ.
UPDATE: Đây là một trang web MAD liệt kê một thư mục đi bộ đệ quy trong vô số ngôn ngữ khác nhau: http://rosettacode.org/wiki/Walk_a_directory/Recursively
Nếu bạn muốn tập tin chỉ
for /r %F in (*) do @echo %~tF %F
Nếu bạn muốn cả hai tập tin và thư mục sau đó sử dụng lệnh DIR với FOR/F
for /f "eol=: delims=" %F in ('dir /b /s') do @echo %~tF %F
Nếu sử dụng trong một tập tin thực thi sau đó %F
và %~tF
mus t đổi thành %%F
và %%~tF
.
Làm thế nào về một cái gì đó như thế này:
for /f "tokens=*" %a in ('dir *.* /a:d /b /s') do for /f "skip=5 tokens=1,2,3,4*" %b in ('dir *.* /a:-d') do @if %e neq bytes @echo %a\%e%f %b %c
Simples, mặc dù tôi có thể phức tạp một chút :-)
này đáp ứng nhu cầu của tôi một cách hoàn hảo. Cảm ơn bạn. – user1483922
@ user1483922 - Khi bạn nhận được câu trả lời đáp ứng hoàn hảo nhu cầu của mình, bạn nên chấp nhận câu trả lời đó bằng cách nhấp vào dấu kiểm ở gần góc trên bên trái của câu trả lời. Chấp nhận câu trả lời cho phép người khác biết câu hỏi đã được trả lời, nó cho bạn 2 điểm để dành thời gian chấp nhận câu trả lời và giải thưởng cho người đã đăng câu trả lời 15 điểm. – dbenham