shell
桃李醉东风
真正的大师都有一颗学徒的心
展开
-
shell从文件里读出来的带换行符。当成变量打印异常
shell从文件里读出来的带换行符。当成变量打印异常1. 问题1. 问题testVar=value123echo $testVar got it总是打印got it23解决MY_NEW_VAR=$(echo $testVar | sed -e 's/\r//g')echo $MY_NEW_VAR got it原创 2021-05-28 11:21:09 · 416 阅读 · 0 评论 -
shell循环体内变量传递无效
#!/bin/shtest(){RetVal=0cat 1.log | while read linedo if[ "$line" == "2" ] then RetVal=1 fidonereturn $RetVal}很容易写出上述代码,上述代码返回值始终为0。虽然执行了RetVal=1这条语句,但是一出while循环,变量值又变成0了。这是因为管道是在子shell中执行的,子shell中的变量对于子shell之外的代码块来说, 是不可见的. 当然, 父进程也不能访问这转载 2021-05-27 21:54:21 · 924 阅读 · 0 评论 -
shell脚本中执行时提示“没有那个文件或目录” 或者 $‘\r‘: 未找到命令的解决办法
在执行shell脚本的时候,会出现‘$’\r’: 未找到命令’错误。多半是因为在window系统中写的shell脚本,然后上传到服务器执行。解决办法如下:1、安装dos2unix。#yum install dos2unix2、使用dos2unix对脚本转换。#dos2unix xxx.sh...原创 2021-05-27 19:25:06 · 1831 阅读 · 1 评论 -
在shell中使用 < < EOF EOF简化输入
一、说明在shell脚本中(bash编程),<<EOF表示后续的输入作为子命令或子Shell的输入,直到遇到EOF为止,再返回到主Shell。而EOF可以换成任何其他字符都可以。二、如果在fdisk命令使用<< EOF EOF简化输入,#!/bin/bashfdisk /dev/mmcblk0 <<EOFd3np 3wEOF上面完成的是如下向导的操作:fdisk /dev/mmcblk0执行命令:d (删除分区命令)输入:3 (删除第原创 2020-07-14 10:20:51 · 1161 阅读 · 0 评论 -
使用echo输出带颜色的字体
使用echo输出带颜色的字体一、格式二、参数含义三、示例一、格式linux终端下输出带颜色的文字只需在文字前面添加如下格式\033[显示方式;前景色;背景色m其中\033是ESC健的八进制,\033[即告诉终端后面是设置颜色的参数,显示方式,前景色,背景色均是数字二、参数含义显示方式意义0终端默认设置1高亮显示4使用下划线5闪烁7反白显示8不可见前景色背景色颜色3040黑色31原创 2020-07-14 10:47:50 · 1633 阅读 · 2 评论