• Linux常用命令


    systemctl:服务管理命令

    systemctl是一个系统管理守护进程、工具和库的集合,用于取代System V、service和chkconfig命令,初始进程主要负责控制systemd系统和服务管理器

    systemctl #列出所有的系统服务
    systemctl status docker #显示服务状态
    systemctl list-dependencies docker #列出服务层级和依赖关系
    
    systemctl start docker #启动服务
    systemctl stop docker #关闭服务
    systemctl restart docker #重启服务
    
    systemctl enable docker #设置服务自启动
    systemctl disable docke #禁止服务自启动
    systemctl is-active docker #查看服务是否运行
    systemctl is-enabled docker #查看服务是否自启动
    systemctl list-units --type=service #列出系统所有服务的启动情况 
    systemctl list-unit-files|grep enabled #列出所有自启动服务

     centos6 没有使用 systemd,所以没有 systemctl 命令。对应的旧指令(chkconfig、service)

    service docker status #显示服务状态
    systemctl list-dependencies docker #列出服务层级和依赖关系
    
    service docker start #启动服务
    service docker stop #关闭服务
    service docker restart #重启服务
    
    chkconfig --level 3 docker on #设置服务自启动
    chkconfig --level 3 docker off #禁止服务自启动
    
    chkconfig --list docker #查看服务是否自启动
    chkconfig --list #列出系统所有服务的启动情况

    ps查看进程信息

    ps -f -C docker # 使用 -C 查找
    ps
    -ef|grep docker # 使用 grep 查找;

    | 符号,是个管道符号,表示ps 和 grep 命令同时执行;

    grep 命令是查找(Global Regular Expression Print),能使用正则表达式搜索文本,然后把匹配的行显示出来;

    ps命令常用参数: 

    • -C : 显示指定进程
    • -e : 显示所有进程
    • -f : 全格式
    • -h : 不显示标题
    • -l : 长格式
    • -w : 宽输出
    • a :显示终端上的所有进程,包括其他用户的进程。
    • r :只显示正在运行的进程。
    • u :以用户为主的格式来显示程序状况。
    • x :显示所有程序,不以终端机来区分。

    which寻找配置在环境变量$PATH中的可执行文件命令,返回系统命令的位置 。

    which nginx #如果nginx正确安装可放回环境变量中配置的位置

    whereis: 命令用于搜索指定程序的相关文件

    这些文件包含 二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)如果省略参数,则返回所有信息

    whereis nginx
    • -b : 仅搜索二进制文件
    • -m : 仅搜索说明文件
    • -s : 仅搜索源代码文件

    find:根据条件是在硬盘上遍历查找文件

    find [paths] [expression] [actions]

    find 命令接受一个或多个路径(paths)作为搜索范围,并在该路径下递归地搜索。即检索完指定的目录后,还会对该目录下的子目录进行检索,以及子目录下的子目录。。。直到到达目录树底部

    默认情况下(不带任何搜索条件),find 命令会返回指定目录下的所有文件,所以常常需要通过特定的 expression 对结果进行筛选。

    find 命令默认的 action 是将所有检索结果打印至标准输出。可以通过自定义 action ,让 find 命令对搜索到的结果执行特定的操作。

    常用参数

    • -[a,m,c]time [+/-]n : 在过去 n 天内被访问(a)、修改(m)、状态属性修改(c)过,带“-”表示符合该数量n以后的,带“+”表示符合该数量以前n+的。
    • -[a,m,c]min n : 在过去 n 分钟内被访问(a)、修改(m)、状态属性修改(c)过,带“-”表示符合该数量n以后的,带“+”表示符合该数量以前n+的。
    • -delete : 删除检索到的文件
    • -depth n : 检索深度为 n 的文件,即位于指定目录以下 n 层的文件
    • -empty : 检索空文件或空目录
    • -fstype type:  指定文件所在的文件系统的类型
    • -group gname : 指定文件的属组
    • -iname pattern : 同 -name,忽略大小写
    • -ipath pattern : 同 -path,忽略大小写
    • -ls : 打印搜索到的文件的详细信息
    • -maxdepth n : 指定递归的最大层数为 n
    • -name pattern : 搜索时使用 pattern 对文件名进行匹配
    • -path pattern : 搜索时使用 pattern 对文件路径进行匹配
    • -perm mode : 根据文件权限搜索
    • -size n[ckMGTP] : 根据文件大小搜索
    • -type t : 根据文件类型搜索,t = f: 文件;d: 目录;l: 符号链接
    • -user uname : 指定文件的属主
    • -exec 选项可以对搜索到的结果执行特定的命令。
    • -ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
    • -print: find命令将匹配的文件输出到标准输出。

    一些示例

    find /usr -name '*.txt'  #查找 /usr 目录下所有文件名以 .txt 结尾的文件
    find /usr -name '????' #查找 /usr 目录下所有文件名刚好为 4 个字符的文件
    find ~ -type d -empty #检索用户主目录下所有的空目录
    find /usr -type d -name 'python*'  #检索 /usr 下所有文件名以 python 开头的目录
    find . -name "[A-Z]*" #查以大写字母开头的文
    find . -name "[a-z][a-z][0–9][0–9].txt" #查以两个小写字母和两个数字开头的txt文件
    find /usr -type f ! -name '*.txt' # 检索 /usr 下所有文件名不以 .txt 为后缀的文件
    find /usr -type f ! -empty # 检索 /usr 下所有内容不为空的文件
    find / -type f -user starky # 检索根目录下所有用户属主为 starky 的文件
    find /usr -type f -mtime 2 #检索 /usr 下两天前被修改过的文件
    find /usr -type f -mtime +50 -mtime -100  #检索 /usr 下 50 到 100 天之前修改过的文件
    find /usr -type f -mtime 2 -amin 5 #检索 /usr 下两天前被修改过且 5 分钟前又读取过的
    find / -size +1G 检索文件大小高于 1 GB 的文件,
    find /usr -perm u=rwx,g=rx,o=rx # 如需要检索 /usr 目录下权限为 rwxr-xr-x 的文件
    find /usr -perm a=rx #搜索 /usr 目录下所有权限为 r-xr-xr-x(即系统中的所有用户都只有读写权限)的文件和目录
    find /usr -perm 644 搜索 /usr 目录下权限为 644(即 rwxr-xr-x)的文件
    find / '(' -mmin -5 -o -mtime +50 ')' -a -type f # 搜索5分钟前,到前50天以后的文件
    find ~ -type d -empty -delete # 搜索~目录下所有空文件并删除这些文件
    find ~ -type f -mtime +7 -ok rm {} \; # 查找~目录中更改时间在7日以前的普通文件,并在删除之前询问
    find ./ -type f -name '*.mp3' -exec cp {} /media ';'  #搜索当前目录下所有mp3文件,并拷贝到 /media 目录中
    find ~ -type f -name '*.mp3' -exec tar -czvf music.tar.gz {} + #检索出所有符合条件的音频文件,再将得到的文件列表传递给后面的压缩命令

     >或tree清空文件 

    >test.log 
    true>test.logs
    

    stat :显示文件或目录文件系统的详细信息

    stat testfile   #显示testfile文件信息
      File: `testfile'
      Size: 102             Blocks: 8          IO Block: 4096   regular file
    Device: 807h/2055d      Inode: 1265161     Links: 1
    Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
    Access: 2014-08-13 14:07:20.000000000 +0800
    Modify: 2014-08-13 14:07:07.000000000 +0800
    Change: 2014-08-13 14:07:07.000000000 +0800

    date:查看和修改Linux的时间

    1. 查看时间和日期

    date #显示当前时间
    Fri Jun 28 11:19:17 CST 2019
    date -R #显示当前时区
    Fri, 28 Jun 2019 11:19:30 +0800

    2.设置时间和日期

    date -s 11/03/2009 #将系统日期设定成2009年11月3日的命令
    date -s 17:55:55 #将系统时间设定成下午5点55分55秒的命令

    3. 将当前时间和日期写入BIOS,避免重启后失效

    hwclock -w

    uname:显示计算机操作系统信息

     uname命令用于显示电脑以及操作系统的相关信息。

    uname [-amnrsv][--help][--version]
    • -s 显示内核名称
    • -n 显示网络节点上的主机名
    • -r 显示linux内核发行号
    • -v 显示linux内核版本
    • -m 显示主机的硬件架构名称
    • -p 显示处理器类型
    • -i 显示硬件平台
    • -o 显示操作系统名称
    • -a 显示全部信息
    • --help  显示帮助。
    • --version  显示uname版本信息。

    demo

    uname -a #显示全部信息
    Linux webserver 3.10.0-957.21.3.el7.x86_64 #1 SMP Tue Jun 18 16:35:19 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

    lsb_release:查看当前系统的发行版信息

    lsb_release [-avidrch]
    • -v 显示版本信息。
    • -i 显示发行版的id。
    • -d 显示该发行版的描述信息。
    • -r 显示当前系统是发行版的具体版本号。
    • -c 发行版代号。
    • -a 显示上面的所有信息。
    • -h 显示帮助信息。
    lsb_release -a #显示全部信息
    LSB Version:    :core-4.1-amd64:core-4.1-noarch
    Distributor ID:    CentOS
    Description:    CentOS Linux release 7.6.1810 (Core) 
    Release:    7.6.1810
    Codename:    Core

    如果lsb_release没有安装可以使用“yum install -y redhat-lsb”安装也可以直接使用 cat /etc/issue或cat /etc/os-release 查看

    查考文档

    Linux 命令大全

  • 相关阅读:
    Ubuntu oracle SDK替换OpenJDK
    用update-alternatives管理java版本
    安卓配置
    CS 159: Advanced Topics in Machine Learning: Structured Prediction
    ros bag 代码操作
    vim 方式快捷编辑代码
    文件权限
    操作系统连不上网
    github权限管理
    nmap基本命令使用
  • 原文地址:https://www.cnblogs.com/ejiyuan/p/2640907.html
Copyright © 2020-2023  润新知