相關命令工具

来源:https://www.cnblogs.com/shenxm/archive/2018/02/01/8398832.html
-Advertisement-
Play Games

相關命令工具 lsof sync mknod losetup uuidgen free df du lscpu dd convert ...


相關命令工具

lsof

    lsof - list open files,列出那些文件被啟用了
    lsof  [ -?abChKlnNOPRtUvVX ] [ -A A ] [ -c c ] [ +c c ] [ +|-d d ] [ +|-D D ] [ +|-e s ] [ +|-f [cfgGn] ] [ -F [f] ] [ -g [s] ] [ -i [i] ] [ -k k ] [ +|-L [l] ] [ +|-m m ] [ +|-M ] [ -o [o] ] [ -p s ] [ +|-r [t[m<fmt>]] ] [ -s [p:s] ] [ -S [t] ] [ -T [t] ] [ -u s ] [ +|-w ] [ -x [fl] ] [ -z [z] ] [ -Z [Z] ] [ -- ]     [names]
        -?|-h   顯示幫助          
        -a   and或or選擇
        -b  避免內核阻礙
        -c c    cmd c ^c /c/[bix]  
        +c w    COMMAND width (9)    
        +d s    目錄 s 文件
        -d s    被FD設置選擇
        +D D    dir D tree *SLOW?*   
        +|-e s      exempt s *RISKY*
        -i  select IPv[46] files  
        -K  列出任務(threads)    
        -l  列出uid
        -n  不用主機名
        -N  選擇NFS文件   
        -o  列出文件offset
        -O  no overhead *RISKY*   
        -P  no port names           
        -R  list paRent PID
        -s  列出文件尺寸    
        -t  簡潔列表       
        -T  關閉 TCP/TPI 信息
        -U  選擇 Unix 套接字
        -v  列出版本信息      
        -V  詳細搜索
        +|-w    Warnings (+)       
        -X  跳過 TCP&UDP* 文件
        -Z Z    context [Z]
        --  末選項掃描 
        +f|-f   +filesystem or -file names     
        +|-f[gG]    flaGs 
        -F [f]  select fields; -F? for help  
        +|-L [l]    list (+) suppress (-) link counts < l (0 = all; default = 0)
        +m [m]  use|create mount supplement
        +|-M    portMap registration (-)       
        -o o    o 0t offset digits (8)
        -p s    exclude(^)|select PIDs         
        -S [t] t    second stat timeout (15)
        -T qs   TCP/TPI Q,St (s) info
        -g [s]  exclude(^)|select and print process group IDs
        -i i    select by IPv[46] address: [46][proto][@host|addr][:svc_list|port_list]
        +|-r [t[m<fmt>]]    repeat every t seconds (15);  + until no files, - forever.An optional suffix to t is m<fmt>, 
            m must separate t from <fmt> and <fmt> is an strftime(3) format for the marker line.
        -s p:s      exclude(^)|select protocol (p = TCP|UDP) states by name(s).
        -u s    exclude(^)|select login|UID set s
        -x [fl]     cross over +d|+D File systems or symbolic Links
        names   select named files or files on named file systems
        例如
            lsof MOUNT_POINT

sync

    sync - flush file system buffers,強制同步,更新超級塊
    用法:
        sync

mknod

    mknod - make block or character special files
        Create the special file NAME of the given TYPE.
    mknod [options]... name type [major minor]
        [options]
        -m, --mode=MODE     設置文件許可權給MODE, not a=rw - umask
        -Z                      設置 SELinux 安全上下文給預設類型
        --context[=CTX]     如同 -Z, or 如果 CTX 被指定,設置 SELinux or SMACK安全上下文給CTX
        [type]
        b       創建一個塊指定的文件(buffered) 
        c, u    創建一個字元指定文件 (unbuffered) 
        p       創建一個 FIFO

