From d9724250af550e9c1bc5718828915f16b437c51f Mon Sep 17 00:00:00 2001 From: cxykevin Date: Tue, 3 Sep 2024 22:28:14 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=20Shellscript?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../shell_script_basic.md | 46 +++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/src/shell_and_shell_script/shell_script_basic.md b/src/shell_and_shell_script/shell_script_basic.md index 1444407..8cd4c2f 100644 --- a/src/shell_and_shell_script/shell_script_basic.md +++ b/src/shell_and_shell_script/shell_script_basic.md @@ -126,8 +126,54 @@ echo "完成" ## 等待 +`sleep` 命令可以实现让用户“等一会”的作用,在脚本中有时会用到。它的使用也非常简单。 + +```bash +sleep 5 # 等待 5 秒 +sleep 0.5 # 等待 0.5 秒 +``` + +sleep 后面也可以加上单位。可用的单位如下: + +- `s` 秒 +- `m` 分钟 +- `h` 小时 +- `d` 天 + +如: + +```bash +sleep 5m # 等待 5 分钟 +sleep 1m 2s # 等待 62 秒 +``` + ## 从终端输入内容 +在 Shell Script 中,我们如何从终端输入内容呢?我们可以使用 `read` 命令。例如: + +```bash +read var +echo "你输入的内容是:$var" +``` + +然后你就可以在终端输入内容了。 + +如果你希望它能在你输入时有提示,那么可以使用 `-p` 参数。例如: + +```bash +read -p "请输入你的名字:" var +echo "你输入的内容是:$var" +``` + +如果你希望输入一个密码,让它输入的内容不显示在终端上,那么可以使用 `-s` 参数。例如: + +```bash +read -s -p "请输入你的密码:" var +echo "你输入的内容是:$var" +``` + +> 小技巧:使用 `read -s -N 1` 可以实现“按任意字符继续”的功能。 + ## 课后作业 Bash 和 Shell Script 本身其实并不是很难,但是却有着无穷多的可能性。我们学习使用 Shell Script 可以方便我们的学习与工作。