Script Batch - Ngày và Giờ

Xin chào các bạn học lập trình! Hôm nay, chúng ta sẽ cùng khám phá thế giới kỳ thú của ngày và giờ trong lập trình Batch. Là giáo viên máy tính gần gũi của bạn, tôi rất vui mừng được hướng dẫn bạn trong hành trình này. Đừng lo lắng nếu bạn chưa bao giờ viết một dòng mã trước đây - chúng ta sẽ bắt đầu từ những điều cơ bản và dần dần nâng cao. Hãy chuẩn bị sổ tay ảo của bạn và cùng bắt đầu nhé!

Batch Script - DATE & TIME

Lệnh DATE

Lệnh DATE trong lập trình Batch giống như một cuốn lịch kỹ thuật số. Nó cho phép bạn xem hoặc thay đổi ngày hiện tại trên máy tính của bạn. Hãy cùng tìm hiểu cách sử dụng nó!

Xem Ngày Hiện Tại

Để xem ngày hiện tại, bạn chỉ cần gõ:

DATE

Khi bạn chạy lệnh này, bạn sẽ thấy gì đó như sau:

The current date is: Mon 04/17/2023
Enter the new date: (mm-dd-yy)

Đây là một sự thật thú vị: Một lần tôi có một học sinh đã sử dụng lệnh này để kiểm tra xem có phải sinh nhật của anh ấy hay không. Anh ấy rất vui mừng khi hóa ra đúng là sinh nhật của anh ấy!

Thay Đổi Ngày

Để thay đổi ngày, bạn có thể nhập một ngày mới khi được yêu cầu. Ví dụ:

DATE 04-18-2023

Điều này sẽ thay đổi ngày thành ngày 18 tháng 4 năm 2023. Nhưng hãy cẩn thận! Thay đổi ngày hệ thống có thể ảnh hưởng đến nhiều ứng dụng và quy trình.

Sử Dụng DATE trong Các Script

Bây giờ, hãy xem chúng ta có thể sử dụng lệnh DATE trong script của mình như thế nào. Dưới đây là một ví dụ đơn giản:

@echo off
echo Today's date is:
date /t
pause

Trong script này:

  1. @echo off ngăn không hiển thị các lệnh.
  2. echo Today's date is: in ra một thông báo.
  3. date /t hiển thị ngày hiện tại mà không yêu cầu nhập ngày mới.
  4. pause giữ cửa sổ mở để bạn có thể thấy kết quả.

Lệnh TIME

Cũng như DATE, lệnh TIME cho phép bạn xem hoặc thay đổi giờ hiện tại trên máy tính của bạn. Nó giống như có một đồng hồ kỹ thuật số trong tầm tay!

Xem Giờ Hiện Tại

Để xem giờ hiện tại, bạn chỉ cần gõ:

TIME

Bạn sẽ thấy gì đó như sau:

The current time is: 14:30:45.52
Enter the new time:

Thay Đổi Giờ

Để thay đổi giờ, bạn có thể nhập một giờ mới khi được yêu cầu:

TIME 15:45

Điều này sẽ thay đổi giờ thành 3:45 PM.

Sử Dụng TIME trong Các Script

Hãy tạo một script hiển thị cả ngày và giờ:

@echo off
echo Current date and time:
date /t
time /t
pause

Script này sẽ hiển thị cho bạn ngày và giờ hiện tại mà không yêu cầu thay đổi.

Định Dạng Ngày theo Năm-Tháng-Ngày

Đôi khi, bạn có thể cần hiển thị ngày theo định dạng Năm-Tháng-Ngày. Batch scripting không có lệnh内置 cho điều này, nhưng chúng ta có thể tạo ra một giải pháp riêng bằng cách sử dụng các biến môi trường.

Dưới đây là một script hiển thị ngày theo định dạng YYYY-MM-DD:

@echo off
for /f "tokens=2 delims==" %%I in ('wmic os get localdatetime /value') do set datetime=%%I
set year=%datetime:~0,4%
set month=%datetime:~4,2%
set day=%datetime:~6,2%
echo Current date: %year%-%month%-%day%
pause

Hãy phân tích này:

  1. Vòng lặp for chạy lệnh wmic để lấy ngày và giờ địa phương.
  2. Chúng ta chiết xuất thông tin ngày vào các biến: year, month, và day.
  3. Cuối cùng, chúng ta in ra ngày theo định dạng mong muốn.

Script này có thể trông phức tạp, nhưng nó thực sự mạnh mẽ. Tôi nhớ có một học sinh đã sử dụng script này để tự động đánh dấu ngày trên các tệp bài tập của anh ấy!

Các Phương Pháp Ngày và Giờ Hữu Ích

Dưới đây là bảng một số phương pháp ngày và giờ hữu ích trong lập trình Batch:

Phương Pháp Mô Tả Ví Dụ
DATE /T Hiển thị ngày hiện tại DATE /T
TIME /T Hiển thị giờ hiện tại TIME /T
%DATE% Biến môi trường cho ngày hiện tại echo %DATE%
%TIME% Biến môi trường cho giờ hiện tại echo %TIME%
wmic os get localdatetime Lấy ngày và giờ theo định dạng YYYYMMDDHHMMSS wmic os get localdatetime

Nhớ rằng, thực hành là cách tốt nhất để thành thạo! Hãy thử viết các script sử dụng các lệnh này theo nhiều cách khác nhau. Có thể tạo một đồng hồ kỹ thuật số, hoặc một script tính toán số ngày cho đến sinh nhật tiếp theo của bạn.

Cuối cùng, làm việc với ngày và giờ trong lập trình Batch mở ra rất nhiều khả năng. Từ việc hiển thị ngày đơn giản đến các phép toán phức tạp về thời gian, các công cụ này có thể rất hữu ích trong hành trình lập trình của bạn. Hãy tiếp tục thử nghiệm và đừng sợ mắc lỗi - đó là cách chúng ta học hỏi!

Chúc các bạn lập trình vui vẻ, những nhà lập trình tương lai!

Credits: Image by storyset