losetup

    losetup - set up and control loop(環路) devices
    losetup [options] [<loopdev>]
    losetup [options] -f | <loopdev> <file>
        -a, --all                       列出所有使用的設備
        -d, --detach <loopdev> [...]    分離一個或多個設備
        -D, --detach-all                分離所有使用的設備
        -f, --find                      找到第一個不用的設備
        -c, --set-capacity <loopdev>    重設設備
        -j, --associated <file>         列出設備關聯的文件<file>
        -l, --list                      列出所有或指定的信息
        -o, --offset <num>              start at offset <num> into file
        -O, --output <cols>             指定輸出的列, --list
        --sizelimit <num>           設備限製為文件的<num> bytes 
        -P, --partscan                  創建分區迴圈設備
        -r, --read-only                 安裝只讀迴圈設備
        --show                      在安裝後顯示設備名 (with -f)
        Available --list columns:
                 NAME   環設備命令
            AUTOCLEAR   自動清除標記設置
            BACK-FILE   設備支持文件
             BACK-INO   支持文件inode號
         BACK-MAJ:MIN   支持文件major:minor 設備號
              MAJ:MIN   環設備 major:minor 號
               OFFSET   從開始處偏離
             PARTSCAN   partscan flag set
                   RO   只讀設備
            SIZELIMIT   採用bytes的文件尺寸限制
        用法示例:
            Get info:
                 losetup loopdev
                 losetup -l [-a]
                 losetup -j file [-o offset]
            Delete loop:
                 losetup -d loopdev...
            Delete all used loop devices:
                 losetup -D
            Print name of first unused loop device:
                 losetup -f
            Setup loop device:
                 losetup [-o offset] [--sizelimit size][-p pfd] [-rP] {-f[--show]|loopdev} file
            Resize loop device:
                 losetup -c loopdev

uuidgen

    uuidgen - create a new UUID value,創建新的uuid值
    uuidgen [options]
        -r, --random        產生基於隨機數的uuid
        -t, --time          產生基於時間的uuid

free

    free - Display amount of free and used memory in the system,顯示記憶體空間使用狀態
    free [options]
        -b, --bytes             採用bytes顯示
        -k, --kilo              採用kilobytes顯示
        -m, --mega              以MB 為單位顯示
        -g, --giga              以GB 為單位顯示
            --tera              採用terabytes顯示
        -h, --human             使用人類可讀的顯示
            --si                使用1000而不是1024的格式
        -l, --lohi              顯示低或高記憶體使用的狀態
        -t, --total             顯示RAM + swap
        -s N, --seconds N       重覆列印每 N 秒
        -c N, --count N         重覆列印 N 時間然後退出
        -w, --wide              廣泛輸出
    在沒有裝好的系統時查看記憶體
        cat /proc/meminfo  

df

    df - report file system disk space usage,查看文件系統空間占用信息
    df [OPTION]... [FILE]...
        -a或--all:   包含全部的文件系統; 
        --block-size=<區塊大小>:    以指定的區塊大小來顯示區塊數目; 
        -h或--human-readable:    以可讀性較高的方式來顯示信息; 
        -H或--si:    與-h參數相同,但在計算時是以1000 Bytes為換算單位而非1024 Bytes; 
        -i或--inodes:    顯示inode的信息; 
        -k或--kilobytes: 指定區塊大小為1024位元組; 
        -l或--local: 僅顯示本地端的文件系統; 
        -m或--megabytes: 指定區塊大小為1048576位元組;
        --no-sync:  在取得磁碟使用信息前,不要執行sync指令,此為預設值; 
        -P或--portability:   使用POSIX的輸出格式; 
        --sync: 在取得磁碟使用信息前,先執行sync指令; 
        -t<文件系統類型>或--type=<文件系統類型>: 僅顯示指定文件系統類型的磁碟信息; 
        -T或--print-type:    顯示文件系統的類型; 
        -x<文件系統類型>或--exclude-type=<文件系統類型>: 不要顯示指定文件系統類型的磁碟信息

du

    du - estimate(預估)file space usage,查看某目錄總體空間占用狀態。
        Summarize disk usage of each FILE, recursively for directories.
    du [OPTION]... [FILE]...
    du [OPTION]... --files0-from=F
        -0, --null              以0位元組而不是以換行符結束每個輸出行
        -a, --all               為所有文件計數,而不是只給目錄計數
        --apparent-size     列印當前尺寸而不是磁碟使用率
        -B, --block-size=SIZE   以指定的SIZE來規範顯示,e.g.,'-BM' prints sizes in units of 1,048,576 bytes;see SIZE format below
        -b, --bytes             等價於 '--apparent-size --block-size=1'
        -c, --total             顯示總的統計
        -D, --dereference-args      僅取消引用在命令行中的軟鏈接
        -d, --max-depth=N       顯示一個目錄的統計信息 (or file, with --all),  --max-depth=0 is the same as --summarize
        --files0-from=F     總結在文件F中的指定為NUL-terminated文件的磁碟使用率,如果F為-,則從標準輸入中讀取名稱
        -H                      等價於--dereference-args (-D)
        -h, --human-readable    以可讀格式顯示 (e.g., 1K 234M 2G)
        --inodes            列出節點使用信息
        -k                      如同--block-size=1K
        -L, --dereference       取消所有軟鏈接
        -l, --count-links       若是硬鏈接的話多次計算尺寸
        -m                      如同 --block-size=1M
        -P, --no-dereference    不允許任何軟鏈接
        -S, --separate-dirs     不包括子目錄的尺寸
        --si                如同 -h, 但使用的是1000而不是1024
        -s, --summarize         僅顯示每個參數的彙總
        -t, --threshold=SIZE    如果為正數,則排除小於SIZE的項,若為負載數則為大於SIZE的項
        --time              顯示在目錄中任何文件或子目錄最近修改的時間
        --time=WORD         用WORD來代替修改時間atime, access, use, ctime or status來顯示時間
        --time-style=STYLE      用STYLE來顯示時間,可以是:full-iso, long-iso, iso, or +FORMAT;FORMAT可理解為 'date'
        -X, --exclude-from=FILE     排除任何匹配到的FILE的文件
        --exclude=PATTERN       排除匹配到PATTERN的文件
        -x, --one-file-system       在不同的文件系統中跳過目錄

