企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[TOC] > # 使用rev命令 ``` echo " abcde" | rev ``` **说明** 1) rev命令可以对字符串进行反转 2) rev命令还可以对一个或多个文件进行反转 > # 利用sed命令s参数来替换 ![](https://img.kancloud.cn/dc/a7/dca7cab99148a8f74136d75e99d5f378_1138x357.png) **备注** 1) (.)-->正则表达式中分组匹配,匹配到之后在用具体位置参数\\3\\2\\1来实现反转 2) 同时使用-r参数,表示扩展正则表达式,那样的话,就无需使用反斜杠来转译了 > # 利用awk命令 ``` #!/usr/bin/env bash #------------------------------------------------------- # FileName : t.sh # Author :hpy # Date :2020年10月22日 # Description : #------------------------------------------------------- s=abc.yhp.txt a=$(echo $s | awk '{for(i=1;i<=length;i++){line=substr($0,i,1) line}} END{print line}') echo $a ``` **备注** 1) substr($0,i,1),表示取当前字符从索引i开始,取当前位 2) length即当前字符串的长度,即3 3) line=substr($0,i,1) line;将三个值分别保持在内存栈中,到时候打印出来就成CBA substr($3,6,2)   --->  表示是从第3个字段里的第6个字符开始,截取2个字符结束. substr($3,6)     --->  表示是从第3个字段里的第6个字符开始,一直到结尾 > # 使用python工具 ``` #!/usr/bin/env bash #------------------------------------------------------- # FileName : t.sh # Author :hpy # Date :2020年10月22日 # Description : #------------------------------------------------------- s=abc.yhp.txt a=$(echo $s | python -c 'print raw_input() [::-1]') echo $a ``` > # 使用Perl工具 ``` s=abc.yhp.txt a=$(echo $s | perl -nle 'print scalar reverse $_') echo $a ``` **备注** 1) print scalar reverse $\_ 将管道传递过来的字符串传到默认标量$\_,再用reverse取反 2) -e 让Perl程序可以在Perl命令行中运行,比如:  perl -e 'print "Hello,World!\\n"' 3) -n 增加了循环功能,可以一行行处理文本 4) -l 用来给每行增加一个换行符"\\n" > # 使用bash实现 ``` s=abc.yhp.txt len=${#s} a=`for((i=len;i>=0;i--));do echo -n ${s:i:1} ;done ;echo -e "\n"` echo $a ``` **备注** 1) ${STR:i:1},字符串取索引,长度为,分别取到D,C,B,A 2) -n --> 取消换行符  3) -e --> 对换行符等特殊字符进行转译