bash
jjt_!!
这个作者很懒,什么都没留下…
展开
-
bash借助python格式化展示json格式的数据
正常清空下,bash无法格式化展示json数据。可借助python的json工具(通过管道使用python -mjson.tool),将数据以json格式返回使用示例:curl -u user:passward -X POST -H 'Content-Type: application/json' -d '{"type":"page","title":"new page", "space":{"key":"~t_zhangaj"},"body":{"storage":{"value":"<.原创 2022-02-28 17:21:16 · 777 阅读 · 0 评论 -
提取文件名和目录
提取文件名和目录,除了使用#,%,*对路径进行分割外,还有针对性的命令basename 根据路径获取文件名,包含后缀;dirname 根据路径获取文件所在目录;[dps@ccod131 bak]$ file=file1/file2/file3/file.txt[dps@ccod131 bak]$ basename ${file}file.txt[dps@ccod131 bak]$ dirname ${file}file1/file2/file3[dps@ccod131 bak]$ ec原创 2021-02-07 11:24:29 · 308 阅读 · 0 评论 -
查看修改时间和时区
参考链接https://www.cnblogs.com/zhi-leaf/p/6282301.html常用的修改时间的命令是:datecentos7以后,新产生一个工具timedatectl,可以用来查看修改时间和时区timedatectl Local time: 二 2018-09-18 10:54:02 CST Universal time: 二 2018-09-18 02:54:02 UTC RTC time: 二 2018-09-18 02:53:57原创 2021-02-07 11:20:35 · 144 阅读 · 0 评论 -
过滤器--xargs
args命令 是给其他命令传递参数的一个过滤器,也是组合多个命令的一个工具。它擅长将标准输入数据转换成命令行参数,xargs能够处理管道或者stdin并将其转换成特定命令的命令参数。xargs也可以将单行或多行文本输入转换为其他格式,例如多行变单行,单行变多行。xargs的默认命令是echo,空格是默认定界符。这意味着通过管道传递给xargs的输入将会包含换行和空白,不过通过xargs的处理,换行和空白将被空格取代。xargs是构建单行命令的重要组件之一。xargs用作替换工具,读取输入数据重新格式化.原创 2021-02-07 11:22:19 · 136 阅读 · 0 评论 -
bash-进制转换
十进制转其他进制echo "obase=16;3268437401835405340"|bc2D5BD2800300001Cobase 后边输入要转换的进制;其他进制转10进制((num=2#1001));echo $num;9其他进制转10进制,例子是2进制转10进制;若要将16进制转化为10进制,就将上例中的2换成16;...原创 2021-01-25 10:57:58 · 249 阅读 · 0 评论 -
循环控制
for循环1.列表for循环在训后后边输入列表,可以是数字,或其他的列表等数字支持 {1…5},这种格式,起点 1,终点 5,步长 1;也可以指定步长{1…5…2} 起点 1,终点 5,步长 2;同时可以使用seq {seq 1 2 5} 起点 1,步长 2,终点 5;同时也支持读入命令,或正则表式。也可以直接输入一段内容,用分号隔开;支持读入启动脚本时,在后边跟的位置参数;#脚本[dps@ccod131 bak]$ cat for_canshu.sh #!/bin/bash#原创 2021-01-25 10:56:09 · 462 阅读 · 0 评论 -
重定向
参考链接:1.http://www.cnblogs.com/chengmo/archive/2010/10/20/1855805.html2. http://www.cnblogs.com/lovemo1314/archive/2011/07/13/2105472.html3. https://blog.csdn.net/zongshi1992/article/details/71693045linux的数据流包括:模式代表符方式标准输入0<标准输出1&g原创 2021-01-25 10:44:38 · 127 阅读 · 0 评论 -
读取键盘输入
read命令接收标准输入(键盘)的输入,或其他文件描述符的输入(后面在说)。得到输入后,read命令将数据放入一个标准变量中。常用的参数:参数作用-p提示语句-t等待时间-s不回显#脚本[dps@ccod131 bak]$ cat read.sh #!/bin/bashread -p "please input:" nameecho "$name"#执行效果[dps@ccod131 bak]$ bash read.sh please input原创 2021-01-25 10:42:59 · 202 阅读 · 0 评论 -
IFS(内部域分隔符)
IFS(Internal Field Seprator) ,内部域分隔符IFS 是一种 set 变量,当 shell 处理"命令替换"和"参数替换"时,shell 根据 IFS 的值,默认是 space, tab, newline 来拆解读入的变量,然后对特殊字符进行处理,最后重新组合赋值给该变量。修改IFS的默认值,可以修改域的分割方式,和awk中的F参数一样的效果#脚本[dps@ccod131 bak]$ cat ifs.sh #!/bin/bashIFS_OLD=$IFSIFS='1'原创 2021-01-25 10:41:27 · 368 阅读 · 0 评论 -
通配符
shell因为有通配符才强大通配符列表:通配符意义*匹配任意多个字符,包含0个和1个?匹配任意一个字符,不包含0个[chart]匹配任意一个属于字符集的字符[!chart]匹配任意一个不属于字符集的字符[[::]]匹配任意一个属于字符类的字符常用的字符类列表:字符类意义[:alnum:]匹配任意一个字母或数字[:alpha:]匹配任意一个字母[:digit:]匹配任意一个数字[:lower:]匹配原创 2021-01-25 10:40:43 · 82 阅读 · 0 评论 -
扩展
路径名扩展使用通配符来查找路径名ls * 当前路径下的所有文件ls -d .[!.]?* 当前路径下的所有隐藏文件,不包含.和..波浪线扩展回归家目录cd ~ 回归当前用户家目录,波浪线可以省略;cd ~dcmse 回到用户dcmse的家目录花括号扩展before{a,b,c}aftertouch a{1,2,3}b 以“,”分隔,创建3个文件touch a{5..7}b 连续的数字或字母算术扩展可以进行+,-,*,/,%,**,可叠加$(()) 表示算术表达式原创 2021-01-25 10:40:06 · 105 阅读 · 0 评论 -
正则表达式
为了更好的处理文本的一种表达式,其匹配方式分为“文本字符”匹配和“元字符”匹配正则表达式,相对于通配符而言,是一种精确匹配元字符正则表达式可分为基本正则表达式(BRE)和扩展正则表达式(ERE)基本正则表达式(regexp)的元字符比扩展正则表达式的元字符少基本正则表达式的元字符包括.(点字符) ^(开头) $(结尾) [](匹配其中任意一项) - (连字符)*(限定符,0次或多次)扩展表达式元字符,包含所有的基本表达式元字符,并包含下述元字符|(或) ?(限定符,0次或1次) +(限定符,一原创 2021-01-25 10:39:25 · 219 阅读 · 0 评论 -
文件对比(diff),替换(sed)
diff 检查两个文件的不同之处sed 流式文本编辑器tr 替换diff检测两个文件的不同,常用格式diff -u file1 file2[dps@ccod131 bak]$ diff -u test11.txt test12.txt --- test11.txt 2018-11-27 14:12:56.189972213 +0800+++ test12.txt 2018-11-27 14:12:36.294972247 +0800@@ -1,3 +1,3 @@ 2018.11.原创 2021-01-25 10:37:04 · 755 阅读 · 0 评论 -
搜索(find,locate),执行(exec),确认(ok),
find在指定目录下查找文件,基本格式:find(选项)(参数),另一种写法:find path -option [ -print ] [ -exec -ok command ] {} \;具有多个test参数参数作用-name根据文件名查找-type根据文件类型查找:f(文件),d(路径)-regex匹配正则表达式-i不区分大小写!表示否定,取反-maxdepth 3查找文件深度,这里是三层-size根据文件大小-delet原创 2021-01-25 10:29:23 · 184 阅读 · 0 评论 -
归档压缩
tar归档工具常用参数:参数意义-f文件别名,归档后文件的内容-c归档-x解归档-v显示详细信息-r新增文件到归档文件中-u更新某一个归档文件-z使用gzip方式来压缩/解压 .tar.gz-j小写j代表用bzip2算法来压缩/解压 .tar.bz2-J大写J代表用xz算法来压缩/解压 .tar.xz-p保留文件权限–exclude排除某个文件归档-C特定目录解压缩#打包1. tar原创 2021-01-23 16:18:30 · 127 阅读 · 0 评论 -
条件控制
参考链接:https://blog.csdn.net/jasonzeng/article/details/53286384https://www.tuicool.com/articles/m6zqyqhttps://cnbin.github.io/blog/2015/06/30/bash-tiao-jian-pan-duan/http://www.linuxdiyf.com/viewarticle.php?id=105505IF条件判断语法模式:if [ command ]; then原创 2021-01-23 16:17:53 · 184 阅读 · 0 评论 -
Linux—shell$( )与``;字符串的分割,替换,截取
参考链接:https://blog.csdn.net/number_0_0/article/details/73291182https://blog.csdn.net/u013402321/article/details/80333272$()和``他们是一样的使用效果,用来作命令替换的.建议使用$()[kafka@kafka001 kafka_2.11-0.8.2.2]$ echo $(ls)bin config libs LICENSE log logs NOTICE[kafka@k原创 2021-01-23 16:17:08 · 431 阅读 · 0 评论 -
curl http请求,wget和curl
参考链接:http://www.aiezu.com/system/linux/linux_curl_syntax.htmlhttp://www.aiezu.com/system/linux/linux_curl_syntax.htmlcas:https://blog.csdn.net/lishe9452/article/details/79972203https://blog.csdn.net/zx_water/article/details/78894199get请求,带参数curl -d原创 2021-01-23 16:16:06 · 704 阅读 · 0 评论 -
排序,去重
排序使用命令sort默认按字母列表排序参数-n可设置按照数值排序;参数-r可设置按照逆序排序;参数-k可设置按及具体的列排序参数-b可从第一个非空字符开始排序;参数-t可设置分界符# -k 表示第几列,-n 表示按照数值大小排序[dps@ccod131 bak]$ ll | sort -k 7n总用量 88-rw-rw-r-- 1 dps dps 140 11月 5 17:42 if_file.sh-rw-rw-r-- 1 dps dps 240 11月 15 04:17 s原创 2021-01-23 16:14:21 · 122 阅读 · 0 评论 -
引用---单引号,双引号和反斜杠
双引号会使文本以字符的形式展示,会过滤部分扩展,但是参数扩展,算数扩展和命令替换依然有效($,``,\)单引号抑制所有的扩展反斜杠转义字符,可以限制一些双引号中的扩展实例1:变量嵌套:可以通过抑制外层的扩展和eval命令实现[portal@ccodtk test]$ cat test1.sh #!/bin/bashset -xueo pipefaila_config="{a1,a2}"app1_config=\${${1}_config}echo $app1_config原创 2021-01-23 16:13:15 · 2513 阅读 · 0 评论 -
here文档
一种特殊的重定向基本格式:command << tokentexttokencommand是接受标准输入的命令名;token是用来指示嵌入文本的结尾;text文本内容;注意:token必须在一个单独的行中出现,且文本行的末尾无空格;在here文档中,引号失去其特殊含义;<<- 忽略文本中的Tab字符;<< 'token'可忽略命令替换,使其不进行任何转移;实例1:忽略制表符cat <<- HELP 该文件目的在于对镜像原创 2021-01-23 16:11:09 · 127 阅读 · 0 评论 -
带有交互式的编程对话---expect
expect不是默认的系统安装包,需要额外安装:#检查时候安装rpm -qa | grep expect#安装yum install expect#搜索位置which expect主要命令expect实现交互式变成对话,主要依赖于4个命令,这些命令都是expect这个包自带的。spawn 要执行的命令expect 等待命令提示信息的出现,也就是捕捉用户输入的提示。包含即可send 向屏幕输入字符串。相当于出现提示后,手动输入的内容interact/expect eof 其中原创 2021-01-23 15:47:36 · 220 阅读 · 0 评论 -
shell中给变量设置默认值
b变量为null时,var=avar=${b-a}b变量为NULL且为空字符串时,var=avar=${b:-a}注意 当变量为${1-9}时,不存在第二种情况特殊含义$$ 当前shell进程id$0 当前脚本文件名称$# 传递给函数或脚本的参数个数∗或*或∗或@ 传递给函数或脚本的所有参数,“KaTeX parse error: Undefined control sequence: \* at position 1: \̲*̲”返回一个字符串,“@”返回一个列表$? .原创 2021-01-23 15:45:24 · 1567 阅读 · 0 评论