Tệp có phần mở rộng bat. Tạo tệp BAT

Tệp hàng loạt hoặc lô là các tệp văn bản thông thường chứa các bộ lệnh thông dịch và có phần mở rộng bat hoặc cmd (cmd chỉ hoạt động trong hệ điều hành dòng NT). Bạn có thể chỉnh sửa các tệp như vậy bằng notepad hoặc bất kỳ trình soạn thảo văn bản nào khác.

Mở notepad và gõ hai dòng sau:

@echo Tệp bó này
@tạm ngừng

Tệp bó này
Bấm phím bất kỳ để tiếp tục...

Sau khi nhấn phím bất kỳ, cửa sổ sẽ đóng lại, vì tập tin bat đã hoàn tất.
Xin lưu ý rằng biểu tượng con chó trước mỗi lệnh trong tệp bat cho biết rằng bản thân lệnh đó không cần hiển thị trên màn hình mà chỉ hiển thị kết quả hoạt động của lệnh đó. Để thử nghiệm, hãy xóa ký tự con chó ở đầu mỗi dòng, lưu và chạy tệp dơi kết quả.

Các lệnh sử dụng trong file bat

Danh sách các lệnh có thể sử dụng trong file bat có thể xem bằng cách nhập lệnh vào dòng lệnh (Start - Run - cmd cho dòng Windows NT hoặc Start - Run - command cho dòng 9x)

Kết quả của trợ giúp là một danh sách các lệnh có sẵn kèm theo lời giải thích ngắn gọn về chúng. Để biết thêm thông tin chi tiết về lệnh bạn quan tâm, hãy nhập help command_name tại dòng lệnh. Ví dụ: để nhận trợ giúp chi tiết về công tắc lệnh AT, hãy chạy lệnh sau:

Kết quả trên màn hình sẽ hiển thị danh sách các phím để chạy lệnh AT từ file bat.
Nếu tệp bat được thực thi trong Windows (không phải DOS thuần túy), thì bạn có thể chạy bất kỳ ứng dụng nào hoặc mở tệp từ đó. Ví dụ: bạn cần tự động mở tệp nhật ký của tệp bat khi nó hoàn thành công việc. Để thực hiện việc này, chỉ cần đưa lệnh sau vào tệp bat ở dòng cuối cùng:

bắt đầu tên tệp.txt

Kết quả của việc thực hiện lệnh này sẽ là việc mở file file_name.txt và chính file bat sẽ hoàn thành công việc của nó. Phương pháp này phù hợp nếu tệp nhật ký có dung lượng nhỏ, nếu không Notepad sẽ từ chối mở nó và đề xuất bạn sử dụng WordPad. Nhưng vấn đề này cũng có thể được giải quyết, như sẽ được trình bày trong các ví dụ tiếp theo.

Cách tự động khởi chạy tập tin bat

Rất thường xuyên cần phải tự động hóa việc khởi chạy các tệp bat để thực hiện các hoạt động thông thường. Để chạy các tập tin bat theo lịch trình, Scheduler có trong gói Windows tiêu chuẩn là phù hợp nhất. Với sự trợ giúp này, bạn có thể định cấu hình rất linh hoạt việc khởi chạy tệp bó vào những ngày hoặc giờ nhất định, với một khoảng thời gian nhất định. Bạn có thể tạo nhiều lịch trình, v.v.

Để khởi chạy các tệp hàng loạt cục bộ, bạn có thể sử dụng các giải pháp từ bên thứ ba, may mắn thay, có rất nhiều lựa chọn thay thế trả phí và miễn phí cho Trình lập lịch tiêu chuẩn.

Các tệp hàng loạt cũng có thể được sử dụng làm tập lệnh đăng nhập trong miền. Khi sử dụng theo cách này, chúng sẽ được thực thi mỗi khi người dùng đăng nhập vào mạng, bất kể mong muốn của họ là gì. Với sự trợ giúp của họ, bạn có thể tự động hóa việc thu thập thông tin về máy móc hoặc phần mềm được cài đặt trên máy tính của người dùng, thay đổi mạnh mẽ cài đặt Windows, cài đặt phần mềm mà người dùng không nhận thấy và tự động hóa giải pháp cho các tác vụ khác vốn sẽ mất nhiều thời gian để thực hiện thủ công.

Cách tạo file có tên tùy ý từ file bat

Biểu tượng chuyển hướng được sử dụng để tạo tệp trong khi tệp bó đang chạy. Nó trông như thế này:
>
Những thứ kia. để tạo một tệp, bạn cần chuyển hướng luồng từ màn hình sang tệp. Điều này có thể được thực hiện bằng lệnh sau:

@echo Tệp bắt đầu>C:\1.txt

Sau khi thực hiện lệnh này, một file văn bản có dòng Start file sẽ được tạo trong thư mục gốc của ổ C.
Khi tạo một tệp, bạn có thể sử dụng các biến hệ thống hoặc một phần của chúng trong tên của nó. Ví dụ: bạn có thể tạo tệp báo cáo về hoạt động của tệp bat có tên bằng ngày tệp bat được khởi chạy. Để thực hiện việc này, bạn có thể sử dụng các dòng sau trong tệp bat.

đặt datetemp=%ngày:~-10%
@echo .>%SYSTEMDRIVE%\%DATETEMP%.txt

Hai dòng này hoạt động như thế này. Đầu tiên, chúng ta tạo một biến datetemp trong bộ nhớ, chúng ta gán 10 ký tự từ phải sang trái từ biến hệ thống DATE. Vì vậy, bây giờ biến tạm thời datetemp chỉ chứa ngày hiện tại. Với dòng tiếp theo, chúng tôi chuyển hướng đầu ra của ký hiệu dấu chấm sang một tệp, tên của tệp này được lấy từ biến datetemp và phần mở rộng txt được chỉ định rõ ràng. Tệp sẽ được tạo trên đĩa hệ thống của máy tính nơi tệp bat được thực thi.

Khi quản trị viên thu thập thông tin về các máy tính trên mạng, việc thêm tên máy tính vào tên file sẽ thuận tiện hơn. Điều này có thể được thực hiện dễ dàng bằng cách sử dụng lệnh sau:

@echo .>C:\FolderName\%COMPUTERNAME%.txt

Lệnh này, trong khi thực thi một tệp bó, sẽ tạo một tệp văn bản trên ổ C với tên của máy tính nơi tệp bó đang chạy.
Để tạo một tệp có tên cụ thể, bạn có thể sử dụng bất kỳ biến hệ thống nào hoặc tạo tệp của riêng bạn dựa trên các biến hệ thống và/hoặc dữ liệu khác.

Cách tạo thư mục từ tập tin bat

Để tạo một thư mục, hãy sử dụng lệnh MKDIR hoặc MD rút gọn tương đương của nó. Để tạo thư mục từ tệp bat, bạn cần sử dụng lệnh sau:

Sau khi thực hiện lệnh này, một thư mục FolderName sẽ được tạo trong thư mục mà tệp bat được khởi chạy. Để tạo một tệp ở một vị trí khác với nơi bạn bắt đầu tệp bat, ví dụ như trong thư mục gốc của ổ D, hãy sử dụng chỉ báo rõ ràng về vị trí của thư mục mới. Lệnh sẽ trông như thế này:

MD D:\Tên thư mục

Khi tạo thư mục, bạn có thể sử dụng các biến hệ thống. Ví dụ: bạn có thể tạo một thư mục trong thư mục gốc của ổ D với tên của người dùng hiện tại. Để thực hiện việc này, bạn sẽ cần biến %USERNAME% và lệnh sẽ có dạng như sau:

MD D:\%TÊN NGƯỜI DÙNG%

Bạn có thể làm phức tạp thêm lệnh và tạo một thư mục có tên của người dùng hiện tại trên ổ đĩa hệ thống máy tính của anh ta. Lệnh cho việc này sẽ trông như thế này:

MD %SYSTEMDRIVE%\%USERNAME%

Khi tạo thư mục hoặc tệp, bạn có thể sử dụng bất kỳ biến hệ thống hoặc phần nào của chúng. Ví dụ sau đây minh họa việc tạo một thư mục trên ổ đĩa hệ thống của máy tính người dùng có tên bằng ngày hiện tại.

đặt datetemp=%ngày:~-10%
MD %SYSTEMDRIVE%\%datetemp%

Thiết kế này hoạt động như sau.
Lệnh đầu tiên tạo một biến datetemp trong bộ nhớ, biến này sẽ bị hủy khi tệp bat chạy xong. Cho đến khi file bat hoàn thành công việc của nó thì mới có thể hoạt động với giá trị của biến này. Biến datetemp được gán 10 ký tự từ phải sang trái của biến hệ thống DATE, tức là. kể từ ngày hiện tại. Biến DATE có định dạng Ngày DD.MM.YYYY. Các ký tự đầu tiên bên trái là tên của ngày trong tuần, vì vậy chúng tôi loại bỏ chúng và chỉ gán ngày hiện tại cho biến tạm thời datetemp.
Điều này không giới hạn danh sách các khả năng khi tạo thư mục. Bạn có thể thao tác với các biến theo cách mình muốn, tạo các thư mục có tên độc đáo, dễ đọc. Bạn có thể lấy danh sách tất cả các biến bằng lệnh SET.

Cách chuyển hướng kết quả thực thi lệnh sang một tệp

Thông thường, khi thực thi một tệp bat phức tạp ở chế độ tự động, việc kiểm tra kết quả công việc của nó có thể khó khăn vì nhiều lý do. Vì vậy, việc ghi kết quả của các lệnh tập tin batch vào tệp văn bản (tệp nhật ký) sẽ dễ dàng hơn. và sau đó phân tích hoạt động chính xác của tệp bat bằng nhật ký này.
Việc chuyển hướng kết quả của lệnh file bat sang file log khá đơn giản. Sau đây sẽ cho thấy làm thế nào điều này có thể được thực hiện.
Tạo file bat có nội dung như sau (copy những dòng này vào Notepad và lưu file với đuôi mở rộng bat):

@echo tắt
echo Bắt đầu %time%
echo Tạo test.txt
kiểm tra tiếng vang>C:\test.txt
echo Sao chép Test.txt vào Old_test.txt
sao chép C:\test.txt C:\Old_test.txt
echo Dừng %time%

Dòng đầu tiên vô hiệu hóa đầu ra của các lệnh. Do đó, chỉ kết quả thực hiện của chúng mới được ghi vào tệp nhật ký.
Dòng thứ hai ghi vào tệp nhật ký thời gian bắt đầu của tệp bó.
Dòng thứ ba ghi vào tệp nhật ký giải thích rằng lệnh sau sẽ tạo tệp test.txt
Lệnh từ dòng thứ tư tạo một tệp test.txt từ thư mục gốc của ổ C. Ví dụ: tệp được tạo. Lệnh này ghi word test vào file C:\test.txt
Dòng thứ năm in ra tệp nhật ký giải thích rằng lệnh sau sẽ sao chép tệp từ vị trí này sang vị trí khác.
Lệnh ở dòng thứ sáu sao chép tệp đã tạo C:\test.txt sang tệp C:\Old_test.txt, tức là. một bản sao của tập tin được tạo dưới tên mới.
Dòng thứ bảy cuối cùng chứa lệnh hiển thị thời gian hoàn thành của tệp bó. Cùng với việc ghi lại thời gian bắt đầu của tệp bó trong tệp nhật ký, hai giá trị thời gian này giúp ước tính thời gian chạy của tệp bó.

