bash shell学习日记番外 之脚本shell概述与bashshell脚本脚本写法格式

一.shell脚本理论介绍
1.计算机体系结构包括:硬件与软件

2.软件结构及重要位置:软件又分为系统软件和应用软件负责对硬件进行管理与操作的是系统软件内核部分,用户和操作系统之间的一个命令解释器。

3.用户是无法与硬件或内核打交道:shell使用户能使用硬件或内核:

4.centos7使用的shell脚本类型:

/bin/sh
/bin/bash
/bin/tcsh
/bin/csh

/etc/shells 文件说明了当前系统有那些可用的shell.不同的系统有不同操作方法及特点centos默认使用shell为例讲解,也即是Bash

 

二.脚本写法格式(基础注意事项及格式):
SHELL编程注意事项

shell命名:shell脚本名称命名一般为英文,大写,小写。后缀以 .sh

不能使用特殊符号,空格

shell编程,首行 #!/bin/bash变量不能以数字,特殊符号开头。可以使用下划线_,但是不能使用破折号----

2.1 #!/bin/bash
如果进入脚本后开头不按照 “#!/bin/bash”形式写会出现问题

[root@localhost /]# vim Hello.sh

#!/bin/bash #开头格式

echo "hello world" #内容

[root@localhost /]# ll Hello.sh #查看是否Hello.sh是否创建完毕,及权限(权限文章博客有)

-rw-r--r--. 1 root root 32 3月 16 23:01 Hello.sh

[root@localhost /]# chmod +x Hello.sh #赋予执行权限

[root@localhost /]# ll Hello.sh #查看赋予的权限

-rwxr-xr-x. 1 root root 32 3月 16 23:01 Hello.sh

[root@localhost /]# ./Hello.sh #./+创建脚本名及为执行脚本

hello world #执行结果

2.2 echo的用法及解析:

使用echo命令创建一个脚本文件菜单功能描述:echo命令主要用来显示字符串信息

格式:echo 选项 字符串

用法示例:

复制代码
[root@localhost /]# vim echo_menu.sh
[root@localhost /]# bash echo_menu.sh 
1.查看网卡信息
2.查看内存信息
3.查看磁盘信息
4.查看CPU信息
5.查看账户信息
 
[root@localhost /]# vim echo_menu.sh
[root@localhost /]# chmod +x echo_menu.sh 
[root@localhost /]# echo "\t"
\t
[root@localhost /]# echo -e "hello\tworld"
hello    world
[root@localhost /]# echo -e "helle\bo world"
hello world
复制代码

echo -e

可以让echo命令 时候识别 \ 后面的转义符号的含义如下:

 

 

复制代码
 1 [root@localhost /]# echo "\t"
 2 \t
 3 [root@localhost /]# echo -e "hello\tworld"
 4 hello    world
 5 [root@localhost /]# echo -e "helle\bo world" 
 6 hello world
 7 [root@localhost /]# echo -e "helle\bi world" 
 8 helli world
 9 [root@localhost /]# echo -e "helle\2bo world" 
