tr 命令:用于轉(zhuǎn)換字符、刪除字符和壓縮重復(fù)字符。
語法格式:tr +選項 文件名1 文件名2
示例1: echo helloABC | tr [:lower:] [:upper:] #將helloABC中的小寫字母替換為大寫
大寫改為小寫,每句英文的第一字母也是大寫。除第一個單詞首字母為小寫外,各單詞的第一個字母為大寫。7、雙引號內(nèi)的轉(zhuǎn)義字符:%20a)/a%20發(fā)聲%20b)/e%20“esc”%20c)/l%20將下個字符轉(zhuǎn)換為小寫%20d)/l%20將到/e的所有字符轉(zhuǎn)換為小寫%20e)/u%20將下個字符轉(zhuǎn)換為大寫%20f)/u%20將到/e的所有字符轉(zhuǎn)換為大寫%20g)/q%20將到/e為止的所有非文字字符(non-word)加上反斜線%20h)/e%20結(jié)束/l、/u或/q8、雙引號內(nèi)可以使用完整意義上的轉(zhuǎn)義字符,也可以實現(xiàn)變量替換。
示例2:使用tr命令轉(zhuǎn)換一個文件的內(nèi)容linux命令大全,并將轉(zhuǎn)換結(jié)果輸出到另一文件
cat%201.txt
tr%20'()'%20'{}'%20<1.txt>%202.txt%20#重定向讀入1.txt的內(nèi)容,用{}替換1.txt中的(),并將替換結(jié)果重定向輸出到2.txt中
tr%20'()'%20'{}'%20<1.txt%20#重定向讀入1.txt的內(nèi)容,用{}替換1.txt中的(),只預(yù)覽,不做實際替換
有些在html文檔中合法的字符,到了xml里可能就不合法了,如,在html中,換頁符(formfeed%20character%20u+000c)被解析為空格,而在xhtml中,由于xml的字符定義,它變得不合法。查找任何一個不包含在strcharset串中的字符%20(字符串結(jié)束符null除外)%20在string串中首次出現(xiàn)的位置序號.%20%20返回一個整數(shù)值,%20指定在string中全部由characters中的字符組成的子串的長度.%20如果string以一個不包含在strcharset中的字符開頭,%20函數(shù)將返回0值.。這里情況比較復(fù)雜的是scanf()函數(shù),如果是scanf("%d",&a),它會忽略輸入的空白符(換行,制表,空格)直到遇見非空白字符,再將其轉(zhuǎn)換成整型存儲在a中,注意,由于i/o緩沖,用來刷新輸入緩沖的換行符還在等待被輸入接受,此時能用getchar()捕獲,但是在非空字符前面被忽略的空白符卻因為被scanf()丟棄,已經(jīng)不存在了。
示例4:echo%20"hhhhelloooo%20wwwworlddddd"%20|%20tr%20-s%20"howd"%20#壓縮字符串中的"howd"這些重復(fù)的字母
示例5:echo "hello WORLD" | tr -d a-z #刪除字符串中的小寫字母
echo "hello world 123" | tr -d [:digit:] #刪除字符串中的數(shù)字
請編寫一程序linux命令大全,該程序的功能是確定字符串中首次出現(xiàn)的某個字符在串中的位置(即該字符是字符串中的第幾個字符),然后從字符串中刪除該字符。串中已沒有字符可與主串中當(dāng)前字符s[i]比較,主串當(dāng)前指針應(yīng)后移至下一字符,再和模式串中第一字符進行比較,F(xiàn)在給你一個字符串a(chǎn),和另外一個字符串b,要你每次從b串中從左至右找第一個a串,并從b串中刪除它,直到a串不為b串的子串,問你需要進行幾次刪除操作。
更多使用方法,請參考: