入门shell,了解基础命令,一天开始编写shell脚本
小华带你入门shell,了解基础命令,一天开始编写shell脚本题目1.命令使用:echo、eval、exec、export、read、shift、exit(要求退出码为222) 这些命令的功能,以及用例
2.使用read从标准输入读取两个变量: name1和name2, 要求name1包含空格
3.定义自定义环境变量:(使用export和declare)
针对root用户的所有连接:root_data=root
针对所有用户的变量: all_data=all
查看所有的环境变量, 查看所有变量
4.脚本执行的方式及特点:用样例验证
5.设置vim编辑sh文件的缩进为4个空格
6.KaTeX parse error: Expected 'EOF', got '#' at position 1: #̲,*, @ , @, @,n,$?的使用
一、shell的功能
Shell又称命令解释器,它能识别用户输入的各种命令,并传递给操作系统。它的作用类似于 Windows操作系统中的命令行,但是,Shell的功能远比命令行强大的多。在UNIX或者localhost中, Shell既是用户交互的界面,也是控制系统的脚本语言。 二、shell脚本编写规范
(1)脚本文件名应见名知意,例如backup_mysql.sh
(2)文件开头指定脚本解释器 #!/bin/sh 或 #!/bin/bash
(3)开头加版本特权等信息
(4)脚本中尽量不要用中文注释 别吝啬添加注释,必要的注释方便自己别人理解脚本逻辑和功能; 尽量用英文注释,防止本机或切换系统环境后中文乱码的困扰; 单行注释,可以放在代码行的尾部或代码行的上部; 多行注释,用于注解复杂的功能说明,可以放在程序体中,也可以放在代码块的开始部分。
(5)多使用内部命令 常用的内部命令有:echo、eval、exec、export、read、shift、exit 三、命令使用:echo、eval、exec、export、read、shift、exit(要求退出码为222) 这些命令的功能,以及用例
echo
可在屏幕上输出信息
示例
@server day01]# echo -n I ; echo love ; echo xiaohua
Ilove
xiaohua
# echo -n I ; echo -n love ; echo xiaohua
Ilovexiaohua
# echo -e "I\tlove\txiaohua"
I love xiaohua
eval
命令格式:eval args
功能:当shell程序执行到eval语句时,shell读入参数args,并将它们组合成一个新的命令,然后执 行。
# a='information;head -1 /etc/passwd'
# echo $a
information;head -1 /etc/passwd
# eval echo $a
information
root:x:0:0:root:/root:/bin/bash
export
设置或者显示环境变量
示例
# var_a=123456 //定义变量
# export var_a //把var_a变为环境变量
# var_b=321 //定义变量var_b
# bash //进入一个子进程
# echo $var_a ; echo $var_b //输出var_a、var_b
123456 // var_a的值 // 变量var_b没有值
# unset var_a //删除变量var_a
# echo $var_a
#
read
命令可从标准输入读取字符串等信息,传给shell程序内部定义的变量。
-p prompt:设置提示信息
-t timeout:设置输入等待时间,单位默认为秒 示例:# read -t 10 -p "please input your name:" name
please input your name:xiaohua
# echo $name
xiaohua
//使用read从标准输入读取两个变量: name1和name2, 要求name1包含空格
# read name1;read name2
xiaohua
xiaoming
# echo $name1 ;echo $name2
xiao hua
xiaoming
shift
在程序中每使用一次shift语句,都会使所有的位置参数依次向左移动一个位置,并使位置参 数$#减1,直到减到0为止。 exit,退出shell程序。在exit之后可以有选择地指定一个数作为返回状态
# vim test01.sh
#!/bin/bash
#########################
#File name:test.sh
#Version:v1.0
#Email:admin@test.com
#Created time:2022-08-16 13:24:31
#Description:
#########################//内容如下
shift
echo $@
# bash test01.sh 11 22 33 44
22 33 44
Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。 Shell 编程跟 JavaScript、php 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。 变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。 使用一个定义过的变量,只要在变量名前面加美元符号即可 我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n。n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推…… Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出 shell脚步还是比较复杂的。 这个是电脑运行的脚步的吗?
这个怎么传递参数到命令? 串口运行shell的。
页:
[1]
2