Linux 常用命令:文本查看篇

?

前言

?

Linux常用命令中,除了cat還有很多其他用于文本查看的命令。本文將簡單介紹一下這些文本查看的命令。

?

全文本顯示--cat

?

cat可能是常用的一個文本查看命令了,使用方法也很簡單:

?

cat file  #全文本顯示在終端
cat -n file #顯示全文本,并顯示行號

?

另外,cat也可用作合并文件:

?

cat file1 file2 >file3

?

該命令將file1 file2的內容合并寫到file3中。

?

倒序顯示全文本--tac

?

tac是cat倒過來的寫法,tac以行為單位,倒序顯示全文本內容。

?

tac file

?

分頁顯示文本--more

?

cat將整個文本內容輸出到終端。那么也就帶來一個問題,如果文本內容較多,前面的內容查看將十分不便。而more命令可以分頁顯示。


1.顯示內容

?

more file

?

之后,就可以使用按鍵來查看文本。常用按鍵如下:

?

回車    #向下n行,默認為1行
空格 #向下滾動一屏
b #向上滾動一屏
= #輸出當前行號
:f #輸出當前文件名和當前行號
q #退出

?

2.從指定行開始顯示

?

more +10 file

?

該命令從第10行開始顯示file的內容。

?

3.從匹配的字符串行開始顯示

?

more +/string file

?

該命令從有string的行的前兩行開始file的內容。

?

任意瀏覽搜索文本--less

?

less命令的基本功能和more沒有太大差別,但是less命令可以向前瀏覽文件,而more只能向后瀏覽文件,同時less還擁有更多的搜索功能。


常見使用方法:

?

less file     #瀏覽file
less -N file #瀏覽file,并且顯示每行的行號
less -m file #瀏覽file,并顯示百分比

?

常用按鍵如下:

?

f        #向前滾動一屏
b #向后滾動一屏
回車或j #向前移動一行
k #向后移動一行
G #移動到最后一行
g #移動到第一行
/string #向下搜索string,n查看下一個,N查看上一個結果
string #向上搜索string,n查看下一個,N查看上一個結果
q #退出

?

相比more命令,less命令能夠搜索匹配需要的字符串。


另外,less還能在多個文件間切換瀏覽:

?

less file1 file2 file3
:n #切換到下一個文件
:p #切換到上一個文件
:x #切換到第一個文件
:d #從當前列表移除文件

?

顯示文本頭部內容--head

?

head命令的作用就像它的名字一樣,用于顯示文件的開頭部分文本。


常見用法如下:

?

head -n 100 file #顯示file的前100
head -n -100 file #顯示file的除最后100行以外的內容。

?

顯示文本尾部內容--tail

?

和head命令類似,只不過tail命令用于讀取文本尾部部分內容:

?

tail -100 file  #顯示file最后100行內容
tail -n +100 file #從第100行開始顯示file內容

?

tail還有一個比較實用的用法,用于實時文本更新內容。比如說,有一個日志文件正在寫,并且實時在更新,就可以用命令:

?

tail -f logFile

?

對于更新的日志內容,會實時打印到終端上,方面查看實時日志。

?

指定順序顯示文本--sort

?

sort可用于對文本進行排序并顯示,默認為字典升序。


例如有一段文本test.txt內容如下:

?

vim
count
fail
help
help
dead
apple

?

1.升序顯示文本


使用命令:

?

sort test.txt
apple
count
dead
fail
help
help
vim

?

文本內容將以升序顯示。


2.降序顯示


相關參數-r:

?

sort -r test.txt
vim
help
help
fail
dead
count
apple

?

3.去掉重復的行


我們可以觀察到,前面的help有兩行,如果我們不想看到重復的行呢?可以使用參數-u,例如:

?

sort -u test.txt
apple
count
dead
fail
help
vim

?

可以看到help行不再重復顯示。

?

4.按照數字排序


如果按照字典排序,10將會在2的前面,因此我們需要按照數字大小排序:

?

sort -n file

?

由于本文篇幅有限,不在本文展開介紹,后續將單獨介紹sort命令的妙用。

?

過濾顯示文本--sed

?

sed是一個流編輯器,功能非常強大,但本文只介紹文本查看相關功能。


