真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

linux統(tǒng)計總數(shù)命令,linux統(tǒng)計文件個數(shù)命令

Linux常見日志統(tǒng)計分析命令

在上文中,我們已經(jīng)詳細介紹 linux 三劍客的基本使用,接下來我們看看具體在性能測試領域的運用,本文主要介紹的是在 Tomcat 和 Nginx access日志的統(tǒng)計分析。

于2013年成立成都創(chuàng)新互聯(lián)公司專注于”幫助中小企業(yè)+互聯(lián)網(wǎng)”, 也是目前成都地區(qū)具有實力的互聯(lián)網(wǎng)服務商。團隊致力于為企業(yè)提供--站式網(wǎng)站建設、移動端應用( H5手機營銷、成都app開發(fā)、微信開發(fā))、軟件開發(fā)、信息化解決方案等服務。

server.xml 使用配置方式,%D-請求時間,%F-響應時間

字段說明如下:

日志樣例:

使用默認 combined 的經(jīng)典格式上擴展 response_timeupstream_response_time

nginx.conf 使用配置方式:

字段說明如下:

日志示例:

為了能理解 AWK 程序,我們下面概述其基本知識。

模式( pattern ) 用于匹配輸入中的每行文本。對于匹配上的每行文本,awk 都執(zhí)行對應的 動作( action )。模式和動作之間使用花括號隔開。awk 順序掃描每一行文本,并使用 記錄分隔符(一般是換行符)將讀到的每一行作為 記錄,使用 域分隔符( 一般是空格符或制表符 ) 將一行文本分割為多個 域, 每個域分別可以使用 2, … 表示。1 表示第一個域,表示第二個域,n 表示第 n 個域。 $0 表示整個記錄。模式或動作都可以不指定,缺省模式的情況下,將匹配所有行。缺省動作的情況下,將執(zhí)行動作 {print},即打印整個記錄。

此處使用Nginx access.log 舉例,Tomcat 日志自己舉一反三。 使用 awk 分解出Nginx access日志中的信息

以此類推…… 當我們使用默認的域分割符時,我們可以從日志中解析出下面不同類型的信息:

我們不難發(fā)現(xiàn),僅使用默認的域分隔符,不方便解析出請求行、引用頁和瀏覽器類型等其他信息,因為這些信息之中包含不確定個數(shù)的空格。 因此,我們需要把域分隔符修改為 “ ,就能夠輕松讀出這些信息。

注意:這里為了避免 Linux Shell 誤解 “ 為字符串開始,我們使用了反斜杠,轉(zhuǎn)義了 “ 。 現(xiàn)在,我們已經(jīng)掌握了 awk 的基本知識,以及它是怎樣解析日志的。

此處使用Nginx access.log 舉例,Tomcat 日志自己舉一反三。

如果我們想知道那些類型的瀏覽器訪問過網(wǎng)站,并按出現(xiàn)的次數(shù)倒序排列,我可以使用下面的命令:

此命令行首先解析出瀏覽器域,然后使用管道將輸出作為第一個 sort 命令的輸入。第一個 sort 命令主要是為了方便 uniq 命令統(tǒng)計出不同瀏覽器出現(xiàn)的次數(shù)。最后一個 sort 命令將把之前的統(tǒng)計結(jié)果倒序排列并輸出。

我們可以使用下面的命令行,統(tǒng)計服務器返回的狀態(tài)碼,發(fā)現(xiàn)系統(tǒng)可能存在的問題。

正常情況下,狀態(tài)碼 200 或 30x 應該是出現(xiàn)次數(shù)最多的。40x 一般表示客戶端訪問問題。50x 一般表示服務器端問題。 下面是一些常見的狀態(tài)碼:

HTTP 協(xié)議狀態(tài)碼定義可以參閱:

查找并顯示所有狀態(tài)碼為 404 的請求

統(tǒng)計所有狀態(tài)碼為 404 的請求

