Shell编程学习之输入命令与输出命令

  • 输入命令read:
  • 类似于C语言中的scanf函数;
  • 注意事项:
  • 1.若输入多个变量,需要用空格分隔开;
  • 2.若输入多个变量值,分开写;
  • 3.若输入一个数组,需要-a选项,输入时,数组成员需要用空格分隔开;
  • 4.若输入时,需要给用户提示信息,使用-p选项;
  • 5.若输入时,需要等待用户输入特定时间,使用-t选项;
  • 6.若输入时,需要读取固定的字符个数,使用-n选项;
  • 7.若输入时,需要取消输入的回显,使用-s选项;
  • 测试代码:
powershell 复制代码
#!/bin/bash

read K1 K2 K3

echo $K1
echo $K2
echo $K3

echo "----------------"

read K4
read K5
read K6

echo $K4
echo $K5
echo $K6
echo "----------------"

read -a M1

echo ${M1[0]}
echo ${M1[@]}
echo ${#M1[@]}
echo "----------------"

read -t 2 K7
echo $K7
echo "----------------"

read -n 4 K8
echo $K8
echo "----------------"

read -s K9
echo $K9
echo "----------------"

read -n 4 -s -t 2 -p "请输入:" K10
echo $K10
  • 运行结果:
powershell 复制代码
13 15 17
13
15
17
----------------
12
11
25
12
11
25
----------------
98 52 36 41 56 85
98
98 52 36 41 56 85
6
----------------

----------------
4 5 4 5
----------------
6
----------------
请输入:5
  • 输出命令echo:

  • 类似于C语言中的printf函数;

  • 注意事项:

  • 1.使用时,不需要使用换行,因为输出时,自带换行;

  • 2.若是不需要换行,使用-n选项;

  • 3.若是识别转义字符,使用-e选项;

  • 测试代码:

powershell 复制代码
#!/bin/bash

K1=WELCOME
K2=YOU

echo $K1 $K2

echo -n $K1

echo $K2

echo -e "hi\nbeijing"
  • 运行结果:
powershell 复制代码
WELCOME YOU
WELCOMEYOU
hi
beijing
相关推荐
dadaobusi1 小时前
学习: PCIe 6.0 的 L0p
学习
Zenova EdgeOS2 小时前
Linux 内核日志 dmesg 进阶实战:从现场过滤到持久化闭环
linux·运维·服务器
郝亚军3 小时前
ec_private.pem的生成方法
linux·运维·服务器
燕落南枝3 小时前
CSS 学习:类型选择器与 AI 注释实战
css·人工智能·学习
NendoZen3 小时前
Arch Linux解决Grub无法SAVEDEFAULT问题(uki启动问题)
linux·运维·服务器
忆挽篱笙歌4 小时前
进程控制管理
linux·运维·服务器
Escalating_xu5 小时前
【Linux 网络编程】connect 的断线重连:用状态机写一个能恢复连接的 TCP 客户端
linux·网络·tcp/ip
Zucker n6 小时前
英语“论文”语法检查工具
linux·windows
苏宸啊6 小时前
Reactor反应堆模式
linux
Swilderrr7 小时前
论文精读:《Directory-Aware Query and Maintenance in Vector Databases》
笔记·学习