本次给小伙伴们分享一下shell的入门级别的一些命名,和一些简单操作。
1、shell中经常使用的内部命令:
echo,eval,exec,export,read,shift,exit。
echo:
echo可在屏幕上输出信息,一般使用方法:
echo还有些参数选项,有以下常用的:
-n 不换行输出内容:
-e 解析转义字符:
还有:
功能:当shell程序执行到eval语句时,shell读入参数args,并将它们组合成一个新的命令,然后执
行。使用方法:
可以看到我们定义了一个变量a,我们使用eval引用变量,结果变量a组合成了两个命令。
export:
export设置或者显示环境变量,declare也是可以设置环境变量:
我们查看一下我们设置的环境变量,直接用export就行:
read:
read命令可从标准输入读取字符串等信息,传给shell程序内部定义的变量。
-p prompt:设置提示信息
-t timeout:设置输入等待时间,单位默认为秒
具体操作:
shift:
在程序中每使用一次shift语句,都会使所有的位置参数依次向左移动一个位置,并使位置参
数$#减1,直到减到0为止。
运行脚本:可以看到我们可以修改脚本运行后,所报告的数字:
下面是read的操作:
使用read从标准输入到读取两个变量,name1和name2,要求name2包含空格:
开始name2是没有空格的,给name2添加空格:
自定义环境变量:
可以使用export和declare来自定义环境变量:
查看自己定义的环境变量:用export即可:
执行脚本的方式及特点,用例子验证:
文件内容:
在运行之前查看进程,运行的时候查看进程,发现多了个进程:说明产生了子进程:
使用./来运行脚本
先创建脚本文件,并执行脚本:
在运行之前查看进程,运行的时候查看进程,发现多了个进程:说明产生了子进程:
使用source来运行脚本:
先创建脚本文件在运行:
发现我们在脚本中定义的变量,在shell当前环境下可以拿到,也没启动子进程。
设置vim编辑sh文件的缩进为4个空格:
进入到~目录下,
创建:vim ~/.vimrc
在文件中添加:
autocmd FileType sh setlocal ai ts=4 sw=2 et
$#,$*,$@,$n,$?的使用:
$#是命令行参数的个数。
$#的用法,创建文件example_3.sh
在文件中写入:
然后运行:
可以看到返回了命令行参数个数为3.
$*:以"参数1 参数2 参数3…"的形式返回所有参数的值。
$n: 表示传递给脚本的第n个参数,例如$1表示第一个参数,$2表示第二个参数,$3表示第三
个参数
用法:
接着上面的文件继续写:
运行该文件:
$@:以“参数1”“参数2”“参数3”…的形式返回所有的值
继续在刚才的文件上添加:
在深入的讨论一下:
在运行脚本:
本次分享结束!感谢!