Lưu tệp bó này với tên như 1.bat
Giả sử rằng chúng tôi muốn lưu trữ báo cáo về hoạt động của một tệp bó trong một thư mục riêng và viết báo cáo hàng ngày với tên tệp mới để chúng tôi có thể truy cập nhật ký của những ngày trước đó vào bất kỳ ngày nào. Hơn nữa, tôi muốn có tên của tệp nhật ký ở dạng ngày hoạt động của tệp bó. Để thực hiện tất cả điều này, hãy tạo một thư mục trên ổ C (ví dụ) có tên LOG, tức là. đường dẫn đầy đủ đến nó sẽ có dạng C:\LOG. Chúng tôi sẽ chạy tệp bó 1.bat đã tạo bằng lệnh sau:

1.bat>C:\LOG\%date~-10%.txt

Nếu tệp bó sẽ được khởi chạy từ Trình lập lịch biểu, thì bạn cần chỉ định đường dẫn đầy đủ đến tệp bat. Hãy nhớ rằng nếu có khoảng trắng trong đường dẫn, bạn phải sử dụng dấu ngoặc kép hoặc định dạng 8.3. Nghĩa là, nếu đường dẫn đến tệp bat chẳng hạn là C:\Program Files\1.bat, thì trong dòng lệnh Scheduler để chạy tệp bat, bạn cần chỉ định một trong các dòng sau:

"C:\Program Files\1.bat">C:\LOG\%date~-10%.txt
C:\Progra~1\1.bat>C:\LOG\%date~-10%.txt

Sau khi chạy file 1.bat, một file sẽ được tạo trong thư mục C:\LOG có tên trùng với ngày file bat được khởi chạy, ví dụ: 13/01/2004.txt. Đây sẽ là một báo cáo về hoạt động của tệp bó 1.bat
Chạy tệp bat, một ví dụ được hiển thị trong danh sách đầu tiên ở đầu trang, sử dụng lệnh trên, sẽ dẫn đến việc tạo tệp nhật ký có nội dung sau:

Bắt đầu 19:03:27.20
Tạo test.txt
Sao chép Test.txt sang Old_test.txt
Các tập tin được sao chép: 1.
Dừng lại 19:03:27.21

Do đó, để chuyển hướng kết quả của tệp bat sang tệp nhật ký, bạn cần sử dụng biểu tượng chuyển hướng > Cú pháp như sau:

Đường dẫn\FileName.bat>Đường dẫn\LogFileName.txt

Phần mở rộng của tệp nhật ký có thể là bất cứ thứ gì. Nếu muốn, một báo cáo về việc thực hiện một công việc hàng loạt thậm chí có thể được định dạng dưới dạng một trang html (các thẻ tương ứng có thể được xuất ra tệp nhật ký giống như cách các nhận xét được xuất ra trong ví dụ 1.bat) và được sao chép vào một công ty máy chủ.

Cách tự động trả lời yêu cầu xác nhận

Một số lệnh yêu cầu xác nhận hành động nguy hiểm tiềm tàng khi được thực thi. Ví dụ: các lệnh như định dạng hoặc del trước tiên sẽ yêu cầu xác nhận trước khi thực hiện tiếp. Nếu một trong các lệnh này được thực thi trong một tệp bó, thì lời nhắc xác nhận sẽ dừng việc thực thi tệp bó đó và nó sẽ đợi người dùng chọn một trong các tùy chọn đã cho. Hơn nữa, nếu kết quả thực thi một tệp bó được chuyển hướng đến một tệp nhật ký, thì người dùng sẽ không thấy yêu cầu xác nhận và tệp bó sẽ xuất hiện bị đóng băng.

Để khắc phục những sự cố như vậy, bạn có thể chuyển hướng phản hồi mong muốn sang lệnh. Những thứ kia. thực hiện hành động ngược lại để chuyển hướng đầu ra của lệnh sang một tệp.
Hãy xem một ví dụ về yêu cầu xác nhận một hành động nguy hiểm tiềm tàng trông như thế nào. Ví dụ: hãy tạo một thư mục Thư mục trên ổ C. Hãy tạo hoặc sao chép hai tập tin bất kỳ vào đó. Tiếp theo, mở dòng lệnh và chạy lệnh sau:

Lệnh này sẽ xóa tất cả các tệp khỏi thư mục được chỉ định. Nhưng trước tiên bạn sẽ được nhắc xác nhận nội dung sau:

C:\Thư mục\*, Tiếp tục?

Việc thực thi lệnh sẽ dừng cho đến khi nhấn phím Y hoặc phím N. Khi thực hiện một tệp bó ở chế độ tự động, việc thực thi lệnh sẽ dừng lại.
Để tránh điều này, chúng tôi sử dụng chuyển hướng. Việc chuyển hướng được thực hiện bằng cách sử dụng ký hiệu
Đường thẳng đứng cho biết thay vì hiển thị ký hiệu trên màn hình thì nên “trao” lệnh theo sau ký hiệu đó. Hãy kiểm tra chuyển hướng. Chạy lệnh sau tại dòng lệnh:

echo Y|del C:\Thư mục

Màn hình sẽ hiển thị yêu cầu xác nhận xóa toàn bộ file trong thư mục Folder nhưng có câu trả lời là tích cực (Y). Tất cả các tập tin trong thư mục Thư mục sẽ bị xóa.
Hãy cẩn thận với lệnh này.

Cách tắt các lệnh được hiển thị khi thực thi một tệp bó

Khi thực thi một file batch, ngoài kết quả của lệnh, bản thân các lệnh cũng được hiển thị. Bạn có thể sử dụng ký hiệu @ để chặn đầu ra lệnh.
Để tránh in một lệnh lên màn hình, bạn có thể đặt dấu @ ở đầu lệnh.

Lệnh này sẽ hiển thị lệnh kiểm tra tiếng vang và trên dòng tiếp theo - kết quả hoạt động của nó, từ Kiểm tra.

Lệnh này sẽ chỉ hiển thị kết quả của lệnh, tức là. từ Thử nghiệm. Bản thân lệnh sẽ không được xuất ra.
Nếu bạn không cần hiển thị các lệnh trên màn hình trong suốt quá trình thực thi toàn bộ tệp, thì việc viết lệnh sau dưới dạng dòng đầu tiên trong tệp bó sẽ dễ dàng hơn:

Lệnh này sẽ vô hiệu hóa lệnh xuất ra màn hình trong suốt thời gian của toàn bộ tệp bó. Để ngăn lệnh được in, nó bắt đầu bằng ký hiệu @.

Cách chạy cái khác từ một tập tin bat

Đôi khi, trong khi thực thi một tệp bó, cần phải chạy một tệp bó khác. Hơn nữa, trong một số trường hợp, việc thực thi tệp bó chính phải bị tạm dừng trong khi tệp phụ được thực thi và trong những trường hợp khác, tệp phụ phải chạy song song với tệp chính.
Ví dụ: hãy tạo hai tệp bat. Một tên là 1.bat và chỉ chứa một lệnh

Cái thứ hai có tên là 2.bat và cũng chứa một lệnh

Bây giờ hãy chạy tệp 1.bat. Một cửa sổ sẽ mở ra, trong đó bạn sẽ được yêu cầu nhấn phím bất kỳ để tiếp tục, sau khi nhấn phím đó, cửa sổ sẽ đóng lại. Do đó, việc gọi tệp bó này sang tệp bó khác bằng lệnh gọi sẽ dừng việc thực thi tệp bó cho đến khi tệp bó được gọi bằng lệnh gọi hoàn tất quá trình thực thi.

Trong trường hợp khác, bạn cần khởi chạy một ứng dụng hoặc một tệp bó khác từ tệp bat mà không làm gián đoạn quá trình thực thi tệp bó chính. Điều này thường cần phải được thực hiện, chẳng hạn như bằng cách buộc mở nhật ký của một tệp bó được lên lịch vào ban đêm để vào buổi sáng, người dùng có thể kiểm tra tính chính xác của việc thực thi nó. Để thực hiện việc này, hãy sử dụng lệnh bắt đầu. Hãy sửa dòng trong tệp 1.bat thành

và chạy tệp 1.bat. Bây giờ một cửa sổ đã mở, trong đó bạn cần nhấn bất kỳ nút nào để tiếp tục và cửa sổ của tệp bó chính (1.bat) đã đóng.
Vì vậy, để gọi một tệp khác từ một tệp bó mà không dừng tệp bó đầu tiên, bạn cần sử dụng lệnh bắt đầu.
Các lệnh bắt đầu và gọi được thảo luận ở trên không chỉ có thể được sử dụng để khởi chạy các tệp bó khác mà còn để khởi chạy bất kỳ ứng dụng hoặc tệp đang mở nào.
Ví dụ: lệnh bắt đầu log.txt trong phần nội dung của tệp bó sẽ mở tệp log.txt trong Notepad mà không dừng tệp bó.

Cách gửi tin nhắn từ tập tin bat

Khi một tệp bó được thực thi trên một trong các máy trên mạng, sẽ rất thuận tiện để thông báo cho quản trị viên rằng việc thực thi tệp đó đã kết thúc bằng một tin nhắn được gửi đến máy của quản trị viên. Bạn có thể thực hiện việc này bằng cách đưa lệnh vào tệp bó

tên gửi mạng Nội dung tin nhắn

Trong đó tên là tên của máy hoặc người dùng nhận được tin nhắn và nội dung tin nhắn là nội dung của tin nhắn. Sau khi thực hiện lệnh này, một thông báo sẽ được gửi đến tên người dùng.
Xin lưu ý rằng khi sử dụng Cyrillic trong văn bản tin nhắn, văn bản phải được gõ theo bảng mã MS-DOS (trang mã 866). Nếu không, tin nhắn sẽ đến dưới dạng các ký tự không thể đọc được. Bạn có thể nhập văn bản bằng mã hóa DOS bằng bất kỳ trình soạn thảo văn bản nào hỗ trợ mã hóa này. Ví dụ, đây có thể là FAR. Mở một tệp bó để chỉnh sửa trong FAR (F4) và nhấn nút F8. Dòng trên cùng của trình soạn thảo phải biểu thị mã hóa DOS và ở dưới cùng, ở chú giải công cụ về các phím tắt, phím F8 phải có dòng chữ Win, cho biết mã hóa hiện tại là DOS và bạn cần chuyển sang mã hóa Win để nhấn F8.

Cách tự động xóa file theo loại

