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
相关推荐
kaixin_啊啊1 小时前
【用于更准确 G×E 基因组预测的大规模作物数据集与基于深度学习的多模态融合框架】论文学习
人工智能·深度学习·学习
xier_ran1 小时前
【infra之路】AI 编译器学习笔记(六):重拾 C++——lambda 与 MLIR 中的回调
c++·笔记·学习
倒头就睡的小比特2 小时前
Linux基础指令3
linux·服务器
梦帮科技2 小时前
Kali Linux Scapy 畸形报文构造学——深度解剖非法 TCP Flags 与反常序列号
linux·爬虫·神经网络·算法·数学建模·系统架构·模拟退火算法
半杯咖啡半行码3 小时前
Linux 驱动开发入门:内核模块编程基础
linux·服务器·网络
别动我齐刘海3 小时前
Linux 系统调试学习2
linux·运维·c++·人工智能·学习·机器学习·机器人
龙虾电话3 小时前
语音机器人打断不进去:VAD 双阈值迟滞里一个共用的 bool,和它引发的连锁误判
linux
honsor4 小时前
机房IP化改造首选:以太网温湿度传感器,PoE供电+Modbus TCP一网搞定
linux·运维·服务器
m4Rk_4 小时前
【论文阅读】Agent 记忆机制(99):PrisMem——从整体分数搜索走向能力驱动的记忆自进化
论文阅读·人工智能·学习·开源·github
默|笙4 小时前
【Linux网络】_udp_socket(认识)
linux·网络·udp