1.顯示匹配關鍵字行


有時候查看日志,可能只需要查看包含某些關鍵字的日志行:

?

sed -n "/string/p" logFile

?

上面的命令表示打印包含string的行。

?

2.打印指定行

?

sed -n "1,5p" logFile #打印第1到5行
sed -n '3,5{=;p}' logFile #打印3到5行,并且打印行號
sed -n "10p" logFIle #打印第10行

?

去重顯示文本--uniq

?

常見用法如下:

?

uniq file  #去除重復的行
uniq -c file #去除重復的行,并顯示重復次數
uniq -d file #只顯示重復的行
uniq -u file #只顯示出現一次的行
uniq -i file #忽略大小寫,去除重復的行
uniqe -w 10 file #認為前10個字符相同,即為重復

?

文本編輯查看--vi

?

查看文件也很簡單:

?

vi file

?

而從vi發展出來的被譽為編輯器之神的vim有著更加強大的功能,這里不作展開。

?

總結

?

文本查看命令較多,可根據使用場景不同選擇使用不同的命令。有些命令的用法較多,本文僅介紹經典用法,更多用法可使用man命令查看。很多命令可以結合其他命令使用,例如ps -elf|more,分頁顯示進程信息等等,更多用法可自行探索。

?

轉載于:https://www.cnblogs.com/rsty/p/10443721.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/278265.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/278265.shtml
英文地址,請注明出處:http://en.pswp.cn/news/278265.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

XP調整禁用頁面文件

NOTE: You shouldn’t disable your page file unless you really really know what you are doing. 注意:除非您真的很清楚自己在做什么,否則不應該禁用頁面文件。 If your computer has 1 GB of RAM or more, disabling the page file can speed up XP…

復制數據庫

1.首先手動創建新的數據庫 CREATE DATABASE new-DB DEFAULT CHARACTER SET utf8mb4; 2.使用mysqldump命令。結果,會連同數據一起復制過去。 mysqldump old-DB -u root -pXX --add-drop-table | mysql new-DB -u root -pXX轉載于:https://www.cnblogs.com/clcliangc…

labelme2coco問題:TypeError: Object of type 'int64' is not JSON serializable

最近在做MaskRCNN 在自己的數據(labelme)轉為COCOjson格式遇到問題:TypeError: Object of type int64 is not JSON serializable 原因是numpy的數據類型不能被json兼容 最簡單的做法是自己寫一個序列類 class MyEncoder(json.JSONEncoder):de…

如何在Windows 10的命令提示符中更改目錄

One of the first things you’ll need to learn as you become more familiar with Command Prompt on Windows 10 is how to change directories in the operating system’s file system. There are a few ways you can do this, so we’ll walk you through them. 隨著您對…

jQuery 購物車

html代碼 <!--shoppingCar start--> <table id"TB"> <tr> <td colspan"7" class"title"> <div class"img_box"> <div class"logo_box"> <img src"img/jd…

MySQL優化總結

2019獨角獸企業重金招聘Python工程師標準>>> 從這幾天看MySQL性能優化來看&#xff0c;基本的思路就是分分分&#xff0e;&#xff0e;&#xff0e; 1&#xff0c;分讀&#xff0c;用緩存來分攤讀表的壓力; 2&#xff0c;讀寫分離&#xff0c;主從分離&#xff0c;寫…

瘋狂java講義

封裝&#xff1a; 封裝&#xff1a;將對象狀態信息隱藏在對象內部&#xff0c;不允許外部程序直接訪問對象內部信息&#xff0c;而是用類所提供的方法訪問和操作。訪問控制符&#xff1a;private&#xff08;當前類訪問權&#xff09; ,protected&#xff08;子類訪問&#xff…

將背景色添加到Word 2007文檔中

Instead of using the standard white background with Word documents, here is how to add some background color to spice up your documents. 代替在Word文檔中使用標準的白色背景&#xff0c;這是如何添加一些背景顏色來為文檔增添色彩。 Open your word document and ch…

jquery實現增刪改(偽)-老男孩作業day13

使用jquery進行&#xff0c;文件的編寫&#xff0c;實現自增id,刪除&#xff0c;添加&#xff0c;編輯模式。 jquery放在本地&#xff0c;src"jquery_js.js" 可以改成其他&#xff0c;或者在線的路徑 readme<!DOCTYPE html> <html lang"en"> &…

