青草久久影院-青草久久伊人-青草久久久-青草久久精品亚洲综合专区-SM双性精跪趴灌憋尿调教H-SM脚奴调教丨踩踏贱奴

17站長(zhǎng)網(wǎng)

Linux tr命令是如何使用的

2022-10-18 09:09| 查看: 1634 |來源: 互聯(lián)網(wǎng)

01. 命令概述 tr命令可以對(duì)來自標(biāo)準(zhǔn)輸入的字符進(jìn)行替換、壓縮和刪除。它可以將一組字符變成另一組字符,經(jīng)常用來編寫優(yōu)美的單行命令,作用很強(qiáng)大。 tr的英文 ...

01. 命令概述

tr命令可以對(duì)來自標(biāo)準(zhǔn)輸入的字符進(jìn)行替換、壓縮和刪除。它可以將一組字符變成另一組字符,經(jīng)常用來編寫優(yōu)美的單行命令,作用很強(qiáng)大。

tr的英文全稱是“ transform ”,即轉(zhuǎn)換的意思。tr他只能從標(biāo)準(zhǔn)輸入中讀取數(shù)據(jù),因此,tr要么將輸入文件重定向到標(biāo)準(zhǔn)輸入,要么從管道讀入數(shù)據(jù)。

注意:tr類似于sed命令,但是比sed簡(jiǎn)單,所以tr能實(shí)現(xiàn)的功能,sed都能實(shí)現(xiàn)。

02. 命令格式

用法:tr [選項(xiàng)]... SET1 [SET2]

03. 常用選項(xiàng)

從標(biāo)準(zhǔn)輸入中替換、縮減和/或刪除字符,并將結(jié)果寫到標(biāo)準(zhǔn)輸出。

  -c, -C, --complement        首先補(bǔ)足SET1
  -d, --delete            刪除匹配SET1 的內(nèi)容,并不作替換
  -s, --squeeze-repeats    如果匹配于SET1 的字符在輸入序列中存在連續(xù)的
                重復(fù),在替換時(shí)會(huì)被統(tǒng)一縮為一個(gè)字符的長(zhǎng)度
  -t, --truncate-set1        先將SET1 的長(zhǎng)度截為和SET2 相等
      --help        顯示此幫助信息并退出
      --version        顯示版本信息并退出

SET 是一組字符串,一般都可按照字面含義理解。解析序列如下:

  \NNN    八進(jìn)制值為NNN 的字符(1 至3 個(gè)數(shù)位)
  \\        反斜杠
  \a        終端鳴響
  \b        退格
  \f        換頁(yè)
  \n        換行
  \r        回車
  \t        水平制表符
  \v        垂直制表符
  字符1-字符2    從字符1 到字符2 的升序遞增過程中經(jīng)歷的所有字符
  [字符*]    在SET2 中適用,指定字符會(huì)被連續(xù)復(fù)制直到吻合設(shè)置1 的長(zhǎng)度
  [字符*次數(shù)]    對(duì)字符執(zhí)行指定次數(shù)的復(fù)制,若次數(shù)以 0 開頭則被視為八進(jìn)制數(shù)
  [:alnum:]    所有的字母和數(shù)字
  [:alpha:]    所有的字母
  [:blank:]    所有呈水平排列的空白字符
  [:cntrl:]    所有的控制字符
  [:digit:]    所有的數(shù)字
  [:graph:]    所有的可打印字符,不包括空格
  [:lower:]    所有的小寫字母
  [:print:]    所有的可打印字符,包括空格
  [:punct:]    所有的標(biāo)點(diǎn)字符
  [:space:]    所有呈水平或垂直排列的空白字符
  [:upper:]    所有的大寫字母
  [:xdigit:]    所有的十六進(jìn)制數(shù)
  [=字符=]    所有和指定字符相等的字符

僅在SET1 和SET2 都給出,同時(shí)沒有-d 選項(xiàng)的時(shí)候才會(huì)進(jìn)行替換。
僅在替換時(shí)才可能用到-t 選項(xiàng)。如果需要SET2 將被通過在末尾添加原來的末字符的方式
補(bǔ)充到同SET1 等長(zhǎng)。SET2 中多余的字符將被省略。只有[:lower:] 和[:upper:]
以升序展開字符;在用于替換時(shí)的SET2 中以成對(duì)表示大小寫轉(zhuǎn)換。-s 作用于SET1,既不
替換也不刪除,否則在替換或展開后使用SET2 縮減。

字符范圍

指定字符串1或字符串2的內(nèi)容時(shí),只能使用單字符或字符串范圍或列表。

[a-z] a-z內(nèi)的字符組成的字符串。

[A-Z] A-Z內(nèi)的字符組成的字符串。
[0-9] 數(shù)字串。

\octal 一個(gè)三位的八進(jìn)制數(shù),對(duì)應(yīng)有效的ASCII字符。
[O*n] 表示字符O重復(fù)出現(xiàn)指定次數(shù)n。因此[O*2]匹配OO的字符串。

tr中特定控制字符的不同表達(dá)方式
速記符含義八進(jìn)制方式

\a Ctrl-G 鈴聲\007
\b Ctrl-H 退格符\010

\f Ctrl-L 走行換頁(yè)\014
\n Ctrl-J 新行\(zhòng)012

\r Ctrl-M 回車\015
\t Ctrl-I tab鍵\011

\v Ctrl-X \030

04. 參考示例

4.1 將輸入字符由大寫轉(zhuǎn)換為小寫

[deng@localhost ~]$ echo "HELLO ITCAST" | tr 'A-Z' 'a-z'
hello itcast
[deng@localhost ~]$

