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
相关推荐
问天_观心9 分钟前
模型微调学习(二)
开发语言·人工智能·学习·语言模型·github
小此方13 分钟前
Linux网络(二十九):从内网穿透到P2P打洞:NAT转换、代理机制与局域网通信的底层全景解析
linux·网络·p2p
dadaobusi17 分钟前
学习:PCIe6.0 RS FEC
学习
_橙时_19 分钟前
【MOEA/D的学习小笔记】
笔记·学习·多目标优化·moea/d
Brilliantwxx20 分钟前
【Linux】基础IO(下):输出重定向、dup2 与 minishell 重定向实战
linux·运维·服务器·github·bash
学linux的QQ蛋22 分钟前
IMX6 嵌入式多传感器系统整体架构梳理
linux·嵌入式硬件·架构
kaixin_learn_qt_ing23 分钟前
QCommandLineParser 学习
学习
小HANN33 分钟前
(架构 + InnoDB 事务 MVCC):《MySQL 底层探秘①:拆解 InnoDB,读懂事务、MVCC 与日志的底层逻辑》
linux·运维·服务器·经验分享
kyle~35 分钟前
Linux --- 虚拟内存 1.fork、2.COW、3.mmap、4.page fault、5.TLB、6.页表
linux·运维·服务器
Techblog of HaoWANG1 小时前
Ubuntu 下将 Ollama 服务配置为监听 0.0.0.0:11434 完整实践
linux·数据库·ubuntu·ollama