[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