Shell腳本中計算字符串長度的5種方法及從文本獲取某一行


有時在Linux操作系統中需要計算某個字符串的長度,通過查詢資料整理了下目前Shell中獲取字符串的長度的多種方法,在這里分享給大家,方法如下:

方法1: 使用wc -L命令
wc -L可以獲取到當前行的長度,因此對於單獨行的字符串可以用這個簡單的方法獲取,另外wc -l則是獲取當前字符串內容的行數。

代碼如下:
echo "abc" |wc -L

 

方法2: expr length string
使用expr length可以獲取string的長度

方法3: awk獲取域的個數,但是如果大於10個字符的長度時是否存在問題需要后面確認

代碼如下:
echo "abc" |awk -F "" '{print NF}'



方法4: 通過awk+length的方式獲取字符串長度

代碼如下:
echo “Alex”|awk '{print length($0)}'



方法5: 通過echo ${#string}的方式(注意:這里的string是該字符串的變量名)

代碼如下:
name=Alex
echo ${#name}
 
 
1、打印文件的第一列(域) : awk '{print $1}' filename
2、打印文件的前兩列(域) : awk '{print $1,$2}' filename
3、打印完第一列,然后打印第二列 : awk '{print $1 $2}' filename
4、打印文本文件的總行數 : awk 'END{print NR}' filename
5、打印文本第一行 :awk 'NR==1{print}' filename
6、打印文本第二行第一列 :sed -n "2, 1p" filename | awk 'print $1'
 
awk -F ',' 'END {print $2}' BIRoomTime20160229.txt


    shell里面的賦值方法有兩種,格式為
    1) arg=`(命令)`
    2) arg=$(命令)
因此,如果想要把某一文件的總行數賦值給變量nlines,可以表達為:
    1) nlines=`(awk 'END{print NR}' filename)`
或者
    2) nlines=$(awk 'END{print NR}' filename)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM