linux命令大全

-----------------https://www.runoob.com/linux/linux-command-manual.html------------------------------------

--系统操作类

----ctrl+c 终止当前进程

--磁盘管理类

----pwd [--help][--version]
    用于显示工作目录
    --version--help 在线帮助。
    --version 显示版本信息。

----cd [dirName]  
      cd /usr/bin 跳到/usr/bin/目录
      cd ~ 跳到home目录
      cd / 跳到根目录
      cd ../.. 跳到当前目录的上上两层

----ls [-alrtAFR] [name...]
    -a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)
    -l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
    -r 将文件以相反次序显示(原定依英文字母次序)
    -t 将文件依建立时间之先后次序列出
    -A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
    -F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
    -R 若目录下有文件,则以下之文件亦皆依序列出

    ls \         列出根目录(\)下的所有目录
    ls -ltr s*     列出目前工作目录下所有名称是 s 开头的文件,越新的排越后面
    ls -lR /bin    将 /bin 目录以下所有目录及文件详细资料列出
    ls -AF         列出目前工作目录下所有文件及目录;目录于名称后加 "/", 可执行档于名称后加 "*"

----rmdir [-p] dirName
    命令删除空的目录
    -p 是当子目录被删除后使它也成为空目录的话,则顺便一并删除。

----mkdir [-mp] dirName
      -m 选项用于手动配置所创建目录的权限,而不再使用默认权限。
      -p 选项递归创建所有目录,如 mkdir -p /home/test/demo

----stat [fileName | dirName]
    以文字的格式来显示inode的内容,如大小、权限和修改时间等信息。

----tree [-aACdDfFgilnNpqstux][-I <范本样式>][-P <范本样式>][目录...]
    以树状图列出目录的内容
    -a 显示所有文件和目录。
    -A 使用ASNI绘图字符显示树状图而非以ASCII字符组合。
    -C 在文件和目录清单加上色彩,便于区分各种类型。
    -d 显示目录名称而非内容。
    -D 列出文件或目录的更改时间。
    -f 在每个文件或目录之前,显示完整的相对路径名称。
    -F 在执行文件,目录,Socket,符号连接,管道名称名称,各自加上"*","/","=","@","|"号。
    -g 列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码。
    -i 不以阶梯状列出文件或目录名称。
    -I<范本样式> 不显示符合范本样式的文件或目录名称。
    -l 如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录。
    -n 不在文件和目录清单加上色彩。
    -N 直接列出文件和目录名称,包括控制字符。
    -p 列出权限标示。
    -P<范本样式> 只显示符合范本样式的文件或目录名称。
    -q 用"?"号取代控制字符,列出文件和目录名称。
    -s 列出文件或目录大小。
    -t 用文件和目录的更改时间排序。
    -u 列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码。
    -x 将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该子目录予以排除在寻找范围外。

--文件管理类

----cp [options] source dest [directory]
    用于复制文件或目录
    -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
    -d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
    -f:覆盖已经存在的目标文件而不给出提示。
    -i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
    -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
    -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
    -l:不复制文件,只是生成链接文件。    
    cp –r test/ newtest 将当前目录"test/"下的所有文件复制到新目录"newtest"下

----rm [options] name
    用于删除一个文件或者目录,若删除目录则必须配合选项"-r"
    -i 删除前逐一询问确认。
    -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
    -r 将目录及以下之档案亦逐一删除。
    rm  -r  * 删除当前目录下的所有文件及目录
    rm  test.txt 询问:是否删除 一般文件 "test.txt"? y    
    rm  homework 提示:无法删除目录"homework": 是一个目录  
    rm  -r  homework 询问:是否删除 目录 "homework"? y 

----whereis [-bfmsu][-B <目录>...][-M <目录>...][-S <目录>...][文件...]
    在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件,或是帮助文件。
    该指令只能用于查找二进制文件、源代码文件和man手册页,一般文件的定位需使用locate命令。
    -b  只查找二进制文件。
    -B<目录>  只在设置的目录下查找二进制文件。
    -f  不显示文件名前的路径名称。
    -m  只查找说明文件。
    -M<目录>  只在设置的目录下查找说明文件。
    -s  只查找原始代码文件。
    -S<目录>  只在设置的目录下查找原始代码文件。
    -u  查找不包含指定类型的文件。

----locate [-d ][--help][--version][范本样式...]
    用于查找符合条件的文档,它会去保存文档和目录名称到数据库内,查找合乎范本样式条件的文档或目录。
    -d或--database= 配置locate指令使用的数据库。locate指令预设的数据库位于/var/lib/slocate目录里,文档名为slocate.db,您可使用 这个参数另行指定。
    --help  在线帮助。
    --version  显示版本信息。
    附加说明
    locate与find 不同: find 是去硬盘找,locate 只在/var/lib/slocate资料库中找。
    locate的速度比find快,它并不是真的查找,而是查数据库。
    一般文件数据库在/var/lib/slocate/slocate.db中,所以locate的查找并不是实时的,而是以数据库的更新为准。
    文件数据库一般是系统自己维护,也可以手工升级数据库 ,命令为:    locate -u。

----find path -option [-print] [-exec -ok command]   {} \;
    在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。
    如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。
    find 根据下列规则判断 path 和 expression,在命令列上第一个 - ,! 之前的部份为 path,之后的是 expression。
    如果 path 是空字串则使用目前路径,如果 expression 是空字串则使用 -print 为预设 expression 。
    expression 中可使用的选项有二三十个之多,在此只介绍最常用的部份。
    -mount, -xdev : 只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件
    -amin n : 在过去 n 分钟内被读取过
    -anewer file : 比文件 file 更晚被读取过的文件
    -atime n : 在过去n天内被读取过的文件
    -cmin n : 在过去 n 分钟内被修改过
    -cnewer file :比文件 file 更新的文件
    -ctime n : 在过去n天内被修改过的文件
    -empty : 空的文件-gid n or -group name : gid 是 n 或是 group 名称是 name
    -ipath p, -path p : 路径名称符合 p 的文件,ipath 会忽略大小写
    -name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写
    -size n : 文件大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。-type c : 文件类型是 c 的文件。
    d: 目录
    c: 字型装置文件
    b: 区块装置文件
    p: 具名贮列
    f: 一般文件
    l: 符号连结
    s: socket
    -pid n : process id 是 n 的文件
    你可以使用 {} 将运算式分隔,并使用下列运算。
    exp1 -and exp2
    ! expr
    -not expr
    exp1 -or exp2
    exp1, exp2

    find . -name "*.c"    将当前目录及其子目录下所有延伸档名是 c 的文件列出来
    find / -name "php*.so" 在/目录下查找"php*.so"文件
    find . -type f         将当前目录其其下子目录中所有一般文件列出
    find . -ctime -20     将当前目录及其子目录下所有最近 20 天内更新过的文件列出
    find /var/log -type f -mtime +7 -ok rm {} \; 查找/var/log目录中更改时间在7日以前的普通文件,并在删除之前询问它们
    find . -type f -perm 644 -exec ls -l {} \;   查找前目录中文件属主具有读、写权限,并且文件所属组的用户和其他用户具有读权限的文件
    find / -type f -size 0 -exec ls -l {} \;      为了查找系统中所有文件长度为0的普通文件,并列出它们的完整路径

----chmod [-cfvR] [--help] [--version] mode file...
    mode : 权限设定字串,格式如下 :
    [ugoa...][[+-=][rwxX]...][,...]
    其中:
    u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
    + 表示增加权限、- 表示取消权限、= 表示唯一设定权限即修改权限
    r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。

    其他参数说明:
    -c : 若该文件权限确实已经更改,才显示其更改动作
    -f : 若该文件权限无法被更改,也不要显示错误信息
    -v : 显示权限变更的详细资料
    -R : 对当前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)
    --help : 显示辅助说明
    --version : 显示版本

----look [-adf][-t<字尾字符串>][字首字符串][字典文件]
    -a 使用另一个字典文件web2,该文件也位于/usr/dict目录下。
    -d 只对比英文字母和数字,其余一慨忽略不予比对。
    -f 忽略字符大小写差别。
    -t<字尾字符串> 设置字尾字符串。
    look L testfile 查找在testfile文件中以字母L开头的所有的行

----cat [-AbeEnstTuv] [--help] [--version] fileName
    用于连接文件并打印到标准输出设备上
    -n 或 --number:由 1 开始对所有输出的行数编号。
    -b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
    -s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。
    -v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。
    -E 或 --show-ends : 在每行结束处显示 $。
    -T 或 --show-tabs: 将 TAB 字符显示为 ^I。
    -A, --show-all:等价于 -vET。
    -e:等价于"-vE"选项;
    -t:等价于"-vT"选项;
    cat -n textfile1 > textfile2                 把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里
    cat -b textfile1 textfile2 >> textfile3     把 textfile1 和 textfile2 的文档内容加上行号(空白行不加)之后将内容附加到 textfile3 文档里

----tar [-ABcdgGhiklmMoOpPrRsStuUvwWxzZ][-b <区块数目>][-C <目的目录>][-f <备份文件>][-F <Script文件>][-K <文件>][-L <媒体容量>][-N <日期时间>][-T <范本文件>][-V <卷册名称>][-X <范本文件>][-<设备编号><存储密度>][--after-date=<日期时间>][--atime-preserve][--backuup=<备份方式>][--checkpoint][--concatenate][--confirmation][--delete][--exclude=<范本样式>][--force-local][--group=<群组名称>][--help][--ignore-failed-read][--new-volume-script=<Script文件>][--newer-mtime][--no-recursion][--null][--numeric-owner][--owner=<用户名称>][--posix][--erve][--preserve-order][--preserve-permissions][--record-size=<区块数目>][--recursive-unlink][--remove-files][--rsh-command=<执行指令>][--same-owner][--suffix=<备份字尾字符串>][--totals][--use-compress-program=<执行指令>][--version][--volno-file=<编号文件>][文件或目录...]
    -c或--create 建立新的备份文件。
    -t或--list 列出备份文件的内容。
    -x或--extract或--get 从备份文件中还原文件。
    -z或--gzip或--ungzip 通过gzip指令处理备份文件
    -v或--verbose 显示指令执行过程。
    -f<备份文件>或--file=<备份文件> 指定备份文件。
    其他参数见: https://www.runoob.com/linux/linux-comm-tar.html
    tar -czvf test.tar.gz a.c   压缩 a.c文件为test.tar.gz,非打包
    tar -tzvf test.tar.gz         列出压缩文件内容
    tar -xzvf test.tar.gz          解压文件

----gzip [-acdfhlLnNqrtvV][-S &lt;压缩字尾字符串&gt;][-&lt;压缩效率&gt;][--best/fast][文件...] 或 gzip [-acdfhlLnNqrtvV][-S &lt;压缩字尾字符串&gt;][-&lt;压缩效率&gt;][--best/fast][目录]
    用于压缩文件,扩展名为".gz"。
    -a或--ascii  使用ASCII文字模式。
    -c或--stdout或--to-stdout  把压缩后的文件输出到标准输出设备,不去更动原始文件。
    -d或--decompress或----uncompress  解开压缩文件。
    -f或--force  强行压缩文件。不理会文件名称或硬连接是否存在以及该文件是否为符号连接。
    -h或--help  在线帮助。
    -l或--list  列出压缩文件的相关信息。
    -L或--license  显示版本与版权信息。
    -n或--no-name  压缩文件时,不保存原来的文件名称及时间戳记。
    -N或--name  压缩文件时,保存原来的文件名称及时间戳记。
    -q或--quiet  不显示警告信息。
    -r或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。
    -S<压缩字尾字符串>或----suffix<压缩字尾字符串>  更改压缩字尾字符串。
    -t或--test  测试压缩文件是否正确无误。
    -v或--verbose  显示指令执行过程。
    -V或--version  显示版本信息。
    -<压缩效率>  压缩效率是一个介于1-9的数值,预设值为"6",指定愈大的数值,压缩效率就会愈高。
    --best  此参数的效果和指定"-9"参数相同。
    --fast  此参数的效果和指定"-1"参数相同。
    gzip *         压缩当前目录下的所有文件
    gzip -dv *  解压当前目录下的所有文件,并列出详细信息
    gzip -l *   显示当前目录下压缩文件的信息

----touch [-acfm][-d<日期时间>][-r<参考文件或目录>] [-t<日期时间>][--help][--version][文件或目录…]
    用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。
    ls -l fileName 可以显示档案的时间记录。
    touch testfile 修改文件的时间属性

-------------------------------------------------------------------------------------
--网络管理类

----ip addr 查看当前网络IP地址