Để xóa các tệp tạm thời trên đĩa, bạn có thể sử dụng lệnh

del /f /s /q C:\*.tmp

Ở đâu
/f - xóa tất cả các tệp, ngay cả khi chúng có thuộc tính chỉ đọc
/s - xóa tập tin khỏi tất cả các thư mục con
/q - vô hiệu hóa yêu cầu xác nhận xóa tệp
C: là ổ đĩa chứa các tập tin sẽ được tìm thấy và xóa. Bạn có thể chỉ định không phải toàn bộ đĩa mà là một thư mục, ví dụ: C:\WinNT
*.tmp - loại tệp sẽ bị xóa

Hãy cẩn thận với khóa chuyển /q và các loại tệp bạn xóa. Lệnh xóa mà không xin phép và nếu chỉ định sai loại tệp, nó có thể xóa các tệp không cần thiết.

Cách thay đổi địa chỉ IP của máy tính từ một tệp bó

Địa chỉ IP có thể được thay đổi bằng lệnh Netsh.
Để thay đổi chính xác địa chỉ IP, trước tiên bạn cần tìm hiểu cấu hình hiện tại. Điều này có thể được thực hiện trên dòng lệnh bằng lệnh

địa chỉ hiển thị ip giao diện Netsh

Kết quả của lệnh này là hiển thị cấu hình hiện tại của giao diện mạng. Chúng tôi quan tâm đến tên của giao diện. Giả sử nó được gọi là FASTNET.
Giả sử bạn cần thay đổi địa chỉ IP thành 192.168.1.42, địa chỉ mạng là tĩnh, không sử dụng DHCP, cổng vào là 192.168.1.1, mặt nạ là 255.255.255.0. Trong trường hợp này, lệnh phải được thực thi từ đó. tệp bó sẽ trông như thế này:

giao diện netsh ip đặt tên địa chỉ = "FASTNET" tĩnh 192.168.1.42 255.255.255.0 192.169.1.1 1

Sau khi thực hiện lệnh này, địa chỉ IP của giao diện FASTNET sẽ thay đổi thành 192.168.1.42.
Lệnh netsh cung cấp khả năng mở rộng để quản lý cài đặt mạng từ dòng lệnh. Để biết các chức năng khác, hãy xem trợ giúp sử dụng Netsh /?

Cách tìm ra tên máy tính từ tập tin bat

Để tìm ra tên máy tính khi thực thi tệp bat (để sử dụng giá trị này trong tương lai), hãy sử dụng lệnh

Lệnh này trả về tên của máy tính mà nó đang chạy.

Cách đổi tên tệp theo mặt nạ từ tệp bó

Đôi khi cần phải đổi tên tất cả các tệp trong một thư mục bằng cách sử dụng mẫu từ tệp bó. Điều này có thể được thực hiện bằng lệnh sau trong tệp bat:

for /f "tokens=*" %%a in ("dir /b PATH\*.*") do ren PATH\%%a Tiền tố%%a

Trong dòng này, bạn cần thay thế PATH\ bằng đường dẫn đến các tệp sẽ được đổi tên và Tiền tố bằng các ký tự sẽ được thêm vào tên tệp khi đổi tên.
Đừng đặt tệp bó vào thư mục nơi việc đổi tên đang diễn ra, nếu không nó cũng sẽ bị đổi tên. Nếu có các thư mục con trong thư mục nơi các tệp được đổi tên thì tiền tố cũng sẽ được thêm vào tên của thư mục con, tức là. các thư mục con sẽ được đổi tên giống như các tập tin.
Nếu bạn chỉ định một mặt nạ cụ thể cho các loại tệp có thể đổi tên, ví dụ: *.txt chứ không phải *.* như trong ví dụ, thì chỉ các tệp thuộc loại được chỉ định mới được đổi tên. Các tập tin và thư mục khác sẽ không được đổi tên.

Sự lựa chọn thứ hai:
đặt thePATH=C:\test
đối với %%I trong (*.txt) do ren "%thePATH%\%%~nxI" "%%~nI.dat"
Cách sử dụng ký hiệu phần trăm trong một tệp bó

Để sử dụng ký hiệu phần trăm (%) trong tệp bó, bạn phải viết nó hai lần. Ví dụ
tiếng vang 50%%
Lệnh này trong file bat sẽ hiển thị 50%. Nếu bạn sử dụng lệnh echo 50% thì trên màn hình chỉ hiển thị số 50.
Hãy tính đến tính năng này khi sử dụng ký hiệu % khi ghi tệp bó.

Cách xuất sổ đăng ký từ một tệp bó

regedit.exe -ea C:\environment.reg "HKEY_CURRENT_USER\Environment"

Lệnh này khi thực thi một tập tin batch sẽ đổ nhánh HKEY_CURRENT_USER\Environment vào tệp C:\environment.reg. Khi bạn cần khôi phục các giá trị tham số trong HKEY_CURRENT_USER\Environment thì chỉ cần chạy môi trường.reg là đủ tài liệu. Lệnh này có thể được sử dụng để tạo bản sao lưu hàng ngày các cài đặt hệ thống và phần mềm được lưu trữ trong sổ đăng ký.
Đừng quên rằng nếu có khoảng trống trong đường dẫn nơi lưu tệp đầu ra hoặc trong tên của tổ chức đăng ký, chúng phải được đặt trong dấu ngoặc kép.

Cách nhập giá trị biến đăng ký từ một tệp bó

Nếu có nhu cầu nhập các giá trị biến đã lưu trước đó hoặc biến mới vào sổ đăng ký từ một tệp bó, việc này có thể được thực hiện bằng lệnh

regedit.exe -s C:\environment.reg

Lệnh này nhập dữ liệu từ tệp môi trường.reg vào sổ đăng ký mà không yêu cầu xác nhận bằng cách sử dụng khóa chuyển -s.

Cách bỏ qua việc kiểm tra ngày từ tệp bat

Một số phần mềm kiểm tra ngày hệ thống hiện tại khi khởi động. Nếu ngày lớn hơn ngày do nhà phát triển đặt thì chương trình sẽ không bắt đầu. Ví dụ: nhà phát triển tin rằng phiên bản của chương trình có thể hoạt động trong một tháng và sau đó người dùng sẽ phải cài đặt phiên bản cập nhật của chương trình. Một mặt, đây là mối lo ngại đối với người dùng, những người sẽ có sẵn phiên bản mới nhất của chương trình với những thiếu sót đã được loại bỏ so với các phiên bản trước. Mặt khác, nhà sản xuất buộc người dùng phải tải xuống phiên bản mới ngay cả khi người dùng hoàn toàn hài lòng với phiên bản chương trình mà mình đã cài đặt. Vấn đề này có thể được giải quyết dễ dàng bằng cách sử dụng tệp bó sau, tệp này sẽ chạy chương trình, đợi chương trình hoàn tất và trả về ngày trước khi chương trình được khởi chạy.

đặt tempdate=%date:~-10%
ngày 01-01-04
notepad.exe
ngày %tempdate%

Trong ví dụ này, ngày hệ thống hiện tại trước tiên được lưu trữ trong một biến, sau đó (ở dòng thứ hai) ngày hệ thống được đặt thành ngày 1 tháng 1 năm 2004 và sau đó một chương trình được gọi để kiểm tra ngày hệ thống. Trong ví dụ này là Notepad. Miễn là Notepad được mở, tệp bó sẽ chờ mà không hoàn thành hoặc đặt lại ngày hệ thống. Khi Notepad được đóng, tệp bó sẽ tiếp tục thực thi và đặt ngày hệ thống thành giá trị được lưu trong biến tempdate, tức là. đến cái trước khi chạy tệp bó.

Đừng quên rằng nếu đường dẫn đến tệp chạy chương trình chứa khoảng trắng thì nó (đường dẫn) phải được đặt trong dấu ngoặc kép. Nếu đường dẫn chứa Cyrillic thì khi viết một tệp bó, bạn phải sử dụng trình soạn thảo văn bản hỗ trợ mã hóa DOS (ví dụ: FAR). Nếu không, khi bạn chạy tệp bó, một thông báo sẽ được hiển thị cho biết “tệp được chỉ định không phải là lệnh nội bộ hoặc bên ngoài…”.

Nếu một chương trình chỉ kiểm tra ngày hệ thống hiện tại khi nó khởi động và không thực hiện lại việc này trong khi hoạt động thì tệp bó có thể được sửa đổi bằng cách thêm câu lệnh bắt đầu trước tên tệp thực thi của chương trình, tức là. ví dụ của chúng tôi sẽ trông như thế này:

đặt tempdate=%date:~-10%
ngày 01-01-04
khởi động notepad.exe
ngày %tempdate%

Trong trường hợp này, tệp bó sẽ thay đổi ngày hệ thống, khởi chạy chương trình và không đợi nó hoàn thành, trả lại ngày về ngày trước khi chương trình được khởi chạy.

Cách đợi một tệp cụ thể xuất hiện trong tệp bat

Đôi khi cần phải thực hiện một số hành động khi một tệp nào đó xuất hiện trong một thư mục. Để tổ chức kiểm tra sự xuất hiện của tệp trong thư mục, bạn có thể sử dụng tệp bó sau

:Bài kiểm tra
nếu tồn tại c:\1.txt hãy đi
ngủ 10
đi kiểm tra
:đi
sổ tay

Một tệp bó như vậy sẽ kiểm tra sự hiện diện của tệp 1.txt trong thư mục gốc của ổ C trong khoảng thời gian 10 giây và khi tệp 1.txt xuất hiện, hành động được chỉ định sau nhãn go sẽ được thực hiện, tức là. ví dụ này sẽ khởi chạy Notepad.
Tiện ích giấc ngủ được phân phối miễn phí như một phần của Bộ tài nguyên. Bạn có thể tải nó ở đây.
Nếu tệp 1.txt lớn và đang được sao chép từ đâu đó, có thể xảy ra trường hợp tệp bó sẽ kiểm tra sự hiện diện của nó trong khi tệp vẫn chưa được sao chép hoặc đang bận với một ứng dụng khác. Trong trường hợp này, việc cố gắng thực hiện một số thao tác với tệp 1.txt sẽ gây ra lỗi. Để ngăn điều này xảy ra, tệp bó có thể được sửa đổi như sau

:Bài kiểm tra
nếu tồn tại c:\1.txt hãy đi
ngủ 10
đi kiểm tra
:đi
đổi tên c:\1.txt 1.txt
nếu không phải lỗi cấp 0 thì hãy đi
del c:\1.txt

Khi tệp 1.txt chưa được sao chép hoàn toàn sang ổ C hoặc bị ứng dụng khác chiếm giữ, việc cố gắng đổi tên tệp sẽ gây ra lỗi và chu trình sẽ được lặp lại cho đến khi tệp được sao chép hoàn toàn hoặc được giải phóng. Sau khi lệnh đổi tên c:\1.txt 1.txt được thực thi mà không gặp lỗi (tức là tệp miễn phí), bạn có thể thực hiện bất kỳ hành động nào với nó. Trong ví dụ cuối cùng nó đang loại bỏ nó.