10 helle\2bo world
11 [root@localhost /]# echo -e "helle\boo world" 
12 helloo world
13 [root@localhost /]# echo -e "helle\b\bo world" 
14 helo world
15 [root@localhost /]# echo -e "helle\b\b\bo world" 
16 heo world
17 [root@localhost /]# echo -e "helle\b\b\b\bo world" 
18 ho world
19 [root@localhost /]# echo -e "hello\fworld"
20 hello
21      world
22      [root@localhost /]# echo -e "hello\rworld"
23 world
24 [root@localhost /]# echo -e "\\"
25 \
26      
27  
28 [root@localhost /]# echo  -e "\033[1mOK"
29 OK
30 [root@localhost /]# echo -e  "\e[1mOK\e[0m"
31 OK
32 [root@localhost /]# echo -e  "\e[4mOK\e[0m"
33 OK
34 [root@localhost /]# echo -e  "\e[3mOK\e[0m"
35 OK
36 [root@localhost /]# echo -e  "\e[2mOK\e[0m"
37 OK
38 [root@localhost /]# echo -e  "\e[9mOK\e[0m"
39 OK
40 [root@localhost /]# echo -e  "\e[8mOK\e[0m"
41 OK
42 [root@localhost /]# echo -e  "\e[7mOK\e[0m"
43 OK
44 [root@localhost /]# echo -e  "\e[5mOK\e[0m"
45 OK
46 [root@localhost /]# echo -e "\e[30mOK\e[0m"
47 OK
48 [root@localhost /]# echo -e "\e[31mOK\e[0m"
49 OK
50 [root@localhost /]# echo -e "\e[33mOK\e[0m"
51 OK
52 [root@localhost /]# echo -e "\e[32mOK\e[0m"
53 OK
54 [root@localhost /]# echo -e "\e[34mOK\e[0m"
55 OK
56 [root@localhost /]# echo -e "\e[35mOK\e[0m"
57 OK
58 [root@localhost /]# echo -e "\e[36mOK\e[0m"
59 OK
60 [root@localhost /]# echo -e "\e[37mOK\e[0m"
61 OK
62 [root@localhost /]# echo -e "\e[1;33mOK\e[0m"
63 OK
64 [root@localhost /]# echo -e "\e[42mOK\e[0m"
65 OK
66 [root@localhost /]# echo -e "\e[44mOK\e[0m"
67 OK
68 [root@localhost /]# echo -e "\e[32;44mOK\e[0m"
69 OK
复制代码

 

2.3  printf 格式 参数

 

实例:

 

复制代码
 1 [root@localhost /]# printf "%d" 12
 2 12[root@localhost /]# printf "%d" jerry
 3 bash: printf: jerry: 无效数字
 4 [root@localhost /]# printf "%5d" 12
 5    12[root@localhost /]# printf "%7d" 12
 6      12[root@localhost /]# printf "%-7d" 12
 7 12     [root@localhost /]# printf "%-5d" 12
 8 12   [root@localhost /]# 
 9 [root@localhost /]# printf  "|%-10d|\n" 12
10 |12        |
11 [root@localhost /]# printf  "|%10d|\n" 12
12 |        12|
13 [root@localhost /]# printf  "|%10d|\n" 12p^C
14  
15 [root@localhost /]# printf "%o\n" 10
16 12
17 [root@localhost /]# printf "%x\n" 10
18 a
19  
20 [root@localhost /]# print "%d\n" 9223372036854775808
21 bash: print: 未找到命令...
22 [root@localhost /]# printf "%d\n" 9223372036854775808 
23 bash: printf: 警告: 9223372036854775808: 数值结果超出范围
24 9223372036854775807
25 [root@localhost /]# printf "%u\n" 9223372036854775808 
26 9223372036854775808
27 [root@localhost /]# printf "%f\n" 3.88
28 3.880000
29 [root@localhost /]# printf "%d\n" 3.88
30 bash: printf: 3.88: 无效数字
31 3
32 [root@localhost /]# printf "%.3f\n" 3.88
33 3.880
34 [root@localhost /]# printf "%.4f\n" 3.88
35 3.8800
36 [root@localhost /]# printf "%.5f\n" 3.88
37 3.88000
38 [root@localhost /]# printf "|%8.3f|\n" 3.88
39 |   3.880|
40 [root@localhost /]# printf "|%-8.3f|\n" 3.88
41 |3.880   |
42 [root@localhost /]# printf "%s\n" "hello"
43 hello
44 [root@localhost /]# printf "|%10s|\n" "hello"
45 |     hello|
46 [root@localhost /]# printf "|%-10s|\n" "hello"
47 |hello     |
48 [root@localhost /]# printf "%s\t\t%s\n"  "hello"  "word"
49 hello        word
复制代码

 

posted @   LIU-GC  阅读(194)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示