[xmtx]$ abc='2019'
[xmtx]$ echo $abc
2019
[xmtx]$ echo $abc"-02-01"
2019-02-01
[xmtx]$ d=$abc"-02-01"
[xmtx]$ echo $d
2019-02-01
[xmtx]$ date --date=$d + %Y # + 号后面不能有空格
date: 额外的操做数 "%Y" 请尝试执行"date --help"来获取更多信息。
[xmtx]$ date --date=$d +%Y
2019
[xmtx]$ date --date=$d +%Y%m
201902
[xmtx]$ date --date=$d +%Y-%m
2019-02
[xmtx]$ date --date=$d +%Y-%m-%d
2019-02-01
[xmtx]$ date --date=$d +%Y-%m%d
2019-0201
[xmtx]$ date --date=$d +%m%d
0201
[xmtx]$ echo $d | tr -d -
20190201
[xmtx]$ s=`echo $d | tr -d -`[xmtx]$ echo $s
20190201
一、参数 -s html
-s: squeeze-repeats,用SET1指定的字符来替换对应的重复字符shell
能够使用这一特色,删除文件中的空白行,实质上跟上面同样,都是用SET1指定的字符来替换对应的重复字符测试
[xmtx]$ cat b.txt | tr -s ["\n"] #去除空白行 [xmtx]$ echo "aaaab b bs gd fddd" |tr -s [ ] #空格须要 用双引号括起来 aaaab b bs gd fddd [xmtx]$ echo "aaaab b bs gd fddd" |tr -s [" "] aaaab b bs gd fddd
-d: 删除字符spa
-d:delete,删除SET1中指定的全部字符 code
[xmtx]$ echo 2019-01-02 |tr -d - #删除日期的杠杠 20190102 [xmtx]$ echo "a12HJ13fdaADff" | tr -d "[a-z][A-Z]" #删除大小写字母 1213 [xmtx]$ echo "a1213fdasf" | tr -d [adfs] 1213 [xmtx]$ echo "a1213fdasf" | tr -d [adf] 1213s [xmtx]$ echo "a1213fdasf" | tr -d [dfs] a1213a
-t 字符替换 : set1 set2htm
-t:truncate,将SET1中字符用SET2对应位置的字符进行替换,通常缺省为-tblog
能够利用这一特色,实现大小字母的转换get
[xmtx]$ echo "Hello World I Love You" |tr -t [a-z] [A-Z] HELLO WORLD I LOVE YOU [xmtx]$ echo "Hello World I Love You" |tr -t [A-Z] [a-z] hello world i love you
3.4 字符补集替换 set1 set2变量
-c:complement,用SET2替换SET1中没有包含的字符【除了set1 的字符,其余的都换成set2】date
[xmtx]$ cat a Monday 09:00 Tuesday 09:10 Wednesday 10:11 Thursday 11:30 Friday 08:00 Saturday 07:40 Sunday 10:00 [xmtx]$ cat a | tr -c "[a-z][A-Z]" "#" | tr -s "#" | tr -t "#" "\n" Monday Tuesday Wednesday Thursday Friday Saturday Sunday [xmtx]$ cat a |tr -cs "[a-z][A-Z]" "\n" Monday Tuesday Wednesday Thursday Friday Saturday Sunday
#!/bin/sh #本脚本测试shell脚本中整型变量自增 加1的几种方法 #定义整型变量 a=1 echo $a #第一种整型变量自增方式 a=$(($a+1)) echo $a #第二种整型变量自增方式 a=$[$a+1] echo $a #第三种整型变量自增方式 a=`expr $a + 1` echo $a #第四种整型变量自增方式 let a++ echo $a #第五种整型变量自增方式 let a+=1 echo $a #第六种整型变量自增方式 ((a++)) echo $a