Cách thêm nhận xét vào tập tin bat

Khi viết một tập tin batch lớn, việc thêm chú thích vào các khối chính của nó là rất hữu ích. Điều này sẽ giúp bạn dễ dàng hiểu được những khối này hoạt động như thế nào theo thời gian.

Bất cứ ai cũng có thể viết tập tin bat!

Bộ xử lý lệnh

Nhiều hệ điều hành, bao gồm cả những hệ điều hành do Microsoft phát triển, có bộ xử lý lệnh. Đây là tên của một chương trình bắt đầu thực hiện các hành động khác nhau để đáp lại các lệnh do người dùng nhập từ bàn phím. Về cơ bản, những hành động này bao gồm khởi chạy các chương trình cần thiết với các thông số nhất định. Nhưng không chỉ; Sau này chúng ta sẽ thấy rằng một số lệnh được thực thi trực tiếp bởi bộ xử lý lệnh. Về cơ bản, đây là các lệnh dùng để kiểm soát bối cảnh và trình tự thực hiện lệnh. Tuy nhiên, chúng ta sẽ không suy nghĩ quá sâu về bản chất của các lệnh, ít nhất là trừ khi chúng ta phải làm vậy. Quan trọng hơn, bất kỳ chương trình nào về mặt kỹ thuật có thể chạy từ dòng lệnh đều được bộ xử lý lệnh coi là một lệnh. Nó không phân biệt giữa các lệnh gốc được tích hợp ban đầu trong hệ điều hành và các chương trình được cài đặt trên nó.

Để khởi động bộ xử lý lệnh:

    Nhấn nút Bắt đầu. Menu chính sẽ được hiển thị trên màn hình.

    Chọn Chạy từ menu chính. Một hộp thoại sẽ xuất hiện trên màn hình Bắt đầu chương trình.

    Trong trường Mở, nhập chuỗi cmd.

    Nhấn nút ĐƯỢC RỒI. Một cửa sổ bộ xử lý lệnh sẽ xuất hiện trên màn hình.

Dòng lệnh và lệnh

Cửa sổ bộ xử lý lệnh ở dạng ban đầu trông ảm đạm và không thuận tiện cho hầu hết mọi người khi làm việc. Việc sử dụng trình quản lý tệp kiểu Norton Commander sẽ dễ dàng hơn nhiều. Chúng cung cấp cả hai công cụ để điều hướng nhanh hệ thống tệp và tính thời gian để nhập lệnh.

Để nhập lệnh:

    Gõ văn bản lệnh tại dòng lệnh.

    cắm chìa khóa Đi vào.

Các lệnh của bộ xử lý lệnh và hệ điều hành được mô tả trong tài liệu vận hành cho phần sau. Tài liệu này được chứa một phần trong chính hệ điều hành. Để truy cập nó sử dụng lệnh giúp đỡ. Lệnh này hiển thị danh sách các lệnh có sẵn. Để có được mô tả về một lệnh cụ thể, hãy sử dụng lệnh đó làm tham số giúp đỡ tên của cô ấy nên được chỉ định. Dòng lệnh hiển thị trong danh sách sau đây hiển thị mô tả về lệnh .

Nếu bạn cố gắng nhập lệnh giúp đỡ, bạn có thể nhận thấy rằng kết quả công việc của nó (cái gọi là đầu ra) không vừa trên một màn hình. Vấn đề tương tự xảy ra với văn bản mô tả lệnh . Tin vui là đầu ra có thể được chuyển hướng đến một tệp. Dòng lệnh hiển thị trong danh sách sau sẽ tạo ra tệp lệnh.txt, chứa danh sách tất cả các lệnh MS-DOS.

trợ giúp > command.txt

Để tạo một tệp có mô tả lệnh , bạn cần đưa ra lệnh sau (bạn có thể đặt tên tệp đầu ra bất cứ thứ gì).

trợ giúp cho > for.txt

Tổng cộng, có ít hơn 80 lệnh trong các hệ điều hành hiện đại của Microsoft và không thể mô tả chúng trong một bài viết. Ở đây chúng ta chỉ có thể đề cập đến một số lệnh hữu ích để tự động xử lý tệp và chỉ ra cách sử dụng chúng. Các lệnh này sẽ được sử dụng trong các ví dụ tiếp theo. Bạn luôn có thể làm rõ chi tiết bằng lệnh giúp đỡ hoặc trong thư mục.

sao chép- sao chép một hoặc nhiều tập tin;

del- xóa một hoặc nhiều tập tin;

di chuyển- di chuyển một hoặc nhiều tập tin hoặc thư mục;

đổi tên(viết tắt ren) - đổi tên một hoặc nhiều tệp hoặc thư mục;

xcopy- sao chép cây thư mục con;

mkdir(viết tắt md) - tạo một thư mục;

rmdir(viết tắt thứ) - xóa một thư mục.

Một trong những quy tắc chung của cú pháp lệnh MS-DOS là khi chỉ định tham số, nguồn được chỉ định trước, sau đó là kết quả. Ví dụ: nếu chúng ta muốn di chuyển một tập tin bia.txt từ danh mục hộp vào danh mục bàn, chúng ta phải nhập lệnh được đưa ra trong danh sách sau.

di chuyển bảng\bia.txt

Đầu tiên là chuyển cái gì, sau đó chuyển đến đâu.

Nếu chúng ta muốn đổi tên tập tin lena.txt nộp natasha.txt, thì lệnh sẽ được viết như dưới đây.

ren lena.txt natasha.txt

Đầu tiên là đổi tên cái gì, sau đó đổi tên cái gì.

Thư mục hiện tại. Đường dẫn tuyệt đối và tương đối

Khi làm việc với các lệnh tập tin, khái niệm về thư mục hiện tại trở nên cực kỳ quan trọng. Vấn đề là khi chỉ định một tệp làm tham số lệnh, chúng tôi luôn sử dụng một trong hai cách có thể để trỏ đến chúng: đường dẫn tuyệt đối hoặc đường dẫn tương đối. Trong đường dẫn đầy đủ, chúng tôi chỉ định mọi thứ bắt đầu bằng ổ đĩa (hoặc tên mạng của máy tính), ví dụ: d:\misha\box\bia.txt. Bất kể thư mục nào hiện tại khi lệnh được nhập, đường dẫn đầy đủ sẽ tương ứng với cùng một tệp. Đối với đường dẫn tương đối, thư mục hiện tại đóng vai trò là điểm bắt đầu. Trường hợp đơn giản nhất của đường dẫn tương đối là tên tệp. Trong ngữ cảnh thực thi lệnh, nó có nghĩa là một tệp có tên đó nằm trong thư mục hiện tại.

Để ghi lại đường dẫn tương đối đến thư mục hiện tại, có một ký hiệu có điều kiện . (chấm). Để ghi đường dẫn tương đối tới thư mục chứa thư mục hiện tại có ký hiệu điều kiện .. (hai dấu chấm). Lệnh hiển thị trong danh sách sau đây sao chép tất cả các tệp từ thư mục hiện tại vào thư mục hàng xóm, nằm bên cạnh nó.

sao chép *.* .\neighbor

Tập tin hàng loạt

Cho đến bây giờ, khi đưa ra ví dụ, chúng tôi giả định rằng chúng tôi luôn nhập lệnh theo cách thủ công. Khi xử lý một số lượng lớn tệp hoặc thực hiện các lệnh giống nhau một cách có hệ thống, điều này sẽ trở nên cồng kềnh. Do đó, bộ xử lý lệnh cung cấp khả năng thực thi các tệp lệnh. Tệp bó là một tệp văn bản trong đó các lệnh (hoặc ít nhất một lệnh) được nhập. Một tệp bó ví dụ được hiển thị trong danh sách sau đây. Hãy thử đoán xem tập tin batch này làm gì.

trợ giúp sao chép > copy.help

giúp di chuyển > di chuyển.help

di chuyển *.help msdos-help

Nếu mục đích của tệp này vẫn còn là một bí ẩn đối với bạn, thì hãy thử tạo và thực thi nó. Thông thường, người ta thường cung cấp phần mở rộng cho các tệp lệnh con dơi. Đây là cách các tệp thuộc loại này được bộ xử lý lệnh nhận dạng. Ví dụ, tập tin này có thể được gọi là make-help.bat.

Để chạy tệp bó:

    Nhập tên của anh ấy như một lệnh. Sau đó, tập tin batch sẽ được thực thi.

Trong một tập tin batch, mỗi lệnh chiếm một dòng. Chính xác hơn, có cách đặt một lệnh trên nhiều dòng liên tiếp; để làm được điều này, ngay trước mỗi lần ngắt dòng bạn nên đặt ký hiệu “cap” ^ . (Mỗi chữ hoa phải là ký tự cuối cùng trên dòng của nó; không được có dấu cách hoặc tab sau nó.) Một ví dụ về lệnh như vậy được hiển thị trong danh sách sau đây.

nếu tồn tại disser.txt ^

sao chép disser.txt ^

d:\science\papers\drafts\sources

Nhưng để đơn giản, để không phải lúc nào cũng đặt chỗ trước, chúng ta sẽ giả định rằng theo một nghĩa nào đó đây là một dòng dài “hợp lý”.

Khi một tệp bó được thực thi, bộ xử lý lệnh sẽ quét nó từ trên xuống dưới từ dòng đầu tiên đến dòng cuối cùng và thực thi các lệnh theo thứ tự mà nó gặp chúng. Nói chung, nó thực hiện chúng như thể chúng ta nhập từng cái một cách thủ công. Nói chung, vì một số lệnh hoạt động hơi khác khi được nhập thủ công và khi được thực thi từ tệp bó.

Nhìn về phía trước, giả sử rằng, nếu cần, trình tự thực hiện lệnh có thể được thay đổi bằng các lệnh điều khiển (điều gì có thể gây ra nhu cầu như vậy là một câu hỏi riêng).

Đừng nhầm lẫn thư mục hiện tại với thư mục chứa tệp bó sẽ được khởi chạy. Giả sử thư mục hiện tại là công việc, nó chứa một thư mục công cụ và thư mục công cụ lưu trữ các tệp bó. Bạn chạy một trong số chúng bằng lệnh công cụ\collect-image.bat. Vì vậy, “theo quan điểm” của tập tin lệnh này, thư mục hiện tại sẽ vẫn là công việc, nhưng không công cụ.

Nhận xét tệp bó và đầu ra của nó. lệnh echo và rem

Tệp bó về cơ bản là một chương trình được viết bằng ngôn ngữ bộ xử lý lệnh của hệ điều hành. Văn bản của chương trình phải có kèm theo các nhận xét để khi bạn xem lại nó một thời gian sau, bạn không phải đau đầu nhớ lại lý do tại sao chương trình này lại cần thiết và cách thức hoạt động của nó.

