小编给大家分享一下shell中重定向、管道和echo 命令的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
shell 中的重定向、管道和 echo 命令
我们看到第一次查找的时候只有 grep mysql 进程存在,在第二次查找的时候一个也没有。grep -v grep 便是将我们进行查找的进程删除掉
下来我们来讲讲 echo 命令。众所周知,echo 是用来打印的。可是它的一些高级操作,你知道吗?接下来我们就来讲讲这个神秘的 echo。
格式:echo [选项][字符,变量....]
选项: -n 不换行输出,echo 默认是输出一次换一行; -e 增强,启用转移字符解析:\a 响铃、 \b 退格、 \c 去除尾部的新行、 \n 新的一行、 \r 回车、 \t 水平制表符、 \\ 斜杠、 \0NN 八进制、 \0xHH 十六进制输出。
举例:echo -e "welcom to \t new world \n shell \\ programming",我们来看看效果
我们看到在第一个 \t 的时候出现了指标符,在 \n 的时候出现了换行符,\\ 是斜杠。
下来看看怎么输出有颜色的字符。前景色:十位数的 3 表示,范围:30-37(3x 表示);背景色:十位数的 4 表示,范围:40-47(4x 表示);个位数表示色彩:30(黑色)、31(红色)、32(绿色)、33(×××)、34(蓝色)、35(洋红)、36(青色)、37(白色)。
举例:echo -e "Network restarting... [\033[32;40m OK \033[0m]",效果如下图所示
下来我们来看看一个 echo 的实际应用。写一个脚本:提示用户输入一个密码,并把密码进行 base64 或 md5 加密,然后将加密后的密码保存到 /home/aston/test/a.txt 文件中。
步骤:1、提示输入密码;2、读取密码;3、对密码进行加密;4、重定向输入到文件;5、查看密码。
1、提示输入密码
#!/bin/bash echo "Please input a password:"
我们来看看效果
我们先来改变它的可执行权限,再来执行。已经实现了上面的第一步。
2、读取密码
#!/bin/bash echo "Please input a password:" read PASS echo "your passwd is: $PASS"
我们来看看结果
已经实现了读取密码的功能。
3、对密码进行加密
#!/bin/bash echo "Please input a password:" read PASS PASS=$(echo $PASS | openssl base64) echo "your passwd is: $PASS"
我们来看看效果
我们看到密码已经实现加密了。
4、重定向输入到文件;5、查看密码。
#!/bin/bash echo "Please input a password:" read PASS echo $PASS | openssl base64 > /home/aston/test/a.txt
我们来看看效果
那么我们肯定不希望在输入密码的时候被别人看到,所以我们得做个处理
!/bin/bash echo "Please input a password:" echo -n -e "\033[30;40m" read PASS echo -e "\033[0m" echo $PASS | openssl base64 > /home/aston/test/a.txt
我们将其背景色设置为黑色,来看看效果
我们看到在输入密码时其背景为黑色,密码还是加密的。此时我们已经学习了 shell 中的管道和 echo 命令,在以后的开发中会更加的方便。
以上是“shell中重定向、管道和echo 命令的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。