批次腚本 - 裝置

Hello, future programmers! Today, we're going to dive into the fascinating world of Batch scripting and explore how we can interact with various devices using these powerful little scripts. As your friendly neighborhood computer teacher, I'm excited to guide you through this journey, even if you've never written a line of code before. So, grab your virtual notepads, and let's get started!

Batch Script - Devices

What are Devices in Batch Scripting?

Before we jump into the nitty-gritty, let's understand what we mean by "devices" in the context of Batch scripting. In simple terms, devices are the various hardware components or peripherals connected to your computer. These can include your screen, keyboard, printer, and even some special files that Windows uses to represent certain functions.

Common Devices in Batch Scripting

Here's a table of some common devices you'll encounter in Batch scripting:

裝置名稱 說明
CON 控制台(鍵盤和屏幕)
PRN 預設印表機
NUL 空設備(丟棄任何輸入)
COM1-COM9 基串口
LPT1-LPT9 平行口

現在,我們已經有了概覽,讓我們探索如何在批次腚本中使用這些裝置!

在控制台(CON)上工作

控制台,表示為 CON,可能是你將與之交互最多的裝置。它基本上是你的鍵盤用於輸入,以及你的屏幕用於輸出。

從控制台讀取

讓我們從一個簡單的例子開始:

@echo off
set /p name=What's your name?
echo Hello, %name%!
pause

在這個腚本中:

  1. 我們使用 @echo off 關閉命令回显。
  2. 我們使用 set /p 提示用戶輸入並將其存儲在 name 變量中。
  3. 然後我們使用 echo 顯示一個帶有用户名稱的問候。
  4. 最後,pause 保持控制台窗口打開,以便我們可以看到結果。

當你運行這個腚本時,它將等待你輸入名字並按 Enter。這就像和你的計算機對話一樣!

寫入控制台

現在,讓我們試試更有趣的事情:

@echo off
echo Let's count to 5!
for /l %%i in (1,1,5) do (
echo %%i
ping -n 2 localhost >nul
)
echo Blast off!
pause

這個腚本:

  1. 宣布它將計數到 5。
  2. 使用 for 循环從 1 计數到 5。
  3. 顯示每個數字,並有一個短暫的延遲(使用 ping 作為延遲)。
  4. 結束時顯示一個 "Blast off!" 消息。

運行這個腚本,你會看到數字一個接一個地出現,就像火箭倒數計時一樣!

空設備(NUL)

NUL 裝置就像一個數據的黑洞。任何發送到它的數據都會消失。這聽起來可能沒有用,但實際上它非常方便,用於抑制不需要的輸出。

這裡有一個例子:

@echo off
echo This will be displayed.
echo This won't be displayed. > NUL
dir > NUL
echo Did you see the directory listing? Nope!
pause

在這個腚本中:

  1. 第一個 echo 正常顯示。
  2. 第二個 echo 被重定向到 NUL,所以它不會顯示。
  3. dir 命令的輸出也被發送到 NUL
  4. 最後的 echo 確認我們沒有看到目錄列表。

這在你想運行命令而不希望控制台輸出被搞亂時特別有用。

在印表機上工作(PRN)

雖然我們現在不太打印,但批次腚本仍然可以與印表機交互。PRN 裝置代表預設的印表機。

這裡有一個簡單的例子:

@echo off
echo This is a test print job. > PRN
echo Check your printer!
pause

這個腚本將一行文字直接發送到你的默認印表機。謹慎使用這個腚本——我們不希望浪費紙張!

基串口和平行口(COM 和 LPT)

對於那些使用較舊硬體或專業設備的人來說,批次腚本也可以與基串口(COM)和平行口(LPT)交互。

這裡有一個將數據發送到基串口的例子:

@echo off
echo Hello, device! > COM1
echo Data sent to COM1
pause

這個腚本將 "Hello, device!" 發送到第一個基串口。當然,你需要那個串口上連接的設備才能看到任何效果。

結論

And there you have it, folks! We've taken a whirlwind tour of devices in Batch scripting. From chatting with the console to sending secret messages to the null device, and even saying hello to printers and serial ports, you now have the power to interact with various parts of your computer using simple Batch commands.

Remember, the key to mastering Batch scripting (or any programming, for that matter) is practice. So, don't be afraid to experiment with these examples, modify them, and see what happens. Who knows? You might just create the next great Batch script masterpiece!

Until next time, happy scripting!

在這裡,我們就结束了對批次腚本中裝置的快速導覽。從與控制台交谈到向空設備發送秘密消息,再到向印表機和串口說你好,你现在有了使用簡單的批次命令與計算機的各個部分交互的能力。

記住,掌握批次腚本(或任何編程語言)的關鍵在於練習。所以,不要害怕嘗試這些例子,修改它們,並看看會發生什麼。誰知道呢?你可能會創造出下一個偉大的批次腚本傑作!

下次見,快樂腚本編程!

Credits: Image by storyset