小试牛刀-1.1-2

1、shell环境使得用户能与操作系统的核心功能进行交互;编写脚本通常使用某种基于解释器的编程语言。

2、shell脚本通常是一个以#!/bin/bash起始的文本文件,其中#!位于解释器路径之前。/bin/bash是Bash的解释器命令路径

有两种方式运行脚本:a、将脚本作为bash的命令行参数;eg:bash script.sh;b、授予脚本执行权限,将其变为可执行文件。eg:chmod a+x script.sh     ./script.sh

3、在bash中,每个命令或是命令序列是通过使用分号或换行符来分隔的。eg:$ cmd1;cmd2

等价于

$cmd1

$cmd2

4、终端打印:用户可以通过终端与shell环境进行交互;在终端中打印文本是绝大多数shell脚本和工具日常需要执行的基本任务。

a、echo是用于终端打印的基本命令。在默认情况下echo在每次调用后会添加一个换行符

b、echo输出可以使用带双引号的文本、不带引号的文本以及带单引号的文本。三者的区别

i)使用不带引号的echo时,没法在所要显示的文本中使用分号(;),因为分号在Bash shell中被用作命令定界符。

ii)变量替换在单引号中无效。

iii)在双引号中要打印特殊字符如”!“,需要添加转义字符"\"

c、另一可用于终端打印的命令是printf。它使用的参数和C语言中的printf函数一样。eg:printf ”hello world!\n“

printf使用引用文本由空格分隔的参数。也可以在printf中使用格式化字符串,还可以指定字符串的宽度、左右对齐方式等。eg:printf  "%-5s %-10s %-4.2f\n" 1 James 90.9989

其中,%-5s指明了一个格式为左对齐且宽度为5的字符串替换(-表示左对齐,默认采用右对齐)。

d、在echo中转义换行符:默认情况下,echo会将一个换行符追加到输出文本的尾部。可以使用-n来忽略结尾的换行符。echo同样接受双引号字符串内的转义序列作为参数。如果需要使用转义序列,则采用echo -e "包含转义序列的字符串",eg:echo -e "1\t2\t3" 结果:1        2   3

e、打印彩色输出:使用转义序列来完成彩色输出,每种颜色都有对应的颜色码,比如:重置=0,黑色:30,红色=31,绿色=32,黄色=33等

打印彩色文本,输入下列命令:

echo -e "\e[1;31m this is red test \e[0m" 

\e[1;31将颜色设为红色,\e[0m将颜色重新置回。只需要将31替换 成想要的颜色码就可以了

打印彩色文本

echo -e "\e[1;42m Green background \e[0m"

 

posted on   gary_123  阅读(185)  评论(0编辑  收藏  举报

编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示