現(xiàn)在我們假設某個請求 ( 例如 : URI: /path/to/notfound ) 產(chǎn)生了大量的 404 錯誤,我們可以通過下面的命令找到這個請求是來自于哪一個引用頁,和來自于什么瀏覽器。

有時候會發(fā)現(xiàn)其他網(wǎng)站出于某種原因,在他們的網(wǎng)站上使用保存在自己網(wǎng)站上的圖片。如果您想知道究竟是誰未經(jīng)授權使用自己網(wǎng)站上的圖片,我們可以使用下面的命令:

注意:使用前,將 修改為自己網(wǎng)站的域名。

統(tǒng)計共有多少個不同的 IP 訪問:

統(tǒng)計每一個 IP 訪問了多少個頁面:

將每個 IP 訪問的頁面數(shù)進行從小到大排序:

統(tǒng)計 2018 年 8 月 31 日 14 時內(nèi)有多少 IP 訪問 :

統(tǒng)計訪問最多的前十個 IP 地址

查看某一個 IP訪問了哪些頁面:

統(tǒng)計某個 IP 的詳細訪問情況,按訪問頻率排序

列出傳輸大小最大的幾個文件

列出輸出大于 204800 byte ( 200kb) 的頁面以及對應頁面發(fā)生次數(shù)

列出訪問最頻的頁面(TOP100)