Hệ thống lệnh MS-DOS cung cấp lệnh tạo bình luận: rem. Đây là một lệnh giả không liên quan đến việc thực hiện bất kỳ hành động nào nhưng cho phép bạn viết văn bản tùy ý trên dòng sau tên của bạn. Hơn nữa, bộ xử lý lệnh không coi đó là lỗi cú pháp. Một ví dụ về định dạng tệp lệnh có nhận xét được hiển thị trong danh sách sau.

rem **************************************************** ****

rem Tạo tập tin trợ giúp

trợ giúp sao chép > copy.help

giúp di chuyển > di chuyển.help

di chuyển *.help msdos-help

Lưu ý các dòng trống chia tệp bó thành các “đoạn”. Thủ thuật đơn giản này cho phép bạn làm cho tệp bó của mình dễ đọc hơn.

Khi thực thi tệp bó trên, tất cả các lệnh sẽ được hiển thị trên màn hình khi chúng được thực thi, điều này không phải lúc nào cũng thuận tiện. Việc phát lệnh có thể bị vô hiệu hóa bằng lệnh @echo tắt. Biểu tượng "con chó" ở phía trước lệnh tiếng vọngĐiều này có nghĩa là lệnh này phải được thực thi ở chế độ “im lặng”. Chúng ta có thể không sử dụng dòng lệnh tắt tiếng vang, nhưng hãy đặt một “con chó” trước mỗi lệnh.

Trong nhiều trường hợp, bạn muốn một tệp bó hiển thị một số thông báo nhất định trên màn hình (hoặc trong một tệp). Trong một số trường hợp, đây có thể là thông báo lỗi, trong một số trường hợp khác, đây là thông báo thông tin giải thích cho người dùng tệp bó về những gì đang xảy ra vào lúc này, khi chúng tôi tạo một số tệp hữu ích khác bằng tệp bó. Lệnh echo tương tự được sử dụng để hiển thị tin nhắn. Văn bản của thông báo sẽ được hiển thị sẽ được chuyển đến nó dưới dạng tham số. Danh sách các tệp bó được cải tiến được đưa ra dưới đây.

rem **************************************************** ****

rem Tạo tập tin trợ giúp cho lệnh sao chép và di chuyển

rem **************************************************** ****

@echo Đang tạo tệp trợ giúp. Một giây...

rem Tạo tập tin trợ giúp

trợ giúp sao chép > copy.help

giúp di chuyển > di chuyển.help

rem Tạo thư mục lưu trữ file trợ giúp

rem Di chuyển các tập tin trợ giúp vào thư mục đã chuẩn bị

di chuyển *.help msdos-help

tiếng vang Xong!

Truyền tham số vào tệp lệnh

Giả sử chúng ta muốn tạo một tệp bó trước tiên tạo trợ giúp mô tả lệnh do người dùng chỉ định, sau đó tải nó vào Notepad để xem. Bí quyết là bằng cách nào đó hãy cho nó biết vào lần tiếp theo khi chúng ta chạy tệp bó lệnh mà chúng ta quan tâm lần này.

Để giải quyết vấn đề này, một cơ chế xử lý tham số được cung cấp. Nó hoạt động khá đơn giản. Nếu, khi chạy một tệp bó, người dùng đã chỉ định một số tham số, thì trong văn bản của tệp bó, chúng tôi biểu thị tham số đầu tiên trong số chúng bằng mục nhập %1 , mục thứ hai %2 , mục thứ ba %3 vân vân. Chúng tôi sử dụng các ký hiệu này trong văn bản của tệp lệnh giống như cách chúng tôi sử dụng đại từ trong lời nói tự nhiên.

Nội dung của tệp lệnh giải quyết vấn đề được hiển thị trong danh sách sau. Hãy chú ý đến lệnh giúp đỡ. Tham số đầu tiên của tệp lệnh được truyền cho nó dưới dạng tham số của nó.

rem Chúng tôi tạo một tệp có mô tả lệnh,

rem có tên được truyền dưới dạng tham số

trợ giúp %1 > help.tmp

rem Tải tệp mô tả vào trình soạn thảo Notepad

trợ giúp notepad.tmp

Giả sử chúng ta đặt tên cho tệp bó này show-help.bat. Ví dụ: để tải mô tả lệnh vào sổ ghi chú, thư mục, chúng ta phải nhập lệnh như sau.

thư mục show-help.bat

Tệp lệnh sau tạo một thư mục có tên được chỉ định trong tham số đầu tiên và ghi vào đó một tệp chứa văn bản mô tả lệnh được chỉ định trong tham số thứ hai.

rem Ví dụ về tệp lệnh có hai tham số

rem Tạo một thư mục có tên được chỉ định bởi tham số đầu tiên

rem Tạo một tệp trong đó có mô tả lệnh,

rem được chỉ định bởi tham số thứ hai

trợ giúp %2 > %1\%2.help

Điều gì xảy ra nếu người dùng chỉ định bốn tham số thay vì hai tham số khi chạy tệp bó này? Không sao đâu, chúng sẽ không can thiệp vào bất cứ điều gì, chỉ là chúng sẽ không được sử dụng thôi. Điều gì xảy ra nếu người dùng chỉ chỉ định tham số đầu tiên? Tham số thứ hai sẽ trống. Hiệu ứng sẽ như sau: tệp bó sẽ được thực thi, nhưng như thể thay cho bản ghi %2 không có gì. Lệnh trợ giúp sẽ tạo danh sách tất cả các lệnh và đặt nó vào một tệp có tên trống và phần mở rộng .help. Nếu người dùng chạy tệp này mà không chỉ định bất kỳ tham số nào thì khi bộ xử lý lệnh cố gắng thực thi lệnh md(hãy nhớ rằng đây là để tạo thư mục), chúng ta sẽ gặp lỗi cú pháp vì lệnh md phải có tham số.

Vì vậy, việc sử dụng các tham số tạo ra những cơ hội lớn nhưng có thể làm phức tạp đáng kể vấn đề. Để tệp bó luôn hoạt động chính xác, cần kiểm tra tính chính xác của các tham số do người dùng chỉ định và bằng cách nào đó phản hồi với dữ liệu đầu vào không đầy đủ hoặc không chính xác. Tất nhiên, bạn không thể làm điều này, nhưng một tệp bó hoạt động không chính xác có thể gây ra sự cố, đặc biệt nếu nó liên quan đến việc xóa hoặc ghi đè dữ liệu.

Biến. đặt lệnh

Một biến là một giá trị được đặt tên. Trong sách giáo khoa lập trình, một biến thường được so sánh với một phong bì có ghi tên trên đó. Bạn có thể đặt một thứ gì đó bên trong phong bì, chẳng hạn như một số tiền nhất định - đây là giá trị của nó. Giống như phong bì, giá trị của biến có thể được thay đổi.

Để khai báo một biến và đồng thời gán giá trị cho nó, hãy sử dụng lệnh bộ. Một ví dụ về lệnh này được hiển thị trong danh sách sau đây.

Để trích xuất giá trị của một biến, tên của nó được đặt giữa hai dấu phần trăm, như minh họa bên dưới.

rem Trình biên dịch các tệp trợ giúp ở định dạng CHM

đặt help_compiler=c:\Hội thảo trợ giúp HTML\hcc.exe

rem Tệp trợ giúp dự án cho mô-đun "Kho"

đặt store_hpj=help\sources\store\store.hpj

rem Tệp trợ giúp dự án cho mô-đun "Bán hàng"

đặt sales_hpj=help\sources\sale\sale.hpj

rem Biên dịch tập tin trợ giúp

%help_compiler% %store_hpj%

%help_compiler% %sale_hpj%

Danh sách sau đây cho thấy tại sao các biến lại hữu ích.

Đầu tiên, chúng cho phép bạn sử dụng một đoạn ngắn đồng nghĩa với nó bên trong một tệp bó thay vì một đoạn dài (ví dụ: đường dẫn đến trình biên dịch tệp trợ giúp). Ít nhất thì nó cũng thuận tiện.

Thứ hai, chúng cho phép bạn tránh lặp lại các đoạn văn bản của tệp lệnh có thể thay đổi trong tương lai. Hãy tưởng tượng rằng chúng tôi đã cài đặt lại Microsoft HTML Workshop vào một thư mục khác. Nếu một biến được sử dụng trong một tệp bó để ghi lại đường dẫn đến nó, thì chỉ cần sửa một dòng trong tệp bó, cụ thể là dòng trong đó giá trị của biến được gán là đủ trình biên dịch trợ giúp. Nếu chúng ta viết đường dẫn đến trình biên dịch mỗi khi nó cần được gọi, thì sau khi thay đổi đường dẫn, chúng ta sẽ phải sửa từng dòng như vậy. Trong ví dụ trên có hai tệp, nhưng trong một dự án thực tế có thể dễ dàng có năm hoặc mười lăm tệp, tùy thuộc vào số lượng tệp trợ giúp mà chúng ta muốn biên dịch. Vấn đề không phải là việc sửa thủ công từng dòng là khó (xét cho cùng thì chưa có ai hủy lệnh “sao chép” và “dán”) mà là điều này làm tăng đáng kể khả năng xảy ra lỗi vô tình.

Các tham số của tệp bó cũng là các biến, nhưng chúng khác với các biến thông thường ở chỗ giá trị của chúng được đặt khi tệp bó được khởi chạy. Trong tương lai, khi nói về các biến, đặc biệt là về cách làm việc với các giá trị của chúng, chúng ta cũng muốn nói đến các tham số của tệp lệnh, ít nhất là trong trường hợp không có sự bảo lưu rõ ràng về điều này.

Khi ghi các tệp bó, kỹ thuật sau thường được sử dụng: một số giá trị biến được chỉ định cạnh nhau (hoặc xen kẽ với một số ký hiệu hoặc dòng), để thu được một số giá trị có ý nghĩa mới. Một ví dụ được hiển thị trong danh sách sau đây.

Kiểm tra các điều kiện và lựa chọn các phương án. lệnh if và goto

Lệnh if cho phép bạn chọn các nhóm lệnh trong một tệp bó được thực thi hoặc không được thực thi tùy thuộc vào các điều kiện nhất định. Nó dùng để làm gì?

Kiểm tra điều kiện gần như là một bước cần thiết khi tạo file batch sử dụng tham số. Trước khi bắt đầu công việc, tệp bó thường cần đảm bảo rằng bộ tham số chính xác được truyền cho nó. Nếu không, có nguy cơ cao là nó sẽ được thực thi không chính xác hoặc không có kết quả và người dùng sẽ chỉ thắc mắc vấn đề là gì. Hơn nữa, nếu một tập tin batch xóa, di chuyển hoặc ghi đè bất kỳ dữ liệu nào, nó thậm chí có thể gây ra thiệt hại nếu tham số không chính xác.

