欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

相关命令工具

程序员文章站 2022-08-09 20:47:17
相关命令工具 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了解更多配置选项