shell入门基础命令和简单操作

本次给小伙伴们分享一下shell的入门级别的一些命名,和一些简单操作。

1、shell中经常使用的内部命令:

echo,eval,exec,export,read,shift,exit。

echo:

echo可在屏幕上输出信息,一般使用方法:

 

echo还有些参数选项,有以下常用的:

-n        不换行输出内容:

-e        解析转义字符:

还有:

\n         换行 ;        \r         回车 ;        \t         制表符
\b         退格 ;        \v         纵向制表符
eval:
命令格式:eval args
功能:当shell程序执行到eval语句时,shell读入参数args,并将它们组合成一个新的命令,然后执
行。使用方法:

可以看到我们定义了一个变量a,我们使用eval引用变量,结果变量a组合成了两个命令。

export:

export设置或者显示环境变量,declare也是可以设置环境变量:

 我们查看一下我们设置的环境变量,直接用export就行:

read:

read命令可从标准输入读取字符串等信息,传给shell程序内部定义的变量。

-p   prompt:设置提示信息

-t    timeout:设置输入等待时间,单位默认为秒

具体操作:

shift:

在程序中每使用一次shift语句,都会使所有的位置参数依次向左移动一个位置,并使位置参
数$#减1,直到减到0为止。 

exit:
退出shell 程序。在 exit 之后可以有选择地指定一个数作为返回状态,用法:
创建一个.sh文件,写入内容:

运行脚本:可以看到我们可以修改脚本运行后,所报告的数字:

下面是read的操作:

使用read从标准输入到读取两个变量,name1和name2,要求name2包含空格:

 开始name2是没有空格的,给name2添加空格:

自定义环境变量:

可以使用export和declare来自定义环境变量: 

查看自己定义的环境变量:用export即可:

 

执行脚本的方式及特点,用例子验证:

1、 bash ./filename.sh (产生子进程,再运行,使用当前指定的 bash shell 去运行)
2、 ./filename.sh (产生子进程,再运行,使用脚本里面指定的 shell 去运行。使用该种方式执行需         要 x 权限)
3、source ./filename.sh source 命令是一个 shell 内部命令,其功能是读取指定的 shell 程序文件,       并 且依次执行其中的所有的语句,并没有创建新的子shell 进程,所以脚本里面所有创建的变          量都会保存到当前的shell 里面)
4、.filename.sh (和 source 一样,也是使用当前进程执行)
运用bash来执行脚本:
先创建一个脚本文件,并执行文件:

文件内容:

 

在运行之前查看进程,运行的时候查看进程,发现多了个进程:说明产生了子进程:

 

使用./来运行脚本

先创建脚本文件,并执行脚本:

在运行之前查看进程,运行的时候查看进程,发现多了个进程:说明产生了子进程:

使用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”…的形式返回所有的值

继续在刚才的文件上添加:

 在深入的讨论一下:

在运行脚本:

 

本次分享结束!感谢!

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值