zoukankan      html  css  js  c++  java
  • 【Linux】Linux基本命令

    一、Linux关机

      shutdown -h 10        10min后关机

      shutdown -h 10:00         10:00关机       

      shutdown -h now 或 halt 或 poweroff     立即关机

      shutdown -r now 或 reboot       重启

    二、文件管理与磁盘管理

     2.1 ls:列出目录

      • -l      列出文件及其属性
      • -a  列出全部文件(包括隐藏文件)
      • -d  仅列出目录本身,而不是列出目录内的文件数据(常用)

    2.2 cd:切换目录

    2.3 pwd:显示目前的目录

    2.4 mkdir:创建一个新的目录

      • -p   将文件递归创建起来

      exp:mkdir -p test1/test2/test3  

    2.5 rmdir:删除一个空的目录

      • -p        连同上级目录(空的)一起删除

    2.6 cp:复制文件或目录

      cp 来源档(source) 目标档(destination)

      cp [options] source1 source2 source3 .... directory

      • -a:相当於 -pdr 的意思,至於 pdr 请参考下列说明;(常用)
      • -i:若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
      • -p:连同文件的属性一起复制过去,而非使用默认属性(备份常用);
      • -r:递归持续复制,用於目录的复制行为;(常用)

    2.7 rm: 移除文件或目录

      • -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
      • -i :互动模式,在删除前会询问使用者是否动作
      • -r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!

    2.8 mv:移动文件与目录,或修改文件与目录的名称

      mv [-fiu] source destination     

      mv [options] source1 source2 source3 .... directory

      • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
      • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
      • -u :若目标文件已经存在,且 source 比较新,才会升级 (update)

    2.9 cat:由第一行开始显示文件内容

      • -n   列出行号

        zcat 可查看压缩文件

    2.10 tac: 从最后一行开始显示,可以看出 tac 是 cat 的倒著写!

    2.11 head:只看头几行  

      • -n  显示前几行

    2.12 tail: 只看尾巴几行

     

    更改文件属性(文件属性详见菜鸟教程)

    2.13 chgrp

      chgrp [-R] 属组名 文件名 递归改变文件及其子文件的组名

    2.14 chown

      chown [–R] 属主名 文件名     

      chown [-R] 属主名:属组名 文件名

    2.15 chomd

      r:4,w:2,x:1,每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: [-rwxrwx---] 分数则是:

        owner = rwx = 4+2+1 = 7

        group = rwx = 4+2+1 = 7

        others= --- = 0+0+0 = 0

        chomd  [-R] xyz 文件名

    2.16 cmp:命令用于比较两个文件是否有差异

    2.17 diff:命令用于比较文件(文件夹)的差异

      • -c 显示全部内文并标注不同的地方
      • -y  并排显示
      • -w  忽略空格字符

    2.18 file 命令用于辨识文件类型

    2.19 find命令用来在指定目录下查找文件

      find path -option [ -print ] [ -exec -ok command ] {} ;

      • -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 的文件。-pid n : process id 是 n 的文件
        • d: 目录
        • c: 字型装置文件
        • b: 区块装置文件
        • f: 一般文件

      exp: find . -name "*.c" 将目前目录及其子目录下所有延伸档名是 c 的文件列出来

    2.20 paste:合并文件

      paste file1 file2 file3 

    2.21 touch 修改文件或目录时间属性,若文件不存在则创建一个新的

      touch file1

    2.22 awk:是一种处理文本文件的语言,是一个强大的文本分析工具

      • awk '{[pattern] action}' {filenames}  # 行匹配语句 awk '' 只能用单引号

        exp: awk '{print $1,$4}' log.txt  # 每行按空格或TAB分割,输出文本中的1、4项

      • awk -F   #-F相当于内置变量FS, 指定分割字符

        exp: awk -F , '{print $1,$4}' log.txt  #使用","分割(实际输入$间没空格)

      • awk -v #设置变量

        exp: awk -v a=1 '{print $1,$1+a}' log.txt  #文本中第一列值+a

      • awk -f {awk脚本} {文件名}
      • awk {过滤条件}{文件名}

        exp: awk '$ 1>2' log.txt  #输出第一列大于1的列

      • awk与内建变量(详见菜鸟教程)
      • awk与正则表达式

        awk '/re/' log.txt         #输出含有re的行,~模式开始 !~模式取反,//内为正则表达式

        awk '$ 4 ~ /re/' log.txt  #输出从第4列起还有re的行

      • awk 'BEGIN{IGNORECASE=1} /this/' log.txt 忽略大小写
      • awk脚本

          BEGIN{ 这里面放的是执行前的语句 }

          END {这里面放的是处理完所有的行后要执行的语句 }

          {这里面放的是处理每一行时要执行的语句}

      2.23 df:磁盘使用情况

    三、文档编辑

    3.1 grep:用于查找文件里符合条件的字符串

      • -c 或 --count : 计算符合样式的列数。
      • -d <动作> 或 --directories=<动作> : 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。
      • -e<范本样式> 或 --regexp=<范本样式> : 指定字符串做为查找文件内容的样式。
      • -i 或 --ignore-case : 忽略字符大小写的差别。
      • -n 或 --line-number : 在显示符合样式的那一行之前,标示出该行的列数编号。
      • -r 或 --recursive : 此参数的效果和指定"-d recurse"参数相同。
      • -v 或 --revert-match : 显示不包含匹配文本的所有行。
      • exp:grep test test* #查找test为前缀的文件中还有test的文件
        • grep -r updae file1/file2 #查找file2及其子文件

        zgrep用于gz压缩文件

    3.2 join:用于将两个文件中,指定栏位内容相同的行连接起来

      join file1,file2

    3.3 sort:对文件内容进行排序

      sort file  #以默认的方式将文本文件的第一列以ASCII 码的次序排列

      sort -r file #以相反的顺序排序

    3.4 unique:删除重复行

    四、网络通讯

    4.1 ifconfig

    4.2 netstat:显示网络状态

      • -a或--all 显示所有连线中的Socket。
      • -n或--numeric 直接使用IP地址,而不通过域名服务器。
      • -o或--timers 显示计时器。
      • -p或--programs 显示正在使用Socket的程序识别码和程序名称。
      • -t或--tcp 显示TCP传输协议的连线状况。
      • -u或--udp 显示UDP传输协议的连线状况。
      • -l或--listening 显示监控中的服务器的Socket。

    五、系统管理

    5.1 exit 退出终端或脚本

    5.2 kill 用于删除执行中的程序或工作

       kill 123456 #杀进程

      kill -KILL 123456 #强制杀进程

      kill -9 123456  #彻底杀进程

      kill -HUP pid  #使用信号

      kill -l #显示信号

    5.3 ps:显示当前进程 (process) 的状态

      ps -A #显示所有进程信息

      ps -u root #显示root用户进程信息

      ps -ef #显示所有进程信息,连同命令行

    5.4 su :变更账号

      su 变更为root

      su - accountname 

    5.5 free: 显示内存使用情况

    六、备份压缩

    6.1 gzip:文件经它压缩过后,其名称后面会多出".gz"的扩展名

      gzip * #压缩目录下所有文件

      gzip -dv * #解压目录下所有文件并显示过程

    6.2 zip:文件经它压缩过后,其名称后面会多出".zip"的扩展名

      • -d 从压缩文件内删除指定的文件。
      • -g 将文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。
      • -i<范本样式> 只压缩符合条件的文件。
      • -m 将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。
      • 件的更改时间设成和该文件相同。
      • -q 不显示指令执行过程。
      • -r 递归处理,将指定目录下的所有文件和子目录一并处理。
      • -u 更换较新的文件到压缩文件内。
      • -v 显示指令执行过程或显示版本信息。
      • -x<范本样式> 压缩时排除符合条件的文件。

      exp: zip -r a.zip file/a #将路径下的所有文件和文件夹进行压缩

        zip -dv a.zip a.c #删除a.zip中的a.c文件

    6.3 tar:文件备份与还原

      • -c或--create 建立新的备份文件。
      • -d或--diff或--compare 对比备份文件内和文件系统上的文件的差异。
      • -f<备份文件>或--file=<备份文件> 指定备份文件。疏文件。
      • -t或--list 列出备份文件的内容。
      • -u或--update 仅置换较备份文件内的文件更新的文件。
      • -v或--verbose 显示指令执行过程。
      • -x或--extract或--get 从备份文件中还原文件。
      • -z或--gzip或--ungzip 通过gzip指令处理备份文件。
  • 相关阅读:
    MYSQL router 自动均衡负载
    mysql router 自动failover测试
    Oracle数据库安装时 environment variable path 大于 1023
    windows删除多余启动引导项
    开机显示 invalid partition table
    有关软件的商业模式与软件代码的加密
    .Net 开源控件 NPlot使用小结
    41.关于Intellij IDEA菜单项中Compile、Make和Build的区别
    Maven:mirror和repository 区别
    28. Spring Boot配置方式
  • 原文地址:https://www.cnblogs.com/dhs94/p/10686793.html
Copyright © 2011-2022 走看看