Shell 檔案內容操作

2021-10-14 11:23:11 字數 1489 閱讀 2541

讀取檔案的每一行內容並輸出

#!/bin/bash

# 方法1

while read line

do echo $line

done < a.txt

# 方法2

cat a.txt | while read line

do echo $line

done

# 方法3

# for line in `cat a.txt`

for line in $(cat a.txt)

do echo $line

done

檔案內容排序工具 sort 和 uniq

sort:sort是乙個以行為單位對檔案內容進行排序的工具,也可以根據不同的資料型別來排序。

用法:sort [選項] 引數

[root@localhost ~]# sort /etc/passwd

[root@localhost ~]# sort -r /etc/passwd

uniq:去除重複行,並統計每行出現的次數(相鄰行)。uniq工具通常與sort命令結合使用,用於報告或者忽略檔案中的重複行。

用法:uniq [選項] 引數

[root@localhost ~]# uniq -c test.txt

[root@localhost ~]# uniq -u test.txt

[root@localhost ~]# sort -n test.txt | uniq -c # 刪除test.txt檔案中重複行,並統計該行重複次數

[root@localhost ~]# sort -n test.txt | awk ''

[root@localhost ~]# sort -n test.txt | sed '$!n; /^\(.*\)\n\1$/!p; d'

統計檔案的行數、字數、位元組數, 並將統計結果顯示輸出

[root@localhost ~]# wc -l /etc/passwd         # 統計檔案的行數(裡面內容的行數)

[root@localhost ~]# wc -c /etc/passwd # 統計檔案的位元組數

[root@localhost ~]# wc -m /etc/passwd # 統計檔案的字元數

[root@localhost ~]# wc -w /etc/passwd # 統計單詞出現次數

[root@localhost ~]# wc - lcw file1 file2

[root@localhost ~]# ls -l | wc -l # 用來統計當前目錄下的檔案數

shell指令碼讀取檔案內容的操作

方法一 while迴圈中執行效率最高,最常用的方法。bin bash while read line doecho line done filename 待讀取的檔案 方法2 重定向法 管道法 cat filename while read line bin bash cat filename 待讀...

shell 檔案操作

1 檔案建立 刪除 touch abc.txt 建立乙個空檔案 rm abc.txt 刪除乙個檔案 rm f abc.txt 強制刪除檔案 2 檔案複製 移動 cp 1 txt tmp 將檔案1.txt複製到tmp目錄下 mv 1.txt tmp 將檔案1.txt移動到tmp目錄下 3 檔案內容檢視...

shell檔案內容編碼轉換

linux下有時需要對文字檔案的編碼格式進行轉換,下面是在專案中用過的一些shell命令。要想對文字內容的字元編碼進行轉換,具體引數含義 j 轉換為 jis 編碼 iso 2022 jp 預設 e 轉換為 euc 編碼 s 轉換為 shift jis 編碼 w 轉換為 utf 8 編碼 無bom l...