‘A-Z' 和 ‘a(chǎn)-z'都是集合,集合是可以自己制定的,例如:‘ABD-}'、‘bB.,'、‘a(chǎn)-de-h'、‘a(chǎn)-c0-9'都屬于集合,集合里可以使用'\n'、'\t',可以可以使用其他ASCII字符。

4.2 刪除出現(xiàn)的數(shù)字

[deng@localhost ~]$ echo "hello 1234 itcast 7890" | tr -d '0-9'
hello itcast 
[deng@localhost ~]$

4.3 從輸入文本中將不在補(bǔ)集中的所有字符刪除

[deng@localhost test]$ echo aabbcc..#dd2 */dk4 | tr -d -c '0-9 \n'
2 4
[deng@localhost test]$

補(bǔ)集中包含了數(shù)字0~9、空格和換行符\n,所以沒有被刪除,其他字符全部被刪除了。

4.4 將連續(xù)重復(fù)的字符以單獨(dú)一個(gè)字符表示

[deng@localhost test]$ echo "helloooooooooo is heimamaaaaaaaaaa" | tr -s 'oa'
hello is heimama
[deng@localhost test]$

4.5 使用替換操作執(zhí)行+操作

[deng@localhost test]$ echo 1 2 3 4 5 6 7 8 9 | xargs -n1 | echo $[ $(tr '\n' '+') 0 ]
45
[deng@localhost test]$

4.6 刪除由于Windows文件造成的'^M'字符

[deng@localhost test]$ cat txt | tr -s '\r' '\n' > file
[deng@localhost test]$

或者

[deng@localhost test]$ cat txt | tr -d '\r' > file

4.7 將小寫字母轉(zhuǎn)換為大寫字母

[deng@localhost test]$ echo "hello itcast" | tr '[:lower:]' '[:upper:]'
HELLO ITCAST
[deng@localhost test]$

4.8 將換行符替換成制表符

[deng@localhost test]$ cat txt | tr '\n' '\t'
 1111  1111 2222 2222 5555 [deng@localhost test]$ 
[deng@localhost test]$

以上Linux tr命令是如何使用的就是小編為大家收集整理的全部?jī)?nèi)容了,希望對(duì)大家有所幫助。如果您喜歡這篇文章,可以收藏或分享給您的小伙伴們吧!歡迎持續(xù)關(guān)注我們的后續(xù)更新。

本文最后更新于 2022-10-18 09:09,某些文章具有時(shí)效性,若有錯(cuò)誤或已失效,請(qǐng)?jiān)诰W(wǎng)站留言或聯(lián)系站長(zhǎng):[email protected]
·END·
站長(zhǎng)網(wǎng)微信號(hào):w17tui,關(guān)注站長(zhǎng)、創(chuàng)業(yè)、關(guān)注互聯(lián)網(wǎng)人 - 互聯(lián)網(wǎng)創(chuàng)業(yè)者營(yíng)銷服務(wù)中心

免責(zé)聲明:本站部分文章和圖片均來自用戶投稿和網(wǎng)絡(luò)收集,旨在傳播知識(shí),文章和圖片版權(quán)歸原作者及原出處所有,僅供學(xué)習(xí)與參考,請(qǐng)勿用于商業(yè)用途,如果損害了您的權(quán)利,請(qǐng)聯(lián)系我們及時(shí)修正或刪除。謝謝!

17站長(zhǎng)網(wǎng)微信二維碼

始終以前瞻性的眼光聚焦站長(zhǎng)、創(chuàng)業(yè)、互聯(lián)網(wǎng)等領(lǐng)域,為您提供最新最全的互聯(lián)網(wǎng)資訊,幫助站長(zhǎng)轉(zhuǎn)型升級(jí),為互聯(lián)網(wǎng)創(chuàng)業(yè)者提供更加優(yōu)質(zhì)的創(chuàng)業(yè)信息和品牌營(yíng)銷服務(wù),與站長(zhǎng)一起進(jìn)步!讓互聯(lián)網(wǎng)創(chuàng)業(yè)者不再孤獨(dú)!

掃一掃,關(guān)注站長(zhǎng)網(wǎng)微信

大家都在看

熱門排行

    最近更新

      返回頂部
      主站蜘蛛池模板: 国产精品人妻在线观看 | 国产成人小视频 | 最近的2019中文字幕国语 | tube日本护士 | 99视频免费播放 | 伊人久久综合谁合综合久久 | 调教美丽的白丝袜麻麻视频 | 成人免费小视频 | 男同志vdieos免费 | 99热视频这里只有久久精品 | 日韩人妻无码精品久久中文字幕 | wankz tv videos国产 | 网址在线观看你懂我意思吧免费的 | 国产传媒在线观看 | 亚洲精品无码国产爽快A片 亚洲精品无码成人AAA片 | 成人免费视频无遮挡在线看 | 夜夜国产亚洲视频香蕉 | 神马电影院午夜神福利在线观看 | 男女又黄又刺激B片免费网站 | 在线自拍综合亚洲欧美 | 国产精品高清在线观看93 | 夜色55夜色66亚洲精品网站 | 成人伊人青草久久综合网 | 菠萝菠萝蜜高清观看在线 | 麻豆文化传媒一区二区 | 精品日韩欧美一区二区三区 | 贵妃高h荡肉呻吟np杨玉环 | 麻豆精品传媒2021网站入口 | 60岁老年熟妇在线无码 | 秋霞电影院兔费理论观频84mb | 无人区在线日本高清免费 | 免费亚洲视频 | 国产在线自天天人人 | 国产美女视频一区二区二三区 | 伊人综合在线22 | 国产精品久久精品 | 99精品久久久久久久 | 国产WW高清大片免费看 | 国产99精品视频一区二区三区 | 日韩娇小性hd | 亚洲日本国产综合高清 |