uniq(LINUX命令)

uniq(LINUX命令)

本詞條是多義詞,共2個義項
更多義項 ▼ 收起列表 ▲

uniq是英文unique(唯一)的縮寫

uniq 命令刪除檔案中的重複行。 uniq 命令讀取由 InFile 參數指定的標準輸入或檔案。該命令首先比較相鄰的行,然後除去第二行和該行的後續副本。

基本介紹

  • 中文名:uniq
  • 性質:LINUX命令
  • 類型:運算程式
  • 套用:計算機系統
文字,用途,語法,退出狀態,

文字

uniq是LINUX命令

用途

報告或刪除檔案中重複的行。

語法

uniq [ -c | -d | -u ] [ -f Fields ] [ -s Characters ] [ -Fields ] [ +Characters ] [ InFile [ OutFile ] ]
描述
重複的行一定相鄰。(在發出 uniq 命令之前,請使用 sort 命令使所有重複行相鄰。)最後,uniq 命令將最終單獨的行寫入標準輸出或由 OutFile 參數指定的檔案。InFile 和 OutFile 參數必須指定不同的檔案。
輸入檔案必須是文本檔案。文本檔案是包含組織在一行或多行中的字元的檔案。這些行的長度不能超出 2048 個位元組(包含所有換行字元),並且其中不能包含空字元。
預設情況下,uniq 命令比較所有行。如果指定了-f Fields 或 -Fields 標誌, uniq 命令忽略由 Fields 變數指定的欄位數目。 field 是一個字元串,用一個或多個 <空格 > 字元將它與其它字元串分隔開。如果指定了 -s Characters 或 -Characters 標誌, uniq 命令忽略由 Characters 變數指定的欄位數目。為 Fields 和 Characters 變數指定的值必須是正的十進制整數。
當前本地語言環境決定了 -f 標誌使用的 <空白> 字元以及 -s 標誌如何將位元組解釋成字元。
如果執行成功,uniq 命令退出,返回值 0。否則,命令退出返回值大於 0。
標誌
-c 在輸出行前面加上每行在輸入檔案中出現的次數。
-d 僅顯示重複行。
-f Fields 忽略由 Fields 變數指定的欄位數目。 如果 Fields 變數的值超過輸入行中的欄位數目, uniq 命令用空字元串進行比較。 這個標誌和 -Fields 標誌是等價的。
-u 僅顯示不重複的行。
-s Characters 忽略由 Characters 變數指定的字元的數目。 如果 Characters 變數的值超過輸入行中的字元的數目, uniq 用空字元串進行比較。 如果同時指定 -f 和 -s 標誌, uniq 命令忽略由 -s Characters 標誌指定的字元的數目,而從由 -f Fields 標誌指定的欄位後開始。 這個標誌和 +Characters 標誌是等價的。
-Fields 忽略由 Fields 變數指定的欄位數目。 這個標誌和 -f Fields 標誌是等價的。
+Characters 忽略由 Characters 變數指定的字元的數目。 如果同時指定 - Fields 和 +Characters 標誌, uniq 命令忽略由 +Characters 標誌指定的字元數目,並從由 -Fields 標誌指定的欄位後開始。 這個標誌和 -s Characters 標誌是等價的。

退出狀態

該命令返回以下退出值:
0 命令運行成功。
>0 發生錯誤。
示例
要刪除名為 fruit 檔案中的重複行並將其保存到一個名為 newfruit 的檔案中,輸入:
uniq fruit newfruit
如果 fruit 檔案包含下列行:
apples
apples
peaches
pears
bananas
cherries
cherries
則在您運行uniq 命令後 newfruit 檔案將包含下列行:
apples
peaches
pears
bananas
cherries
檔案
/usr/bin/uniq 包含 uniq 命令。

相關詞條

熱門詞條

聯絡我們