linux去重復
A. linux常用命令有哪些
linux 常用命令有:
pwd 命令
cd 命令
ls 命令
cat 命令
cp 命令
mv 命令
mkdir 命令
rmdir 命令
rm 命令
touch 命令
locate 命令
find 命令
sudo 命令
df 命令
命令
head 命令
tail 命令
diff 命令
tar 命令
chmod 命令
chown 命令
Jobs 命令
kill 命令
ping 命令
wget 命令
uname 命令
top 命令
history 命令
man 命令
echo 命令
zip,unzip 命令
hostname 命令
useradd,userdel 命令
使用 pwd 命令找出您所在的當前工作目錄(文件夾)的路徑。該命令將返回一個絕對(完整)路徑,該路徑基本上是所有以 / 開頭的目錄的路徑。絕對路徑的一個示例是 /home/username。
要瀏覽 Linux 文件和目錄,請使用 cd 命令。根據您所在的當前工作目錄,它需要目錄的完整路徑或名稱。假設您位於 /home/username / Documents 中,並且想要轉到 Documents 的子目錄 Photos。為此,只需鍵入以下命令:cd Photos。另一種情況是,如果您想切換到一個全新的目錄,例如 /home/username / Movies。在這種情況下,您必須輸入 cd,然後輸入目錄的絕對路徑:cd /home/username / Movies。有一些快捷方式可幫助您快速導航:cd ..(帶有兩個點)將一個目錄向上移動 cd 直接轉到主文件夾 cd-(帶連字元)移動到上一個目錄附帶說明一下,Linux 的 shell 是區分大小寫的。因此,您必須准確輸入名稱的目錄。
LS 命令用於查看目錄的內容。默認情況下,此命令將顯示當前工作目錄的內容。如果要查看其他目錄的內容,請鍵入 ls,然後鍵入目錄的路徑。例如,輸入 LS / 家 / 用戶名 / 文檔查看的內容的文件。您可以使用 ls 命令使用以下變體:ls -R 還將列出子目錄中的所有文件 ls -a 將顯示隱藏的文件 ls -al 將列出文件和目錄以及詳細信息,例如許可權,大小,所有者等。
cat(連接的縮寫)是 Linux 中最常用的命令之一。它用於在標准輸出(sdout)上列出文件的內容。要運行此命令,請鍵入 cat,然後輸入文件名及其擴展名。例如:cat file.txt。以下是使用 cat 命令的其他方法:cat> filename 創建一個新文件 cat filename1 filename2> filename3 連接兩個文件(1 和 2),並將它們的輸出存儲在新文件中(3)將文件轉換為大寫或小寫使用,cat filename | tr a-z A-Z >output.txt
使用 cp 命令將文件從當前目錄復制到另一個目錄。例如,命令 cp scenery.jpg/home /username/ Pictures 將在您的 Pictures 目錄中創建一個 Scene.jpg 副本(來自當前目錄)。
mv 命令的主要用途是移動文件,盡管它也可以用於重命名文件。mv 中的參數類似於 cp 命令。您需要輸入 mv,文件名和目標目錄。例如:mv file.txt/home /username/ Documents。
使用 mkdir 命令創建一個新目錄 - 如果鍵入 mkdir Music,它將創建一個名為 Music 的目錄。還有一些額外的 mkdir 命令:要在另一個目錄中生成新目錄,請使用此 Linux 基本命令 mkdir Music / Newfile 使用 p(父級)選項在兩個現有目錄之間創建一個目錄。例如,mkdir -p Music / 2022 / Newfile 將創建新的 「2022」 文件。
如果需要刪除目錄,請使用 rmdir 命令。但是,rmdir 僅允許您刪除空目錄。
該 RM 命令用於刪除目錄以及其中的內容。如果只想刪除目錄(作為 rmdir 的替代方法),請使用 rm -r。注意:使用此命令時要格外小心,並仔細檢查您所在的目錄。這將刪除所有內容,並且沒有撤消操作。
該觸摸命令允許您創建通過 Linux 命令行新的空白文件。例如,輸入 touch /home/username/Documents/Web.html 在 Documents 目錄下創建一個名為 Web 的 HTML 文件。
您可以使用此命令來定位文件,就像 Windows 中的搜索命令一樣。此外,將 - i 參數與該命令一起使用將使其不區分大小寫,因此即使您不記得其確切名稱,也可以搜索文件。要搜索包含兩個或多個單詞的文件,請使用星號(*)。例如,locate -i school * note 命令將搜索包含單詞 「school」 和 「 note」 的任何文件,無論它是大寫還是小寫。
在類似定位命令,使用 查找也搜索文件和目錄。區別在於,您可以使用 find 命令在給定目錄中查找文件。例如,find /home/-name notes.txt 命令將在主目錄及其子目錄中搜索名為 notes.txt 的文件。使用查找時的其他變化 是:要查找當前目錄中使用的文件,請使用 find . -name notes.txt 要查找目錄,請使用 /-type d -name notes. txt13. grep 命令無疑對日常使用很有幫助的另一個基本 Linux 命令是 grep。它使您可以搜索給定文件中的所有文本。為了說明這一點,grep blue notepad.txt 將在記事本文件中搜索單詞 blue。包含搜索到的單詞的行將被完整顯示。
該命令是 「SuperUser Do」 的縮寫,使您能夠執行需要管理或超級用戶許可權的任務。但是,建議不要將此命令用於日常使用,因為如果您做錯了一些事情,很容易發生錯誤。
使用 df 命令可獲取有關系統磁碟空間使用情況的報告,以百分比和 KB 表示。如果要以兆位元組為單位查看報告,請輸入 df -m。
如果要檢查文件或目錄佔用了多少空間,答案是 (磁碟使用情況)命令。但是,磁碟使用情況摘要將顯示磁碟塊號,而不是通常的大小格式。如果要以位元組,千位元組和兆位元組為單位查看它,請在命令行中添加 - h 參數。
所述頭命令用於查看任何文本文件的第一行。默認情況下,它將顯示前十行,但是您可以根據自己的喜好更改此數字。例如,如果只想顯示前五行,則鍵入 head -n 5 filename.ext。
該命令與 head 命令具有相似的功能,但是 tail 命令將顯示文本文件的最後十行,而不是顯示第一行。例如,tail -n filename.ext。
diff 命令是差異的縮寫,diff 命令逐行比較兩個文件的內容。分析文件後,它將輸出不匹配的行。程序員在需要進行程序更改時經常使用此命令,而不是重寫整個源代碼。此命令最簡單的形式是 diff file1.ext file2.ext
該 tar 命令是最常用的命令歸檔多個文件到一個壓縮包。類似於 zip 格式常見的 Linux 文件格式,壓縮是可選的。該命令具有很長的功能列表,非常復雜,例如將新文件添加到現有檔案中,列出檔案內容,從檔案中提取內容等等。查看一些實際示例,以了解有關其他功能的更多信息。
chmod 是另一個 Linux 命令,用於更改文件和目錄的讀取,寫入和執行許可權。由於此命令相當復雜,因此您可以閱讀完整的教程以正確執行它。
在 Linux 中,所有文件均歸特定用戶所有。該 CHOWN 命令使您可以更改或文件的所有權轉讓給指定的用戶名。例如,chown linuxuser2 file.ext 將使 linuxuser2 成為 file.ext 的所有者。
jobs 命令將顯示所有當前作業及其狀態。作業基本上是由 Shell 啟動的進程。
如果您的程序無響應,則可以使用 kill 命令手動終止它。它將向運行異常的應用發送特定信號,並指示該應用自行終止。您總共可以使用 64 個信號,但是人們通常只使用兩個信號:SIGTERM(15) — 請求程序停止運行,並給它一些時間來保存其所有進度。如果在輸入 kill 命令時未指定信號,則將使用此信號。SIGKILL(9) - 強製程序立即停止。未保存的進度將丟失。除了知道信號之外,您還需要知道要殺死的程序的進程標識號(PID)。如果您不知道 PID,只需運行命令 ps ux。在知道您要使用什麼信號以及程序的 PID 之後,輸入以下語法:kill [signal option] PID.
使用 ping 命令檢查與伺服器的連接狀態。例如,只需輸入 ping google.com,該命令將檢查您是否能夠連接到 Google 並測量響應時間。
Linux 命令行非常有用 - 您甚至可以在 wget 命令的幫助下從 Internet 下載文件。為此,只需鍵入 wget,然後輸入下載鏈接即可。
該 UNAME 命令,短期對於 Unix 名,將列印您的 Linux 系統,如計算機名稱的詳細信息,操作系統,內核,等等。
作為與 Windows 中的任務管理器等效的終端,top 命令將顯示正在運行的進程的列表以及每個進程使用的 CPU 數量。監視系統資源使用情況非常有用,尤其是知道哪個進程由於消耗太多資源而需要終止時。
當您使用 Linux 一段時間後,您會很快注意到每天可以運行數百個命令。因此,如果您想查看之前輸入的命令,運行歷史記錄命令特別有用。
對某些 Linux 命令的功能感到困惑嗎?不用擔心,您可以使用 man 命令從 Linux 的外殼程序中輕松地學習如何使用它們。例如,輸入 man tail 將顯示 tail 命令的手動指令。
此命令用於將一些數據移到文件中。例如,如果要將文本 「Hello,我的名字叫 John」 添加到名為 name.txt 的文件中,則可以鍵入 echo Hello, my name is John >> name.txt
使用 zip 命令將文件壓縮到 zip 歸檔文件中,然後使用 unzip 命令從 zip 歸檔文件中提取壓縮文件。
如果您想知道主機 / 網路的名稱,只需鍵入 hostname。在末尾添加 - I 將顯示您的網路的 IP 地址。
B. linux:如何對文本里的相同行進行去重
①選中范圍;②查找重復的文本內容,如「今天的大霧今天的大霧」;③替換,替換內容「今天的大霧」,全都替換、確定。
C. linux去除重復行命令 重復行不固定。不是相鄰的 求命令
awk '!a[$0]++' file 這個去重貌似挺好的。
再結合sort排序就好了。
awk '!a[$0]++' file | sort
舉例:
cattest.txt
b
b
a
a
c
c
awk'!a[$0]++'test.txt|sort>sorted.txt
catsorted.txt
a
b
c
D. linux去重命令
linux重啟命令是:
1、在命令行中輸入: shutdown -r now : 表示現在重啟計算機,按下回車便會進行重啟。
2、另一種重啟方式就是輸入: reboot 也表示重啟,一樣會進行重啟。
Linux是一套免費使用和自由傳播的類Unix操作系統,是一個基於POSIX和Unix的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的Unix工具軟體、應用程序和網路協議。它支持32位和64位硬體。Linux繼承了Unix以網路為核心的設計思想,是一個性能穩定的多用戶網路操作系統。
E. LINUX下去除文件中重復的行
wk肯定行
這是一個cu的精華帖,差不多,對於你的問題你給稍等我修改一下。(ps感謝紅袖添香大姐)
CU精華 經典回顧
#假設我有如下文件:
#cat aa
#123 def1 456
#345 def2 812
#123 def3 563
#322 def4 684
#123 def5 879
#......................
#現在我想把第一列中欄位相同的合並,第一列不相同的則保留,合並的原則就是保留第一個出現的前兩個欄位,第三個欄位則把結果相加,以上面的示例為例:
#
#就是對於123開頭的需要合並,合並後應該成為如下:
#cat aa
#123 def1 1898
#345 def2 812
#322 def4 684
#請問用shell如何實現?
#希望各位幫助!,謝謝!!
#要求總結:
#1 合並相同的第一列數據,並且計算第三列和
#2 第二列只保留第一次出現
#3 第一列順序不變
覺得這個問題很經典,所以從CU論壇轉過來了。
請大家一起學習
我們站在巨人的肩膀上。
問題補充:
看不太懂實現可以講一下思路嗎?
a[$1]+=$3
if(length(b[$1])==0)b[$1]=$2
我是這樣做的
--------------------------2
謝謝你的補充, 已經明白了你對split的適用技巧,是用split(a[$1],tmp)在碰到匹配的$1時取出以前的統計結然後再用$3加上以前的結果是吧,很巧妙。謝謝
但是有2個問題:
1不滿足 第二列保留第一次出現記錄(現在是保留最後一次出現)
2不滿足 第一列按照原來文件順序出現
看看這個
awk 'BEING
{
a[$1]+=$3
if(length(b[$1])==0)b[$1]=$2
if($1 in ind)next
ind[$1]
key[n]=$1
n++
}
END{
for(i in key)print key[i],b[key[i]],a[key[i]]
}' filename
#######################
#######################
#######################
這樣就行了
#!/bin/bash
awk 'BEGIN
{
if($0 in a)next
a[$0]
b[n]=$0
n++
}
END{
for(i in b)print b[i]
}' data
前提是你的數據文件裡面每行沒有空格,如果有用-F設定一個沒有的字元作分隔符就
F. linux 去除空行,去除重復,去除特定符號
cat /etc/services | sed "/^$/d" | uniq | sed "/^#/d"
cat /etc/services 打開文件 是你自己說用cat的,這里可以不用cat的
|是管道
sed "/^$/d" 刪除空行
uniq排除重復的行
sed "/^#/d" 刪除以#開頭的行
G. 如何快速找出Linux中的重復文件
用uniq,如下,將 1.txt 中 所有 "相鄰" 重復行合並成一行,結果存入 2.txt
uniq 1.txt > 2.txt如果是想將相鄰重復行徹底刪掉(而不是合並成一行),可以用
uniq -u 1.txt > 2.txt
H. 在linux下怎麼刪除重復的文件
用uniq,如下,將
1.txt
中
所有
"相鄰"
重復行合並成一行,結果存入
2.txt
uniq
1.txt
>
2.txt如果是想將相鄰重復行徹底刪掉(而不是合並成一行),可以用
uniq
-u
1.txt
>
2.txt
I. 如何快速刪除Linux文件中的重復數據行
用uniq,如下,將 1.txt 中 所有 "相鄰" 重復行合並成一行,結果存入 2.txt
1
uniq 1.txt > 2.txt
如果是想將相鄰重復行徹底刪掉(而不是合並成一行),可以用
1
uniq -u 1.txt > 2.txt