uoj#119. 【UR #8】決戰圓錐曲線(線段樹+復雜度分析)

題解 傳送門 題解 然而要我來說我感覺只是個爆搜啊…… //minamoto #include<bits/stdc.h> #define R register #define ll long long #define ls (p<<1) #define rs (p<<1|1) #define fp(i,a,b) for(R int ia,Ib1;i<I;i) #define fd(i,a,b) for(R int ia…

如何在Raspberry Pi上設置兩因素身份驗證

Kiklas/ShutterstockKiklas /快門The Raspberry Pi is everywhere now, which is why it’s caught the eye of threat actors and cybercriminals. We’ll show you how to secure your Pi with two-factor authentication. Raspberry Pi現在無處不在&#xff0c;這就是為什么…

Laravel Passport里的授權類型介紹

本文來自pilishen.com----原文鏈接; 歡迎來和pilishen一起學習php&Laravel&#xff1b;學習群&#xff1a;109256050OAuth2是一個安全框架&#xff0c;控制著程序受保護部分的準入&#xff0c;主要是控制不同的客戶端如何來調取API&#xff0c;保證它們在請求相應資源的時候…

vue 開發環境搭建

1.創建vue項目 1.node js 生成項目&#xff0c;編譯項目 2.hbuilder 開發環境 1.下載安裝node js http://nodejs.cn/download/ 確認是否安裝成功 如果安裝不了 代碼錯誤2503 解決方法&#xff1a; 管理員命令運行cmd; cd\ cd C:\Users\Administrator\Desktop msiexec/package n…

iphone視圖放大_如何將iPhone用作放大鏡

iphone視圖放大It’s a common problem: Some things are just too hard to see. Usually, they’re too far away, too dark, or too small. With a feature called Magnifier, your iPhone can function as a magnifying glass and sight aid. Here’s how to use it. 這是一…

chmod權限

本文引用:https://www.cnblogs.com/zhangym/p/5826200.html linux數字權限解釋 644 第一位代表文件所有者的權限,第二位代表同組用戶的權限&#xff0c;第三位代表其他用戶的權限. 讀取權限等于4,用r表示;寫入權限2,用w表示;執行權限1,用x表示. 通過4、2、1組合,得到以下幾種權…

輸出最大值MXNet實現

網絡結構&#xff0c;輸入為2個數&#xff0c;先經過10個節點的全連接層&#xff0c;再經過10個節點的ReLu&#xff0c;再經過10個節點的全連接層&#xff0c;再經過1個節點的全連接層&#xff0c;最后輸出。 #-*-coding:utf-8-*- import logging import math import random im…

discord linux_如何在Discord中應用文本格式

discord linuxDiscord allows for text-and audio-based chatting between gamers and other like-minded individuals. If you want to make a bigger impact on Discord, you can use formatting to jazz up your text-based messages. Here’s how. Discord允許游戲玩家和其…

一張圖看懂阿里云網絡產品[十二]云企業網

2019獨角獸企業重金招聘Python工程師標準>>> 摘要&#xff1a; 阿里云致力于為用戶提供優質、高效、穩定的網絡傳輸環境&#xff0c;云企業網&#xff08;Cloud Enterprise Network&#xff09;將提供一種能夠快速構建混合云和分布式業務系統的全球網絡&#xff0c;…

# 2019-2020.3 《java程序設計》第一周學習總結

2019-2020-3 《Java 程序設計》第一周學習總結 在本周的學習中&#xff0c;學習到了好多也收獲了好多&#xff0c;從最基礎的安裝虛擬機開始&#xff0c;根據老師的博客中的教程一步一步的進行&#xff0c;在這過程中也遇到了好多問題&#xff0c;因為是初步接觸Linux系統&…

聊聊Java反射

反射是Java最重要的特性。通過Java反射可以在運行時知道一個類的所有成員和方法&#xff0c;知道一個對象的類類型、成員和方法的所有信息&#xff0c;進而調用對象的方法或生成對象的代理或包裝類。Java是面向對象語言&#xff0c;除了靜態變量或原始數據類型外都是完全面向對…