----netstat [-acCeFghilMnNoprstuvVwx][-A<网络类型>][--ip]
    用于显示网络状态
    -a或--all 显示所有连线中的Socket。
    -A<网络类型>或--<网络类型> 列出该网络类型连线中的相关地址。
    -c或--continuous 持续列出网络状态。
    -C或--cache 显示路由器配置的快取信息。
    -e或--extend 显示网络其他相关信息。
    -F或--fib 显示FIB。
    -g或--groups 显示多重广播功能群组组员名单。
    -h或--help 在线帮助。
    -i或--interfaces 显示网络界面信息表单。
    -l或--listening 显示监控中的服务器的Socket。
    -M或--masquerade 显示伪装的网络连线。
    -n或--numeric 直接使用IP地址,而不通过域名服务器。
    -N或--netlink或--symbolic 显示网络硬件外围设备的符号连接名称。
    -o或--timers 显示计时器。
    -p或--programs 显示正在使用Socket的程序识别码和程序名称。
    -r或--route 显示Routing Table。
    -s或--statistice 显示网络工作信息统计表。
    -t或--tcp 显示TCP传输协议的连线状况。
    -u或--udp 显示UDP传输协议的连线状况。
    -v或--verbose 显示指令执行过程。
    -V或--version 显示版本信息。
    -w或--raw 显示RAW传输协议的连线状况。
    -x或--unix 此参数的效果和指定"-A unix"参数相同。
    --ip或--inet 此参数的效果和指定"-A inet"参数相同。
    netstat -a  显示详细的网络状况
    netstat -nu 显示当前户籍UDP连接状况
    etstat -apu 显示UDP端口号的使用情况
    netstat -i  显示网卡列表
    netstat -g  显示组播组的关系
    netstat -s  显示网络统计信息
    netstat -l  显示监听的套接口

----ping [-dfnqrRv][-c<完成次数>][-i<间隔秒数>][-I<网络界面>][-l<前置载入>][-p<范本样式>][-s<数据包大小>][-t<存活数值>][主机名称或IP地址]
    用于检测主机。执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常
    -d 使用Socket的SO_DEBUG功能。
    -c<完成次数> 设置完成要求回应的次数。
    -f 极限检测。
    -i<间隔秒数> 指定收发信息的间隔时间。
    -I<网络界面> 使用指定的网络接口送出数据包。
    -l<前置载入> 设置在送出要求信息之前,先行发出的数据包。
    -n 只输出数值。
    -p<范本样式> 设置填满数据包的范本样式。
    -q 不显示指令执行过程,开头和结尾的相关信息除外。
    -r 忽略普通的Routing Table,直接将数据包送到远端主机上。
    -R 记录路由过程。
    -s<数据包大小> 设置数据包的大小。
    -t<存活数值> 设置存活数值TTL的大小。
    -v 详细显示指令的执行过程。
    ping www.w3cschool.cc              ping主机,需要手动终止Ctrl+C
    ping -c 2 www.w3cschool.cc         指定接收包的次数
    ping -i 3 -s 1024 -t 255 g.cn     -i 3 发送周期为 3秒 -s 设置发送包的大小 -t 设置TTL值为 255


-------------------------------------------------------------------------------------
--软件管理类

----安装gpm:yum install -y gpm*
    开启gpm服务:systemctl start gpm
    按住鼠标左键,选中想要复制的内容,松开就完成复制,再在复制的位置按右键就完成粘贴。

----yum [options] [command] [package ...]
    options:可选,选项包括-h(帮助),-y(当安装过程提示选择全部为"yes"),-q(不显示安装的过程)等等    
    yum [-y] install package_name 安装package_name软件包
    yum [-y] remove package_name 卸载package_name软件包
    yum list installed [package_name*] 查看安装的所有软件包,或以package_name开头的所有软件包
    yum check-update 列出所有可更新的软件清单命令
    yum update <package_name> 更新所有或指定软件命令
    yum search <keyword> 查找软件包命令
    yum clean packages: 清除缓存目录下的软件包
    yum clean headers: 清除缓存目录下的 headers
    yum clean oldheaders: 清除缓存目录下旧的 headers
    yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的headers

    将Centos的yum源更换为国内的阿里云源
    1、备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
    2、下载新的CentOS-Base.repo 到/etc/yum.repos.d/
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    3、之后运行yum makecache生成缓存

----vi命令
    vi fileName 进入一般模式
      输入i|a|o,进入编辑模式,再输入ESC返回一般模式;
      输入:,进入命令模式,如:wq,回车接受命令;
      一般模式下,操作如下:
        /word    向光标之下寻找一个名称为 word 的字符串。例如要在档案内搜寻 vbird 这个字符串,就输入 /vbird 即可! (常用)
        ?word    向光标之上寻找一个字符串名称为 word 的字符串。
        n    『向下』搜寻
        N    『向上』搜寻
        [Page Down] 按键 向下翻页
        [Page Up]   按键 向上翻页
        y0    复制光标所在的那个字符到该行行首的所有数据
        y$    复制光标所在的那个字符到该行行尾的所有数据
        yy    复制游标所在的那一行

-------------------------------------------------------------------------------------
系统常用命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值