Header Ads Widget

Ticker

6/recent/ticker-posts

Một số thủ thuật lấy giá trị file chọn bằng chuột Batch Script

Keyword: Get value by mouse with script batch
Để lấy giá trị của một tên file hay tham số đường dẫn của Batch Script ta sẻ bao gồm như sau, các tham số từ %1 đến %9 v.v nghĩa là gì, mình sẻ lấy ví dụ cụ thể thế này bạn muốn lấy giá trị đường dẫn đầu tiên của file bằng Script bạn tạo 1 file với đoạn code sau

Ok bây giờ Save lại và lưu trong Sendto để dễ dàng thực hiện Test ở đây mình chọn Test thử với Teamviewer
Đáp án trả về sẻ là thế này
Ok ta sẻ thử tiếp với %2 và %3 coi điều gì nhé với %2 và %3 nếu lựa chọn 1 file như hình sẻ không hiện ra kết quả gì cả, %2 tương ứng với chọn 2 file, và %3 là 3 file nhưng nó chỉ xuất ra 1 giá trị của file thứ 2 và file thứ 3 thôi kết hợp những điều này ta sẻ có câu lệnh thế này
@ECHO OFF
:Loop
IF "%1"=="" GOTO Continue
   Echo %1
SHIFT
GOTO Loop
:Continue
Pause
Nghĩa là nếu nếu ta lựa chọn 1 file thì sẻ xuất ra giá trị của file đó còn nếu trên 1 file thì sẻ không hiện gì cả, giả xử bạn thay đổi lại thành thế này
@ECHO OFF
:Loop
IF "%2"=="" GOTO Continue
   Echo %1
SHIFT
GOTO Loop
:Continue
Pause
Điều này có nghĩa là bạn chọn 2 file trở lên mới thực hiện còn 1 file thì không hiện gì cả, trong đó Echo %1 là file được lựa chọn ví dụ tôi lựa chọn 2 file thì nó sẻ lấy file đầu tiên, còn nếu là Echo %2 thì nó sẻ lấy file thứ 2 cái này bạn tự Test thử sẻ biết nhé tiếp theo ta sẻ tiếp xúc với dạng cao cấp hơn đó là hiện ra tất cả giá trị file mà ta đã chọn, nghĩa là không cần biết bạn chọn bao nhiêu file nó vẫn hiện ra đầy đủ với số file đó, bạn chọn 5 file nó sẻ hiện ra 5 ví dụ nằm ở phía dưới nhé
FOR %%A IN (%*) DO (
      Echo %%A
)
Ở trên mình đã chọn 4 File giá trị xuất ra của 4 file như trên ảnh tiếp theo ta sẻ làm quen với các Macro khác %CmdCmdLine% lệnh này sẻ hiện ra kết quả sau
%*
Dưới đây là một số thành phần mà mình đã tìm hiểu trong Batch Script bạn có thể tìm hiểu thêm bằng cách thêm ví dụ với echo để xuất ra kết quả nhé.
%~n0 - lấy giá trị tên file Batch của ta
%~1 - xóa mọi trích dẫn xung quanh (")
%~f1 - thành tên đường dẫn đầy đủ
%~d1 - thành ký tự ổ đĩa
%~p1 - thành một đường dẫn
%~n1 - thành tên tệp
%~x1 - thành phần mở rộng tệp
%~s1 - đường dẫn mở rộng chỉ chứa các tên ngắn
%~a1 - thành thuộc tính tệp
%~t1 - đến ngày / thời gian của tệp
%~z1 - thành kích thước tệp
%~dn - sẽ trả về ký tự ổ đĩa của% n (n có thể nằm trong khoảng từ 0 đến 9) nếu %n là đường dẫn hoặc tên tệp hợp lệ (không có UNC)
%~pn - sẽ trả về thư mục của% n nếu% n là đường dẫn hoặc tên tệp hợp lệ (không có UNC)
%~nn - sẽ chỉ trả lại tên tệp của% n nếu% n là tên tệp hợp lệ
%~xn - sẽ chỉ trả về phần mở rộng tệp của% n nếu% n là tên tệp hợp lệ
%~fn - sẽ trả về đường dẫn đủ điều kiện của% n nếu% n là tên tệp hoặc thư mục hợp lệ

Post a Comment

0 Comments