Danh sách sau đây hiển thị tệp lệnh biên dịch tệp trợ giúp mà bạn đã quen thuộc. Việc kiểm tra tính không trống của tham số đầu tiên đã được thêm vào phần đầu của tệp lệnh. Xin lưu ý đặc điểm cú pháp này: thao tác so sánh sử dụng dấu bằng kép. Nếu tham số đầu tiên không trống, lệnh goto sẽ được thực thi, lệnh này sẽ ném shell vào nhãn đã chỉ định. Trong trường hợp này, tên của nhãn này là biên dịch. Lưu ý rằng khi nhãn xuất hiện, tên của nó được đặt trước dấu hai chấm, nhưng trong lệnh goto thì không. Nếu tham số đầu tiên trống, shell sẽ chuyển sang dòng tiếp theo và tạo ra thông báo lỗi. Và sau đó đến cái tiếp theo, chuyển nó đến cuối tập tin thành một nhãn có tên hoàn thành.

nếu không "%1"=="" hãy biên dịch

rem Nếu tham số trống, chúng tôi hiển thị thông báo lỗi

echo Tên dự án tệp trợ giúp không được chỉ định

rem và đi đến cuối tập tin batch

rem để hoàn thành điểm

rem Đây là nhãn có tên là biên dịch

rem Dưới đây là các lệnh biên dịch

rem Đường dẫn tới trình biên dịch tập tin trợ giúp

đặt help_compiler="c:\Program Files\HTML Help Workshop\hhc.exe"

rem Đường dẫn đến thư mục chứa các dự án tệp trợ giúp

đặt project_path=e:\work\projects\help-projects

rem Gọi trình biên dịch để xử lý một dự án cụ thể,

rem có tên được truyền vào tham số đầu tiên

%help_compiler% %project_path%\%1.hpj

rem Đây là nhãn có tên là kết thúc

Hãy đối mặt với nó, phương pháp kiểm tra tham số được đề xuất không phải là phương pháp thành công nhất.

Đầu tiên, nếu người dùng chỉ định nhầm tên của một tệp không tồn tại làm tham số, tệp bó sẽ hài lòng với điều này và cố gắng biên dịch. Một cách chính xác hơn là kiểm tra xem một tập tin như vậy có thực sự tồn tại hay không. Với mục đích này, ngôn ngữ lệnh MS-DOS cung cấp một từ đặc biệt hiện hữu. Vì vậy sẽ tốt hơn nếu viết: nếu tồn tại %1.hpj hãy biên dịch.

Thứ hai, sử dụng tích cực lệnh đi đến(cái gọi là bước nhảy vô điều kiện) và các nhãn gây nhầm lẫn lớn cho mã. Về mặt kỹ thuật, chúng không tệ, nhưng việc gỡ lỗi và duy trì một tệp bó được viết theo phong cách này khá bất tiện. Vì vậy, các lập trình viên từ lâu đã coi việc nhảy vô điều kiện là một kỹ thuật không mong muốn. Dưới đây được trình bày chính xác hơn, từ quan điểm của phong cách lập trình, phiên bản có cấu trúc, sử dụng cấu trúc nếu khác. Nó hoạt động như thế này: nếu điều kiện đúng, các lệnh trong ngoặc đơn sau nếu như, và nếu sai thì trong ngoặc đơn sau khác.

rem Kiểm tra xem tham số đã được đặt chưa