lscpu

    lscpu - display information about the CPU architecture,查看cpu情況
    lscpu [options]
        -a, --all                   顯示線上或離線的cpu情況 (default for -e)
        -b, --online                僅顯示線上cpu (default for -p)
        -c, --offline               僅顯示離線cpu
        -e, --extended[=<list>]     輸出一個擴展的可讀格式
        -p, --parse[=<list>]        輸出一個不變的格式
        -s, --sysroot <dir>         使用指定的目錄作為系統root
        -x, --hex                   以16進位掩碼顯示而不是列出cpu
    Available columns:
                   CPU      logical CPU number
                  CORE      logical core number
                SOCKET      logical socket number
                  NODE      logical NUMA node number
                  BOOK      logical book number
                 CACHE      shows how caches are shared between CPUs
          POLARIZATION      CPU dispatching mode on virtual hardware
               ADDRESS      physical address of a CPU
            CONFIGURED      shows if the hypervisor has allocated the CPU
                ONLINE      shows if Linux currently makes use of the CPU
    查看cpu情況,用於無法使用命令的情況
        cat /proc/cpuinfo

dd

    dd - convert(轉換)and copy a file
        Copy a file, converting and formatting according to the operands.
    dd [OPERAND]...
    dd OPTION
        用法:
            dd if=/PATH/FROM/SRC of=/PATH/TO/DEST
                bs=# :  block size,  複製單元大小
                count=# :   複製多少個bs
                of=file     寫到所命名的文件而不是到標準輸出
                if=file     從所命名文件讀取而不是從標準輸入
                bs=size     指定塊大小(既是是ibs 也是obs)
                ibs=size    一次讀size個byte
                obs=size    一次寫size個byte
                cbs=size    一次轉化size個byte
                skip=blocks     從開頭忽略blocks個ibs 大小的塊
                seek=blocks     從開頭忽略blocks個obs 大小的塊
                count=n     只拷貝n個記錄
                 conv=conversion[,conversion...]    用指定的參數轉換文件
                轉換參數:
                    ascii   轉換 EBCDIC(十進位交換碼)為ASCII
                    ebcdic  轉換 ASCII為EBCDIC
                    lcase   把大寫字元轉換為小寫字元
                    ucase   把小寫字元轉換為大寫字元
                    nocreat     不創建輸出文件
                    noerror     出錯時不停止
                    notrunc     不截短輸出文件
                    sync    把每個輸入塊填充到ibs 個位元組,不足部分用空(NUL)字 字元補齊
        備份MBR: 
            dd if=/dev/sda of=/tmp/mbr.bak bs=512 count=1
        破壞MBR中的bootloader: 
            dd if=/dev/zero of=/dev/sda bs=64 count=1 seek=446
        有一個大與2K 的二進位文件fileA 。現在想從第64 個位元組位置開始讀取,需要讀取的大小是128Byts 。又有fileB,  想把上面讀取到的128Bytes 寫到第32 個位元組開始的位置,替換128Bytes ,實現如下:
            #dd if=fileA of=fileB bs=1 count=128 skip=63 seek=31 conv=notrunc
        備份:
            dd if=/dev/sdx of=/dev/sdy
            將本地的/dev/sdx 整盤備份到/dev/sdy
            dd if=/dev/sdx of=/path/to/image
            將/dev/sdx 全盤數據備份到指定路徑的image 文件
            dd if=/dev/sdx | gzip >/path/to/image.gz
            備份/dev/sdx 全盤數據,並利用gzip 壓縮,保存到指定路徑
        恢復:
            dd if=/path/to/image of=/dev/sdx
            將備份文件恢復到指定盤
            gzip -dc /path/to/image.gz | dd of=/dev/sdx
            將壓縮的備份文件恢復到指定盤
        拷貝記憶體資料到硬碟
            dd if=/dev/mem of=/root/mem.bin bs=1024
            將記憶體里的數據拷貝到root目錄下的mem.bin 文件
        從光碟拷貝iso 鏡像
            dd if=/dev/cdrom of=/root/cd.iso
            拷貝光碟數據到root 文件夾下,並保存為cd.iso 文件
        銷毀磁碟數據
            dd if=/dev/urandom of=/dev/sda1
            利用隨機的數據填充硬碟,在某些必要的場合可以用來銷毀數據,執行此操作以後,/dev/sda1將無法掛載,創建和拷貝操作無法執行
        得到最恰當的block size
            dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file
            dd if=/dev/zero bs=2048 count=500000 of=/root/1Gb.file
            dd if=/dev/zero bs=4096 count=250000 of=/root/1Gb.file
            通過比較dd指令輸出中所顯示的命令執行時間,即可確定系統最佳的block size 大小
        測試硬碟寫速度
            dd if=/dev/zero of=/root/1Gb.file bs=1024 count=1000000
        測試硬碟讀速度
            dd if=/root/1Gb.file bs=64k | dd of=/dev/null
        修複硬碟
            dd if=/dev/sda of=/dev/sda
            當硬碟較長時間(比如1,2 年)放置不使用後,磁碟上會產生消磁點。當磁頭讀到這些區域時會遇到困難,並可能導致I/O錯誤。當這種情況影響到硬碟的第一個扇區時,可能導致硬碟報廢。上邊的命令有可能使這些數據起死回生, 且這個過程是安全高效的
        備份mbr分區表

        恢復mbr分區表