列出訪問最頻的頁面([排除php頁面】(TOP100)

列出頁面訪問次數(shù)超過100次的頁面

列出最近1000條記錄,訪問量最高的頁面

統(tǒng)計每分鐘的請求數(shù),top100的時間點(精確到分鐘)

統(tǒng)計每小時的請求數(shù),top100的時間點(精確到小時)

統(tǒng)計每秒的請求數(shù),top100的時間點(精確到秒)

統(tǒng)計當天的 pv

說明:

可以使用下面的命令統(tǒng)計出所有響應時間超過 3 秒的日志記錄。

注意:NF 是當前記錄中域的個數(shù)。$NF 即最后一個域。

列出php頁面請求時間超過3秒的頁面,并統(tǒng)計其出現(xiàn)的次數(shù),顯示前100條

列出相應時間超過 5 秒的請求,顯示前20條

統(tǒng)計蜘蛛抓取次數(shù)

統(tǒng)計蜘蛛抓取404的次數(shù)

通過本文的介紹,我相信同學們一定會發(fā)現(xiàn) linux三劍客強大之處。在命令行中,它還能夠接受,和執(zhí)行外部的 AWK 程序文件,可以對文本信息進行非常復雜的處理,可以說“只有想不到的,沒有它做不到的”。

如何查看linux服務器的cpu數(shù)量,內(nèi)核數(shù),和cpu線程數(shù)?

lscpu命令,查看的是cpu的統(tǒng)計信息.\x0d\x0ablue@blue-pc:~$ lscpu\x0d\x0aArchitecture: i686 #cpu架構(gòu)\x0d\x0aCPU op-mode(s): 32-bit, 64-bit\x0d\x0aByte Order: Little Endian #小尾序\x0d\x0aCPU(s): 4 #總共有4核\x0d\x0aOn-line CPU(s) list: 0-3\x0d\x0aThread(s) per core: 1 #每個cpu核,只能支持一個線程,即不支持超線程\x0d\x0aCore(s) per socket: 4 #每個cpu,有4個核\x0d\x0aSocket(s): 1 #總共有1一個cpu\x0d\x0aVendor ID: GenuineIntel #cpu產(chǎn)商 intel\x0d\x0aCPU family: 6\x0d\x0aModel: 42\x0d\x0aStepping: 7\x0d\x0aCPU MHz: 1600.000\x0d\x0aBogoMIPS: 5986.12\x0d\x0aVirtualization: VT-x #支持cpu虛擬化技術\x0d\x0aL1d cache: 32K\x0d\x0aL1i cache: 32K\x0d\x0aL2 cache: 256K\x0d\x0aL3 cache: 6144K\x0d\x0a \x0d\x0a 查看/proc/cpuinfo,可以知道每個cpu信息,如每個CPU的型號,主頻等。\x0d\x0a#cat /proc/cpuinfo\x0d\x0aprocessor : 0\x0d\x0avendor_id : GenuineIntel\x0d\x0acpu family : 6\x0d\x0amodel : 42\x0d\x0amodel name : Intel(R) Core(TM) i5-2320 CPU @ 3.00GHz\x0d\x0a.....\x0d\x0a 上面輸出的是第一個cpu部分信息,還有3個cpu信息省略了。\x0d\x0a \x0d\x0a 內(nèi)存\x0d\x0a 概要查看內(nèi)存情況\x0d\x0a free -m\x0d\x0a total used free shared buffers cached\x0d\x0a Mem: 3926 3651 274 0 12 404\x0d\x0a -/+ buffers/cache: 3235 691\x0d\x0a Swap: 9536 31 9505\x0d\x0a 這里的單位是MB,總共的內(nèi)存是3926MB。\x0d\x0a \x0d\x0a 查看內(nèi)存詳細使用\x0d\x0a# cat /proc/meminfo\x0d\x0aMemTotal: 4020868 kB\x0d\x0aMemFree: 230884 kB\x0d\x0aBuffers: 7600 kB\x0d\x0aCached: 454772 kB\x0d\x0aSwapCached: 836 kB\x0d\x0a.....\x0d\x0a \x0d\x0a 查看內(nèi)存硬件信息\x0d\x0admidecode -t memory\x0d\x0a# dmidecode 2.11\x0d\x0aSMBIOS 2.7 present.\x0d\x0aHandle 0x0008, DMI type 16, 23 bytes\x0d\x0aPhysical Memory Array\x0d\x0a Location: System Board Or Motherboard\x0d\x0a....\x0d\x0a Maximum Capacity: 32 GB\x0d\x0a....\x0d\x0aHandle 0x000A, DMI type 17, 34 bytes\x0d\x0a....\x0d\x0aMemory Device\x0d\x0a Array Handle: 0x0008\x0d\x0a Error Information Handle: Not Provided\x0d\x0a Total Width: 64 bits\x0d\x0a Data Width: 64 bits\x0d\x0a Size: 4096 MB\x0d\x0a.....\x0d\x0a 我的主板有4個槽位,只用了一個槽位,上面插了一條4096MB的內(nèi)存。\x0d\x0a \x0d\x0a 磁盤\x0d\x0a 查看硬盤和分區(qū)分布\x0d\x0a# lsblk\x0d\x0aNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT\x0d\x0asda 8:0 0 465.8G 0 disk\x0d\x0a├—sda1 8:1 0 1G 0 part /boot\x0d\x0a├—sda2 8:2 0 9.3G 0 part [SWAP]\x0d\x0a├—sda3 8:3 0 74.5G 0 part /\x0d\x0a├—sda4 8:4 0 1K 0 part\x0d\x0a├—sda5 8:5 0 111.8G 0 part /home\x0d\x0a└—sda6 8:6 0 269.2G 0 part\x0d\x0a 顯示很直觀\x0d\x0a \x0d\x0a 如果要看硬盤和分區(qū)的詳細信息\x0d\x0a# fdisk -l\x0d\x0aDisk /dev/sda: 500.1 GB, 500107862016 bytes\x0d\x0a255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors\x0d\x0aUnits = sectors of 1 * 512 = 512 bytes\x0d\x0aSector size (logical/physical): 512 bytes / 4096 bytes\x0d\x0aI/O size (minimum/optimal): 4096 bytes / 4096 bytes\x0d\x0aDisk identifier: 0x00023728\x0d\x0a Device Boot Start End Blocks Id System\x0d\x0a/dev/sda1 * 2048 2148351 1073152 83 Linux\x0d\x0a/dev/sda2 2148352 21680127 9765888 82 Linux swap / Solaris\x0d\x0a/dev/sda3 21680128 177930239 78125056 83 Linux\x0d\x0a/dev/sda4 177932286 976771071 399419393 5 Extended/dev/sda5 177932288 412305407 117186560 83 Linux\x0d\x0a/dev/sda6 412307456 976771071 282231808 83 Linux\x0d\x0a \x0d\x0a 網(wǎng)卡\x0d\x0a 查看網(wǎng)卡硬件信息\x0d\x0a# lspci | grep -i 'eth'\x0d\x0a02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06)\x0d\x0a \x0d\x0a 查看系統(tǒng)的所有網(wǎng)絡接口\x0d\x0a# ifconfig -a\x0d\x0aeth0 Link encap:以太網(wǎng) 硬件地址 b8:97:5a:17:b3:8f \x0d\x0a .....\x0d\x0alo Link encap:本地環(huán)回 \x0d\x0a .....\x0d\x0a 或者是\x0d\x0aip link show\x0d\x0a1: lo: mtu 16436 qdisc noqueue state DOWN\x0d\x0alink/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00\x0d\x0a2: eth0: mtu 1500 qdisc pfifo_fast state UP qlen 1000\x0d\x0alink/ether b8:97:5a:17:b3:8f brd ff:ff:ff:ff:ff:ff\x0d\x0a \x0d\x0a 如果要查看某個網(wǎng)絡接口的詳細信息,例如eth0的詳細參數(shù)和指標\x0d\x0a# ethtool eth0\x0d\x0aSettings for eth0:\x0d\x0a Supported ports: [ TP MII ]\x0d\x0a Supported link modes: 10baseT/Half 10baseT/Full\x0d\x0a 100baseT/Half 100baseT/Full\x0d\x0a 1000baseT/Half 1000baseT/Full #支持千兆半雙工,全雙工模式\x0d\x0a Supported pause frame use: No\x0d\x0a Supports auto-negotiation: Yes #支持自適應模式,一般都支持\x0d\x0a Advertised link modes: 10baseT/Half 10baseT/Full\x0d\x0a 100baseT/Half 100baseT/Full\x0d\x0a 1000baseT/Half 1000baseT/Full\x0d\x0a Advertised pause frame use: Symmetric Receive-only\x0d\x0a Advertised auto-negotiation: Yes #默認使用自適應模式\x0d\x0a Link partner advertised link modes: 10baseT/Half 10baseT/Full\x0d\x0a 100baseT/Half 100baseT/Full\x0d\x0a .....\x0d\x0a Speed: 100Mb/s #現(xiàn)在網(wǎng)卡的速度是100Mb,網(wǎng)卡使用自適應模式,所以推測路由是100Mb,導致網(wǎng)卡從支 持千兆,變成要支持百兆\x0d\x0a Duplex: Full #全雙工\x0d\x0a .....\x0d\x0a Link detected: yes #表示有網(wǎng)線連接,和路由是通的\x0d\x0a\x0d\x0a其他\x0d\x0a 查看pci信息,即主板所有硬件槽信息。\x0d\x0alspci\x0d\x0a00:00.0 Host bridge: Intel Corporation 2nd Generation Core Processor Family DRAM Controller (rev 09) #主板芯片\x0d\x0a00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) #顯卡\x0d\x0a00:14.0 USB controller: Intel Corporation Panther Point USB xHCI Host Controller (rev 04) #usb控制器\x0d\x0a00:16.0 Communication controller: Intel Corporation Panther Point MEI Controller #1 (rev 04)\x0d\x0a00:1a.0 USB controller: Intel Corporation Panther Point USB Enhanced Host Controller #2 (rev 04)\x0d\x0a00:1b.0 Audio device: Intel Corporation Panther Point High Definition Audio Controller (rev 04) #聲卡\x0d\x0a00:1c.0 PCI bridge: Intel Corporation Panther Point PCI Express Root Port 1 (rev c4) #pci 插槽\x0d\x0a00:1c.2 PCI bridge: Intel Corporation Panther Point PCI Express Root Port 3 (rev c4)\x0d\x0a00:1c.3 PCI bridge: Intel Corporation Panther Point PCI Express Root Port 4 (rev c4)\x0d\x0a00:1d.0 USB controller: Intel Corporation Panther Point USB Enhanced Host Controller #1 (rev 04)\x0d\x0a00:1f.0 ISA bridge: Intel Corporation Panther Point LPC Controller (rev 04)\x0d\x0a00:1f.2 IDE interface: Intel Corporation Panther Point 4 port SATA Controller [IDE mode] (rev 04) #硬盤接口\x0d\x0a00:1f.3 SMBus: Intel Corporation Panther Point SMBus Controller (rev 04)\x0d\x0a00:1f.5 IDE interface: Intel Corporation Panther Point 2 port SATA Controller [IDE mode] (rev 04) #硬盤接口\x0d\x0a02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 06) #網(wǎng)卡\x0d\x0a03:00.0 PCI bridge: Integrated Technology Express, Inc. Device 8893 (rev 41)\x0d\x0a 如果要更詳細的信息:lspci -v 或者 lspci -vv\x0d\x0a 如果要看設備樹:lscpi -t\x0d\x0a \x0d\x0a 查看bios信息\x0d\x0a# dmidecode -t bios\x0d\x0a......\x0d\x0aBIOS Information\x0d\x0a Vendor: American Megatrends Inc.\x0d\x0a Version: 4.6.5\x0d\x0a Release Date: 04/25/2012\x0d\x0a .......\x0d\x0a BIOS Revision: 4.6\x0d\x0a......\x0d\x0a dmidecode以一種可讀的方式dump出機器的DMI(Desktop Management Interface)信息。這些信息包括了硬件以及BIOS,既可以得到當前的配置,也可以得到系統(tǒng)支持的最大配置,比如說支持的最大內(nèi)存數(shù)等。\x0d\x0a 如果要查看所有有用信息\x0d\x0a dmidecode -q\x0d\x0a 以上是linux查看硬件信息的所有命令,可以查看CPU、硬盤、網(wǎng)卡、磁盤等硬件的信息。

如何統(tǒng)計Linux的進程數(shù)

統(tǒng)計有多少行用wc命令的-l參數(shù),wc命令可以統(tǒng)計出多少字、行、字符數(shù),它的-l參數(shù)表示僅僅統(tǒng)計出行數(shù)。這個命令一般是和管道符結(jié)合使用,比如想知道一個文件有多少行可以這樣用:

cat /etc/passwd |wc -l

而查看Linux當前的所有進程用ps aux命令,結(jié)果中一行是一個進程,所以,統(tǒng)計Linux系統(tǒng)的進程總數(shù)的命令應該是:

ps aux | wc -l

linux 統(tǒng)計當前系統(tǒng)記住的歷史命令個數(shù)用什么命令

uname -a

2. cat /proc/version

3. cat /etc/issue

4. lsb_release -a

詳解 lsb_release -a

1. 登錄到服務器執(zhí)行 lsb_release -a ,即可列出所有版本信息,例如:

1. [root@3.5.5Biz-46 ~]# lsb_release -a

2. LSB Version: 1.3

3. Distributor ID: RedHatEnterpriseAS

4. Description: Red Hat Enterprise Linux AS release 4 (Nahant Update 1)

5. Release: 4

6. Codename: NahantUpdate1

7. [root@3.5.5Biz-46 ~]#

這個命令適用于所有的linux,包括Redhat、SuSE、Debian等發(fā)行版

在每個用戶的家目錄里,看文本命令很多,如: cat \ more \ less \ vi 等等這些命令都可以看某個用戶的 .bash_history 文件。

例:# more ~user/.bash_history 看 user 用戶的歷史命令,但是你要訪問的權限才行。

忘說了,看的是上次的歷史命令 :em02:

如何統(tǒng)計Linux中文件和文件夾/目錄的數(shù)量

在本教程中,我們將向您展示如何使用多個命令,并使用 ls、egrep、wc 和 find 命令執(zhí)行一些高級操作。 下面的命令將可用在多個方面。

為了實驗,我打算總共創(chuàng)建 7 個文件和 2 個文件夾(5 個常規(guī)文件和 2 個隱藏文件)。 下面的 tree 命令的輸出清楚的展示了文件和文件夾列表。

# tree -a /opt

/opt

├──magi

│ └──2g

│ ├──test5.txt

│ └──.test6.txt

├──test1.txt

├──test2.txt

├──test3.txt

├──.test4.txt

└──test.txt

2directories,7files

示例 1

統(tǒng)計當前目錄的文件(不包括隱藏文件)。 運行以下命令以確定當前目錄中有多少個文件,并且不計算點文件(LCTT 譯注:點文件即以“.” 開頭的文件,它們在 Linux 默認是隱藏的)。

# ls -l . | egrep -c '^-'

4

細節(jié):

ls : 列出目錄內(nèi)容

-l : 使用長列表格式

. : 列出有關文件的信息(默認為當前目錄)

| : 將一個程序的輸出發(fā)送到另一個程序進行進一步處理的控制操作符

egrep : 打印符合模式的行

-c : 通用輸出控制

'^-' : 以“-”開頭的行(ls -l 列出長列表時,行首的 “-” 代表普通文件)

示例 2

統(tǒng)計當前目錄包含隱藏文件在內(nèi)的文件。 包括當前目錄中的點文件。

# ls -la . | egrep -c '^-'

5

示例 3

運行以下命令來計數(shù)當前目錄的文件和文件夾。 它會計算所有的文件和目錄。

# ls -l | wc -l

5

細節(jié):

ls : 列出目錄內(nèi)容

-l : 使用長列表格式

| : 將一個程序的輸出發(fā)送到另一個程序進行進一步處理的控制操作符

wc : 這是一個統(tǒng)計每個文件的換行符、單詞和字節(jié)數(shù)的命令

-l : 輸出換行符的數(shù)量

Linux 中如何查看文件的行數(shù),字數(shù),字節(jié)數(shù)

在 Linux 系統(tǒng)使用中,我們經(jīng)常需要查看或統(tǒng)計文本文件中的行數(shù),字數(shù),字節(jié)數(shù)等內(nèi)容,那么怎么快捷的統(tǒng)計出文件中這些關鍵數(shù)據(jù)呢。

在Linux系統(tǒng)中這統(tǒng)計非常方便,只需要簡單的幾個命令就可以搞定,這個命令就是 wc 。

首先我們介紹下 wc 這個命令:

幫助說明中簡介明白的介紹了 wc 的用法,我們來舉例說明下:

1、獲取文件中行數(shù)

2、獲取文件中單詞數(shù)

3、獲取文件中字節(jié)

是不是很簡單呢。

查詢文件的行數(shù)或字數(shù)只是個簡單的需求場景,有時候我們其實是要獲取多少匹配關鍵字的行數(shù),那么這種情況如何實現(xiàn)呢,這種情況我們需要使用另外一個 grep 命令來配置 wc 來完成我們的需求場景。

首先我們看看grep這個命令:

我們通過如下命令方式來實現(xiàn)查詢匹配到關鍵字'error'中文件行數(shù)。

是不是很簡單,如果希望了解更多,不妨通過 man 命令來查看你想了解的命令吧。


分享文章:linux統(tǒng)計總數(shù)命令,linux統(tǒng)計文件個數(shù)命令
網(wǎng)址分享:http://weahome.cn/article/dssojei.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部