nếu không tồn tại %1.hpj (

rem Đường dẫn tới trình biên dịch tập tin trợ giúp

đặt help_compiler="c:\Program Files\HTML Help Workshop\hhc.exe"

rem Đường dẫn đến thư mục chứa các dự án tệp trợ giúp

đặt project_path=e:\work\projects\help-projects

rem Gọi trình biên dịch để xử lý một dự án cụ thể,

%help_compiler% %project_path%\%1.hpj

Hãy đưa ra một ví dụ khác về cách làm việc với séc. Tệp bó sau đây tạo một thư mục có tên tập tin trợ giúp(giả sử tải các tệp trợ giúp đã biên dịch lên đó). Hơn nữa, nếu một thư mục có cùng tên đã tồn tại (và nó có thể chứa các tệp trợ giúp cũ mà bạn không muốn mất: điều gì sẽ xảy ra nếu các tệp mới trở nên tệ hơn?), tệp bó sẽ gán phần mở rộng bak cho nó . Nhưng nếu thư mục help-files.bakđã tồn tại thì tệp bó sẽ xóa nó (chúng tôi sẽ cho rằng một bản sao lưu là đủ cho chúng tôi).

nếu tồn tại help-files.bak rd help-files.bak

nếu tồn tại tệp trợ giúp ren tệp trợ giúp help-files.bak

Xử lý tập tin hàng loạt. cho lệnh

Lệnh for cho phép bạn tổ chức thực hiện các hành động lặp lại cùng loại. Bạn có thể sử dụng nó để hiển thị các số từ một đến mười, như trong danh sách sau.

for /l %%i in (1,1,10) thực hiện echo %%i

Biến đổi Tôiđược gọi là bộ đếm vòng lặp. Do cú pháp độc đáo của lệnh , tên của bộ đếm vòng lặp phải bao gồm một chữ cái. Hơn nữa, nếu chúng ta đang viết một tệp bó, thì chúng ta cần đặt một dấu phần trăm kép trước tên của bộ đếm vòng lặp, nhưng nếu chúng ta chỉ gõ một lệnh trên dòng lệnh thì một lệnh duy nhất.

Logic của lệnh này như sau. Sau lời nói TRONG phạm vi thay đổi của bộ đếm chu kỳ được chỉ định. Trong phiên bản lệnh này, đây là bộ ba số: giá trị ban đầu của bộ đếm, bước đếm, giá trị giới hạn của bộ đếm. Khi thực thi một lệnh, đầu tiên shell sẽ gán biến Tôi nghĩa 1 , và sau đó ở mỗi bước của vòng lặp, nó sẽ tăng thêm 1 cho đến khi vượt quá 10 . Hiển nhiên sẽ có mười bước như vậy. Nếu chúng tôi chỉ định một số làm bước đếm 2 , thì vòng lặp sẽ được thực hiện năm lần. Ở mỗi bước của vòng lặp, phần thân của vòng lặp được viết sau từ được thực thi LÀM. Trong ví dụ trên, đây là lệnh echo, hiển thị giá trị hiện tại của bộ đếm vòng lặp.

Bạn có thể nghĩ đến một tình huống thực sự cần một thứ như thế này, nhưng thông thường lệnh được sử dụng để lặp lại và xử lý các tập tin. Phải nói rằng trong những trường hợp khá đơn giản, việc xử lý tệp hàng loạt được thực hiện bằng ký tự đại diện. Nếu chúng ta muốn thay thế phần mở rộng của tất cả các tệp trong thư mục hiện tại .htm TRÊN .html, chúng ta nhập lệnh ren *.htm *.html. Nhưng nếu điều tương tự cần được thực hiện không phải trong một thư mục mà trong cây thư mục, thì bạn không thể thực hiện nếu không có lệnh for. Tệp bó sau đây thực hiện thao tác này cho tất cả các tệp htm trong thư mục con trang web của thư mục hiện tại. Chính xác hơn, trong toàn bộ cây thư mục bên trong trang mạng.

for /r website %%i in (*.htm) do ren %%i %%~ni.html

Chìa khóa /r cho biết sự cần thiết phải duyệt qua thư mục trang mạng và tất cả những gì bên trong nó. Nếu bạn không chỉ định nó (nhưng sau đó bạn không được phép chỉ định thư mục), thì chỉ các tệp trong thư mục hiện tại mới được xử lý. Phạm vi giá trị của bộ đếm vòng lặp trong biến thể lệnh này là tập hợp tất cả các tệp có phần mở rộng .htm, nằm bên trong một thư mục (chính xác hơn là một cái cây) trang mạng. Một mục lạ thoạt nhìn ~ni có nghĩa là từ giá trị của biến Tôi Bạn chỉ cần chọn tên tập tin. Ngôn ngữ lệnh MS-DOS cung cấp một số công cụ sửa đổi như vậy, ví dụ như viết ~xi biểu thị phần mở rộng của tập tin. Tất cả các sửa đổi được mô tả trong trợ giúp lệnh .

Phần thân của vòng lặp có thể bao gồm một số lệnh được đặt trong dấu ngoặc đơn.

cho /r trang web %%i trong (*.htm) làm (

rem In tên tập tin

rem Đổi tên tập tin

ren %%i %%~ni.html

Chuyển điều khiển sang tập tin batch khác. lệnh gọi

Có thể gọi một tệp bó khác từ một tệp bó. Lệnh cho việc này là gọi. Tuyệt vời, các biến được đặt trong tệp bó lệnh gọi đều “hiển thị” đối với biến được gọi. Và ngược lại, sau khi tệp được gọi hoàn thành công việc của nó và trả lại quyền điều khiển cho người gọi, người sau sẽ “nhìn thấy” các biến mà cái gọi là “kế thừa” để lại cho nó. Điều này cho phép nhà phát triển tệp bó thực hiện một số việc như thế này: Nếu một số tệp lệnh phải sử dụng cùng một giá trị, chẳng hạn như đường dẫn đến một số tệp, thì chúng có thể được đặt trong một tệp lệnh riêng, tệp này sẽ đóng vai trò của tệp cấu hình. Mỗi tệp lệnh làm việc sẽ bắt đầu bằng lệnh gọi cấu hình. Lợi ích là khi thay đổi đường dẫn, bạn chỉ phải thực hiện thay đổi đối với một tệp cấu hình chứ không phải thay đổi nhiều công nhân.

Tệp bó "Cấu hình" cấu hình.bat.

rem Đường dẫn tới trình biên dịch tập tin trợ giúp

đặt help_compiler="c:\Program Files\HTML Help Workshop\hhc.exe"

rem Đường dẫn đến thư mục chứa các dự án tệp trợ giúp

đặt project_path=e:\work\projects\help-projects

Tệp bó "Đang hoạt động".

rem Thiết lập biến

rem Kiểm tra xem tham số đã được đặt chưa

nếu không tồn tại %1.hpj (

rem Nếu tham số trống, chúng tôi hiển thị thông báo lỗi

echo Dự án tập tin trợ giúp này không tồn tại.

rem Dưới đây là các lệnh biên dịch

rem Gọi trình biên dịch để xử lý một dự án cụ thể,

rem có tên được truyền vào tham số đầu tiên

%help_compiler% %project_path%\%1.hpj

Lời chào hỏi! Hôm nay tôi quyết định giới thiệu với các bạn về tập tin bat, hay tập tin batch, như cách gọi đơn giản của chúng. Tôi cho rằng việc sử dụng các tập tin bat sẽ hữu ích cho mọi người dùng máy tính, sẽ mở rộng khả năng và đơn giản hóa việc thực hiện nhiều tác vụ.

Baht là gì và tại sao nó lại cần thiết?

Bat là một phần mở rộng tập tin (bat). Chắc hẳn nhiều người dùng đều biết rằng mỗi file đều có phần mở rộng riêng. Đây là dòng cuối cùng sau dấu chấm trong tiêu đề. Chính “cái đuôi” này mà hệ thống cần xác định là âm nhạc, video, hình ảnh hay bất kỳ thứ gì khác. Bạn thậm chí có thể thử nghiệm. Chụp bất kỳ hình ảnh nào và đổi tên nó cùng với phần mở rộng. Windows sẽ ngay lập tức thông báo cho bạn rằng bạn đang thay đổi tiện ích mở rộng và tệp có thể không được hệ thống phát hiện. Đồng ý với yêu cầu và bạn sẽ thấy ảnh của mình không còn được hiển thị dưới dạng ảnh nữa. Nếu bạn đổi tên nó như trước, mọi thứ sẽ được khôi phục lại. Nếu tiện ích mở rộng không hiển thị với bạn, bạn cần kích hoạt chức năng này trong Explorer, trong tab “Chế độ xem”.

Đối với Windows, dơi là một tệp có hướng dẫn cho một số hành động nhất định có trong chính tệp bat. Một tệp trống ở định dạng baht sẽ khởi chạy nhưng không có hành động nào được thực hiện. Tệp bó là một tập hợp các hướng dẫn cho bảng điều khiển Windows.

Làm cách nào để tạo file bat để chạy chương trình?

Để tạo một tệp bó, bạn cần khởi chạy trình soạn thảo văn bản, sau đó lưu tệp với tên cuối cùng là bat. Nếu trình soạn thảo của bạn không có chức năng lưu với tiện ích mở rộng như vậy thì bạn cần phải tự đăng ký. Khi chúng tôi chạy một tệp như vậy, một bảng điều khiển sẽ mở ra và nếu không có lệnh nào, nó sẽ đóng ngay lập tức.

Bây giờ hãy đặt lệnh để chạy chương trình. Để thực hiện việc này, bạn cần mở tệp bó đã tạo của chúng tôi trong Notepad hoặc trình soạn thảo khác và nhập lệnh.

Hãy khởi chạy trình duyệt làm ví dụ. Trước tiên bạn phải nhập lệnh Bắt đầu và sau dấu cách viết Opera.

Nó sẽ giống như thế này:

Bắt đầu Opera

Điều này sẽ hoạt động đối với các chương trình được hệ thống biết đến, nhưng nếu bạn khởi chạy phần mềm mà hệ thống không biết, bạn sẽ cần phải ghi toàn bộ đường dẫn đến chương trình. Ví dụ: nếu bạn đã cài đặt ftp trong thư mục Tệp chương trình, thì để khởi động nó, bạn cần nhập lệnh

bắt đầu filezilla

Và nếu máy khách ftp được cài đặt trong một thư mục khác, bạn sẽ cần nhập toàn bộ đường dẫn.

Phạm vi áp dụng của file batch khá rộng. Bạn có thể nhập nhiều lệnh khác nhau vào cấu hình. Bạn có thể tìm thấy chúng trên Internet. Nếu bạn quan tâm đến thông tin chi tiết hơn về các lệnh, hãy viết bình luận và tôi sẽ cố gắng trả lời bạn. VBS hoạt động theo cách tương tự. Đây là điều tương tự, chỉ có các lệnh không được thực thi thông qua bảng điều khiển và các lệnh hơi khác một chút.

Công nghệ này sẽ giúp thực hiện nhiều loại nhiệm vụ khác nhau và ở chế độ tự động. Một số người dùng thậm chí còn viết virus theo cách này. Để không thể thay đổi cấu hình tệp bằng trình soạn thảo văn bản, bạn cần chuyển đổi tệp bat thành exe. Điều này sẽ giúp tạo ra nhiều phần mềm phụ trợ khác nhau mà bạn có thể tìm thấy trên Internet. Ví dụ: để chuyển đổi bat sang exe, chương trình chuyển đổi Bat sang exe sẽ trợ giúp.

Chức năng baht rất hữu ích và đôi khi cần thiết. Sử dụng nó, bạn có thể viết toàn bộ chương trình với một phạm vi hành động hẹp. Phạm vi ứng dụng chỉ phụ thuộc vào kiến ​​thức về lệnh và khả năng kết hợp chúng. Do đó, hãy sử dụng và mở rộng các kỹ năng cũng như khả năng sử dụng máy tính của bạn ở cấp độ Siêu người dùng.

Tệp BAT là tài liệu văn bản có phần mở rộng đặc biệt. Các lệnh được ghi vào đó để thực hiện tiếp theo trên dòng lệnh. Bằng cách chạy tệp, bạn kích hoạt chương trình CMD, nó đọc các lệnh được thực thi tuần tự. Bằng cách này, bạn có thể làm việc với dòng lệnh dễ dàng hơn trong khi vẫn duy trì thứ tự mong muốn. Tất nhiên, bạn có thể nhập tất cả các lệnh cùng một lúc vào dòng lệnh theo cách thủ công, tuy nhiên, nếu bạn cần lặp lại các thao tác tương tự, sẽ thuận tiện hơn nhiều khi thực hiện việc này bằng cách tự động đọc danh sách được viết dưới dạng tài liệu dơi. Tùy chọn này cũng thiết thực và tiện lợi vì sau đó bạn có thể thay đổi thứ tự, thêm các quy trình mới mà bạn cần cũng như loại bỏ những quy trình không cần thiết.

BAT giúp tự động hóa các quy trình: khởi chạy chương trình, lưu trữ, sao lưu. Vì vậy, sẽ rất hữu ích nếu bạn biết cách tự tạo một tập tin bat, sửa chữa và bổ sung nó.

Làm việc với dơi bằng Notepad

Thuật toán tạo

Quá trình làm việc thông qua Notepad hoàn toàn không phức tạp. Nếu bạn chưa bao giờ làm điều này trước đây, bạn sẽ có thể xử lý nó tốt bằng cách học cách tạo tệp bat và thêm lệnh vào đó. Hãy bắt đầu với việc sáng tạo. Ở đây, hãy tuân thủ nghiêm ngặt thuật toán:

  1. Khi bạn tạo một tài liệu văn bản, ban đầu bạn sẽ nhận được nó với phần mở rộng txt. Có một số cách để thực hiện thao tác này, một số cách tùy thuộc vào cấp độ Windows bạn đã cài đặt:
    • Trong thư mục bạn đã chọn, nhấp chuột phải vào trường, một menu sẽ mở ra, ở đó chúng ta chọn “Tạo” - “Tài liệu văn bản”;
    • Khởi chạy “Notepad” thông qua “Bắt đầu” bằng cách chọn “Tất cả chương trình” - “Phụ kiện” - “Notepad” (dành cho Windows 7);
    • Trong các phiên bản Windows sau (sau 7), bạn cũng có thể mở “Notepad” thông qua “Bắt đầu”: đi qua “Tất cả ứng dụng”, sau đó đến “Phụ kiện” - “Windows” và ở đó chọn “Notepad” từ danh sách;
    • Mở cửa sổ lệnh hệ thống bằng tổ hợp Win + R, nhập “notepad” vào dòng, bấm “Ok”.
  2. Nhập văn bản lệnh. Để thử, hãy viết ra, ví dụ: “BẮT ĐẦU taskmgr.exe” - khởi động trình quản lý tác vụ. “BẮT ĐẦU” cho trình thông dịch lệnh biết rằng một chương trình cần được khởi chạy, sau đó khả năng thực thi của chương trình sẽ được chỉ định.
  3. Chỉ định đường dẫn nơi lưu tài liệu đã tạo.
  4. Chỉ định trong cửa sổ lưu:
    • trong dòng “Loại” - “Tất cả các tệp”;
    • trong dòng “Tên”, nhập tên và phần mở rộng của bat, thêm nó vào sau tên, đặt dấu chấm giữa tên và phần mở rộng, ví dụ: “file.bat”.
  5. Bấm vào “Lưu”.

Một tệp bó có phần mở rộng .bat sẽ xuất hiện trong thư mục bạn đã chỉ định.

Chạy một tập tin

Việc mở tệp bat sẽ dễ dàng hơn bằng cách nhấp đúp vào tệp đó bằng chuột. Phương pháp thứ hai là khởi chạy từ dòng lệnh: nhập địa chỉ chứa tài liệu có phần mở rộng .bat mà bạn đã lưu.

Chỉnh sửa

Nếu bạn muốn thay đổi tài liệu - thêm lệnh vào tệp bat, xóa một số lệnh, nhập chương trình khác để làm việc với nó sau - điều đó không khó thực hiện. Mở tài liệu bằng trình soạn thảo văn bản. Thật thuận tiện để thực hiện việc này bằng cách nhấp chuột phải vào tệp bat và chọn “Chỉnh sửa” trong menu mở ra. Notepad sẽ khởi chạy - ở đó bạn có thể chỉnh sửa lệnh, thay đổi nội dung và thực hiện các bổ sung.

Ứng dụng của Dr.Batcher

Đối với người mới bắt đầu làm việc với trình thông dịch lệnh và hiếm khi sử dụng nó, Notepad là đủ. Nếu bạn muốn đạt đến trình độ chuyên môn cao hơn, chúng tôi khuyên bạn nên sử dụng tiện ích Dr.Batcher. Trong Dr.Batcher, bạn có thể đánh số trang, hỗ trợ đánh dấu trang, danh sách các lệnh hệ thống được sử dụng trong bat, các lệnh đã nhập sẽ được tô sáng.

Tạo một tài liệu

Thuật toán rất đơn giản và không yêu cầu kỹ năng đặc biệt hoặc tính chuyên nghiệp. Sau khi tải xuống tiện ích, bạn có thể nhanh chóng thực hiện mọi thứ bạn cần.

Khởi chạy Dr.Batcher.

  1. Mở một trang mới: “Tệp” - “Mới” hoặc nhấp vào biểu tượng trang trống nằm trong menu “Tệp”.
  2. Trong hộp thoại, nhấp vào Tập tin hàng loạt trống.
  3. Một cửa sổ chương trình sẽ xuất hiện chứa các chức năng làm việc với bat.
  4. Sau khi nhập văn bản cần thiết, lưu lại.

Chỉnh sửa

Nếu bạn cần thay đổi tệp bat, việc này được thực hiện theo nhiều cách trong Dr.Batcher:

  1. Nhấp chuột phải vào biểu tượng và chọn “Chỉnh sửa bằng Dr.Batcher” từ menu.
  2. Khởi động Batcher. Mở tệp bat mong muốn bằng cách làm theo đường dẫn:
  • "Tài liệu";
  • "Mở";
  • chỉ định đường dẫn đến tài liệu;
  • "Mở".

Sau khi đi theo một trong các đường dẫn được gợi ý, bạn sẽ mở tiện ích; trong cửa sổ sẽ có văn bản nơi bạn có thể điều chỉnh, thay đổi lệnh, bổ sung và xóa những lệnh không cần thiết.

Tệp bat rất hữu ích khi bạn cần tự động hóa các tác vụ trong Windows. Đặc biệt nếu cần thực hiện các hành động theo một thuật toán nhất định nhiều lần (định kỳ hoặc liên tiếp). Điều này thường được yêu cầu khi tạo hệ thống thư mục, đổi tên hàng loạt tệp và các thao tác đơn giản và phức tạp khác. Bằng cách duy trì thứ tự các hành động, bạn có thể nhanh chóng và không lãng phí thời gian nhập lệnh theo cách thủ công, bạn có thể bắt đầu quá trình bất cứ lúc nào, lặp lại nó cho các chương trình khác nhau, chỉ nhập tên của chúng trong văn bản đã hoàn thành. Các đề xuất về cách tạo tệp bat được nêu ở trên sẽ giúp bạn không chỉ tự tạo mà còn có thể chỉnh sửa chúng.

Hôm nay chúng ta sẽ tìm hiểu nó là gì tập tin dơi và đồng thời chúng tôi sẽ tạo ra một trong số chúng.

Tôi nghĩ rằng nhiều người, bằng cách này hay cách khác, định kỳ tạo ra (cái gọi là hỗ trợ-s) của một số tập tin và thư mục nhất định.

Mọi thứ dường như quen thuộc và bạn không cần phải làm gì đặc biệt phức tạp: lắp ổ đĩa flash, mở " Máy tính của tôi", tìm nội dung cần sao chép, chọn, nhấp chuột, chọn "sao chép", di chuyển đến thư mục mong muốn, nhấp vào "dán", v.v.

Nhưng thường thì tất cả những cú nhấp chuột và chuyển động không cần thiết này đều gây mệt mỏi và lấy đi thời gian quý báu, đặc biệt là khi thường xuyên sao chép cùng một dữ liệu. Trong bài viết này tôi sẽ cho bạn biết làm thế nào, hay đúng hơn là viết một thứ như tập tin dơi.

Đi.

Tập tin dơi - cái gì, giới thiệu

Đầu tiên, một chút về nó là gì tập tin dơi, tại sao nó lại cần thiết và nó (hoặc chúng) được ăn cùng với cái gì. Để không phát minh lại cái bánh xe, tôi sẽ sử dụng một đoạn trích từ Wikipedia:

Tệp hàng loạt (tức là con dơi tập tin, từ tiếng Anh tập tin hàng loạt) - tệp văn bản trong MS-DOS, OS/2 hoặc các cửa sổ, chứa một chuỗi các lệnh dự định sẽ được thực thi bởi trình thông dịch lệnh.

Sau khi chạy tập tin batch, chương trình thông dịch (thường LỆNH.COM hoặc CMD.EXE) đọc từng dòng và thực hiện các lệnh một cách tuần tự.

Tệp hàng loạt - tương tự tập lệnh shell V. Unix-giống như hệ điều hành.

Các tệp hàng loạt rất hữu ích để khởi chạy ứng dụng một cách tự động. Lĩnh vực ứng dụng chính là tự động hóa các hoạt động thường ngày nhất mà người dùng máy tính thường xuyên phải thực hiện.

Ví dụ về các hoạt động như vậy bao gồm: xử lý tệp văn bản; sao chép, di chuyển, đổi tên, xóa tập tin; làm việc với các thư mục; lưu trữ; tạo bản sao lưu cơ sở dữ liệu, v.v.

Các toán tử hỗ trợ tập tin hàng loạt nếu nhưđi đến(và trong các hệ thống của gia đình Windows NT và toán tử mở rộng ), cho phép bạn xử lý kết quả của việc thực thi các lệnh hoặc ứng dụng trước đó và tùy thuộc vào điều này, tiếp tục thực thi khối lệnh này hoặc khối lệnh đó (theo quy định, nếu ứng dụng hoàn thành thành công, ứng dụng sẽ trả về 0 trong biến errorlevel; nếu không thành công, giá trị 1 hoặc cao hơn).

Tập tin hàng loạt trong DOS có phần mở rộng. con dơi; đối với các hệ điều hành khác, chúng có thể có các phần mở rộng khác nhau - ví dụ: . CMD V. Windows NTHệ điều hành/2, hoặc .BTM V. 4DOS hoặc vỏ tương tự.

Bây giờ chúng ta đã sắp xếp xong lý thuyết, hãy bắt tay vào thực hành thực tế, cụ thể là tạo biệt danh cho người dơi.

Bạn có muốn biết và có thể tự mình làm được nhiều hơn không?

Chúng tôi cung cấp cho bạn đào tạo về các lĩnh vực sau: máy tính, chương trình, quản trị, máy chủ, mạng, xây dựng trang web, SEO và hơn thế nữa. Tìm hiểu chi tiết ngay bây giờ!

Cách tạo file bat và sử dụng nó

Hãy chuẩn bị một trường thử nghiệm nhỏ để chúng ta có thứ gì đó để thử nghiệm. Mở máy tính của tôi và tạo trên đĩa C:\ bố Bài kiểm tra. Đi vào đó và tạo một thư mục trong đó.

Ném tập tin vào đó (mảnh 5-10 ) - ảnh, tài liệu, v.v. (bất cứ thứ gì ngắn hơn). Hiện trường để thử nghiệm đã sẵn sàng. Tiếp theo, trên thực tế, chúng ta cần tự tạo ra con dơi một tập tin khi nhấp vào mà chúng tôi sẽ sao chép thư mục C:\test\testcopy trong một thư mục chẳng hạn C:\kiểm tra\sao lưu. Tạo một thư mục thứ hai (mà hỗ trợ) là không cần thiết - nó sẽ tự động xuất hiện.

Tạo nên con dơi rất đơn giản. Nhấp chuột phải vào nơi chúng tôi muốn tạo (vị trí không quan trọng - bạn có thể trực tiếp trên màn hình nền) và chọn " Tạo nên" - "Dữ liệu văn bản".

Đặt tên cho tệp đã tạo và mở nó bằng notepad hoặc bất kỳ trình soạn thảo văn bản nào khác. Những thứ kia. hiện tại chúng tôi có một tệp văn bản mở có tên là, sao chép.txt.

Thêm một lệnh vào tập tin, ví dụ, để sao chép

Trên thực tế, tiếp theo, chúng ta cần nhập một lệnh vào tệp này để phát bằng bảng điều khiển ( cmd) khi chạy tập tin này. Trong trường hợp này chúng ta sẽ sử dụng lệnh xcopy bởi vì chính điều này cho phép bạn sao chép các tập tin, thư mục và thư mục con. Xem xét tất cả các đường dẫn, chúng tôi nhận được lệnh sau:

xcopy C:\test\testcopy C:\test\backup /f /i /y /s

Hãy để tôi giải thích những gì là gì:

  • xcopy- đây chính là đội;
  • C:\test\testcopy- đây là nguồn, tức là thư mục mà các tập tin và thư mục được sao chép;
  • C:\kiểm tra\sao lưu- đây là kết quả, tức là vị trí nơi các tập tin và thư mục sẽ được sao chép;
  • /f /i /y /s- tùy chọn cú pháp bổ sung cho lệnh xcopy(xem cú pháp bên dưới trong văn bản).

Số lượng dòng có thể là bất kỳ, tức là. nếu bạn cần sao chép 100 thư mục, bạn viết 100 các dòng trong một tệp và chỉ thay đổi đường dẫn trong đó.

Có những gì (tức là những gì tôi đã chỉ ra trong ví dụ này):

  • /f- hiển thị tên file nguồn và file kết quả trong quá trình sao chép
  • /Tôi- tạo một thư mục mới nếu nó không có trong đường dẫn cuối cùng
  • /y- ghi đè file nếu nó đã tồn tại
  • /S- sao chép các thư mục và thư mục con nếu chúng không trống. Nếu tham số /S không được chỉ định, lệnh xcopy sẽ chỉ hoạt động với một thư mục.

Đối với tôi, đây là danh sách chính các tham số cần thiết cho việc sao chép “im lặng”, tức là. không có những câu hỏi không cần thiết về việc viết lại, tạo thư mục và các hành vi gian lận khác. Về phần còn lại của cú pháp, bạn có thể đọc, ví dụ: .

Thay đổi định dạng tệp và thử chạy nó

Đầu tiên chúng ta mở " Máy tính của tôi"chúng ta hãy di chuyển trên đó" Dịch vụ" - "Thuộc tính thư mục" - "Xem"và bỏ chọn" Ẩn tiện ích mở rộng cho các loại tệp đã đăng ký".

Nhấp chuột " Áp dụng" Và " ĐƯỢC RỒI". Bây giờ chúng tôi có thể thay đổi phần mở rộng của tệp mà hệ thống biết và do đó chúng tôi đi tới tệp của mình, nhấp chuột phải, chọn " Đổi tên"và bằng cách gõ trên bàn phím, chúng tôi thay đổi phần mở rộng từ txt TRÊN con dơi(chúng tôi trả lời câu hỏi của hệ thống liệu nó có đáng làm điều này hay không bằng câu khẳng định).

Kết quả là chúng ta có hình ảnh sau (trong trường hợp của bạn, tệp được gọi khác nhưng có cùng định dạng):

Trên thực tế, tất cả những gì còn lại đối với chúng tôi là khởi chạy tệp này bằng cách chỉ cần nhấp chuột vào nó.

Nếu bạn đã làm mọi thứ một cách chính xác, thì bảng điều khiển sẽ nhấp nháy trước mặt bạn và một thư mục mới sẽ xuất hiện dọc theo một đường dẫn đã biết với tên được xác định trước và các tệp bên trong được sao chép từ một thư mục mà bạn đã biết, tức là hình ảnh sẽ giống như thế này:

Chà, hoặc hơi khác một chút, tùy thuộc vào đường dẫn và tên thư mục bạn đã chỉ định trong lệnh.
Bạn có thể chỉnh sửa tệp bằng cách thay đổi phần mở rộng của tệp về .txt và mở tệp bằng bất kỳ trình soạn thảo văn bản nào.

Lời bạt

Như tôi đã nói và có lẽ chính bạn cũng đã nhận ra - việc sử dụng như vậy con dơi file "và thường tiết kiệm rất nhiều thời gian, tức là bạn viết nó một lần và khởi chạy định kỳ bằng một cú nhấp chuột và thay vì nhấp chuột nhiều phút và thu thập dữ liệu qua tất cả các thư mục, bạn sẽ có được quy trình sao chép tự động.

Nếu muốn, bạn có thể thiết lập thời gian khởi chạy này con dơi-nick vào những ngày nhất định thông qua lịch trình các cửa sổ(hoặc các chương trình khác cho phép bạn thực hiện việc này) và thường quên đi vấn đề về hướng dẫn sử dụng dài dòng hỗ trợ"ov.

Nếu bạn có bất kỳ câu hỏi hoặc vấn đề, hãy hỏi. Như mọi khi, tôi sẽ giúp đỡ bằng mọi cách có thể;)

Tái bút: Nếu trí nhớ của tôi hoạt động tốt thì đây là một phần chủ đề trong sách quản trị thông minh, cụ thể là từ phần " Tự động hóa quản trị".. để bạn có thể tự hào về bản thân mình :)