我是靠谱客的博主 爱撒娇蜻蜓,最近开发中收集的这篇文章主要介绍6.7 认识shell的第一天(echo、eval、export、read、)6.7 认识shell的第一天(echo、eval、export、read、),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

6.7 认识shell的第一天(echo、eval、export、read、)

[root@www ~]# ll -a /bin/sh /bin/bash /usr/bin/sh /usr/bin/bash
-rwxr-xr-x. 1 root root 1596592 8月
30 2019 /bin/bash
lrwxrwxrwx. 1 root root
4 8月
30 2019 /bin/sh -> bash
-rwxr-xr-x. 1 root root 1596592 8月
30 2019 /usr/bin/bash
lrwxrwxrwx. 1 root root
4 8月
30 2019 /usr/bin/sh -> bash

/bin/bash /usr/bin/bash
查看当前系统默认shell

[root@www ~]# echo $SHELL
/bin/bash

1、ming ling 执行圈在反引号中的命令

[root@www ~]# echo "ni shi shei? `ll -a . | head -3`"
ni shi shei? 总用量 200
dr-xr-x---. 17 root root
4096 6月
7 07:16 .
dr-xr-xr-x. 18 root root
235 6月
3 06:52 ..

2、echo 参数选项一 -n

[root@www ~]# echo -n "nishi shei ?"
nishi shei ?[root@www ~]# 
[root@www ~]# echo "nishi shei ?"
nishi shei ?

echo 参数选项二 -e

**eg1:**
[root@www ~]# echo -e "ninshinshein"
ni
shi
shei
[root@www ~]# echo
"ninshinshein"
ninshinshein
**eg2:**
[root@www ~]# echo -e "1t2t3"
1	2	3
[root@www ~]# echo "1t2t3"
1t2t3

3、转义字符 n t

[root@www ~]# echo -e "ninshinshein" ----换行符
ni
shi
shei
[root@www ~]# echo -e "1t2t3"----制表符
1	2	3

4、eval eval语句可以将命令组合再执行

[root@www ~]# c='rqm -qa /httpd;echo $?'
[root@www ~]# eval echo $c
rqm -qa /httpd
0

5、export

[root@www ~]# a=hehe
[root@www ~]# echo $a
hehe
[root@www ~]# bash -----相当于在当前shell环境中又开启了一个新的环境变量
[root@www ~]# echo $a
[root@www ~]# exit
exit
[root@www ~]# echo $a
hehe
[root@www ~]# export a
[root@www ~]# bash
[root@www ~]# echo $a
hehe
[root@www ~]# bash
[root@www ~]# echo $a
hehe

此时开启一个新的shell环境,在先前shell环境之中创建的变量仍然可以使用。
使用export 所代入的变量,可以理解为在当前会话进程中被公开且可以被继承。

6、read 从屏幕读取响应信息赋值给变量

-p 提示信息

[root@www ~]# read -p "print a num:" num

----双引号之后加上空格,代表将字符引用到变量中
print a num:1
[root@www ~]# echo $num
1

给多个变量赋值

[root@www ~]# echo -n "please print num1 num2:";read num1 num2
please print num1 num2:1 2
[root@www ~]# echo $num1
1
[root@www ~]# echo $num2
2

制定定义变量的字符个数

[root@www ~]# read -n 3 var1 -----制定定义var1变量为3个字符变量
sss[root@www ~]# 
[root@www ~]# echo $var1
sss

指定定义变量时变量内容不回显(不显示)

[root@www ~]# read -s var
[root@www ~]# echo $var
nihao
[root@www ~]# 

指定定界符来定义变量,当变量赋值输入完成后写上规定好的定界符则结束变量赋值

[root@www ~]# read -d ":" end 
over:[root@www ~]# echo $end
----over代表给var所赋的值:则代表赋值完毕
over
---指定“:”为结束符,当再次遇到定界符时表示该变量已经赋值完毕
[root@www ]# 

7、shell脚本如何运行

bash XXX.sh

8、shell脚本的退出状态

退出码在0~255之间,代表了上一个命令的运行结果
1、为0:代表命令执行成功
2、非0:代表命令执行不成功,被解释为错误码
echo $?
查看上一个命令的退出码

最后

以上就是爱撒娇蜻蜓为你收集整理的6.7 认识shell的第一天(echo、eval、export、read、)6.7 认识shell的第一天(echo、eval、export、read、)的全部内容,希望文章能够帮你解决6.7 认识shell的第一天(echo、eval、export、read、)6.7 认识shell的第一天(echo、eval、export、read、)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部