convert

    相當於window中的ps,由包ImageMagick-6.7.8.9-15.el7_2.x86_64提供
    convert - convert between image formats as well as resize an image, blur, crop, despeckle, dither, draw on, flip, join, re-sample, and much more.
    convert [input-options] input-file [output-options] output-file
    查看man瞭解更多配置選項

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 寫web程式寫到一定的瓶頸了,就想換種技術深入的寫寫。看能不能提高自己。選擇了winform 和python。這兩個的學習筆記都會記錄分享。 不管winform還是web還是WebService還是WebApi都得與資料庫打交道。現在關係性資料庫應用越來越廣泛。這裡就選擇了EF。有的人說EF太"重" ...
  • ROS Node node是執行運算的進程。節點相互組合成gragh,並通過streaming topics、PRC service、Parameter Server來進行通信。 ROS中節點的使用為整個系統提供了幾個好處。由於崩潰被隔離到各個節點,所以還有額外的容錯功能。與單片系統相比,代碼複雜性 ...
  • 安裝部分 在安裝後,有一個步驟1.6是設置環境,中間用到的指令echo是常用指令,它的功能是將輸入的字元串送往標準輸出。當格式為:echo 文件內容 >> 文件名 時,是向文件中增加文件內容。 bash文件中其實主要就是運行所需要的各種所需環境變數的定義。 source setup.bash 是把r ...
  • 每天背著電腦上下班,懶得帶滑鼠,公司給配的電腦的滑鼠竟然還是PS2介面的,無法用於筆記本,然後每天就只能用觸摸板了。雖然Thinkpad觸摸板還是不錯的,但畢竟還是不方便,這是要好好學一下快捷鍵了。自己會的快捷鍵太少,今天百度了一下才發現還有那麼多好用的快捷鍵,趕緊記錄下來。 常規快捷鍵 Win+E ...
  • 相容性非常強的兩個函數 SUMIF() 說相容性,當然得說SUMIF了。 來,我們先舉個例子。 現有一個表格,算起來只有"科目劃分"、"發生額"兩列內容,但是折成了很多列。 我們需要統計"郵寄費"的總發生額。 這可怎麼辦呀,總不能手動整成兩列吧? 這時候,SUMIF的相容性就顯現出來了。 還是像往常... ...
  • 用戶和組 用戶user 組group Linux 組的類別: 用戶和組的配置文件 passwd 文件格式 shadow 文件格式 密碼加密(/etc/shadow) 密碼的複雜性策略 密碼期限 group 文件格式(/etc/group) gshdow 文件格式(/etc/gshadow) 新建用戶 ...
  • 創建新用戶 創建一個叫xiaoming的用戶: [root@192 ~]# adduser xiaoming 為這個用戶初始化密碼,linux會判斷密碼複雜度,不過可以強行忽略: [root@192 ~]# passwd xiaoming更改用戶 xiaoming 的密碼 。新的 密碼:無效的密碼: ...
  • 相關實驗示例 創建文件系統 創建和刪除swap分區 以文件方式創建和刪除swap分區 實現配額 創建和刪除軟RAID 邏輯捲相關 創建iso文件 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...