zoukankan      html  css  js  c++  java
  • linux命令收集

        linux查看命令帮助信息,如何查看有什么参数?
        http://linux.51yip.com/
        
        命令 --help 
        
        man 手册 
        man  命令

    1.linux的超级用户是root

    2.xshell远程连接linux    ssh 用户名@服务器ip

    3.查看服务器ip地址  ifconfig   或者ip addr

    4.绝对路径:从根目录开始的路径

    5.相对路径:从当前路径开始的路径

    6.四个符号代表文件夹

    .  当前位置
    ..  上一级目录
    -  上一次目录
    ~  用户家目录

    7.通过IP地址可以访问到网络中的  计算机。

      通过port端口可以找到  计算机上的应用程序。

    8.协议为网络中的数据交换而建立的规则、标准或者约定,两个实体要通信,必须有同一种语言

    常见协议有超文本传输协议(HTTP)、文件传输协议(FTP),简单邮件传输协议(SMTP)、网络通信协议(TCP)、用户数据报协议(UDP)

    9.

    普通用户登录后系统的提示符:$
    
    root用户登录后系统的提示符:#


    如何 修改命令提示符
    PS1 的变量控制的
    默认的命令提示符
    echo $PS1
    结果是
    [u@h W]$
    修改变量的值

    PS1="[u@h w ]$"

    [root@oldboy_python ~]# echo $PS1
    [u@h W]$

    可以自行调整全局变量/etc/profile文件用于永久生效 PS1='[u@h W ]$'
    d  日期
    H  完整主机名
    h  主机名第一个名字
      时间24小时制HHMMSS
    T  时间12小时制
    A  时间24小时制HHMM
    u  当前用户账号名
    v  BASH的版本
    w  完整工作目录
    W  利用basename取得工作目录名
    #  下达的第几个命令
    $  提示字符,root为#,普通用户为$
    PS1 > 变量名
    $PS1 > 查看变量内容
    PS1=新内容 重新赋值

    变量赋值,查看
    name='chaoge'
    echo $name

    PS1显示ip地址
    export PS1="[u@h `/sbin/ifconfig ens33 | sed -nr 's/.*inet (addr:)?(([0-9]*.){3}[0-9]*).*/2/p'` w]$"

     

    10.

    命令,解释
    tty    查看当前终端
    who am i 仅显示当前用户正在使用的终端和登录时间
    w       查看所有终端(功能最全,显示用户名,终端标记,登录时间,负载等信息)

    11.

    linux下的记事本工具 叫做 vi
    linux下的notepad++ 叫做 vim

    #vim的工作流程
    1.打开文件  vim  filename。此时进入了一个命令模式
    2.输入  字母i  ,进入编辑模式
    3. 输入 esc 键盘 ,退出编辑模式,此时输入  :wq  写入代码,并且保存退出 

    12.

    mkdir -p /tmp/快手/{牌牌琦,alex} #递归创建文件夹 ,
      -p 递归命令 
      {牌牌琦,alex} #代表快手目录下,有同级的2个文件夹
    mkdir -p ./a/b ./c/d 当前目录下创建a和c文件夹,a和c为同级目录
    touch 文件名   创建一个文件

    13.

    #创建普通用户
    useradd alex

    14.

    #更改用户密码
    passwd alex

    15.

    cat  查询小文本文件内容
    cat -n xx.py 显示行号
    cat >>xx.py<<EOF 给xx.py文件写入内容

    more  xx.py    查看大文本的命令
    
    查看文件的前十行  head -10 文件名
    查看文件的后十行  tail -10 文件名

    16.

    ls   列出文件夹的内容
      -l 以树状显示文件夹
      -a  显示隐藏文件
      -h 显示文件大小

    17.创建一个文件  vi 文件名 

    18.修改文件名  mv 原文件名 新文件名 

    19.移动文件路径 mv 文件名 文件路径 

    20.删除文件或者文件夹 

    rm 文件名
    rm -r 文件夹
    rm -r 递归删除
    rm -rf  递归强制删除
    rm -rf /*  删库跑路

    21.查看变量 

    echo $变量名
    echo $PATH  查看path变量的值

    22.python的路径要放在path路径的最前面

    23.显示终端连接数     w命令

    24我在哪  pwd命令

    25我是谁 whoami命令

    26.找到命令的绝对路径  which 命令 witch python 查看python的绝对路径 

    27.常用的文件夹

    /opt  存放第三方软件的目录
    /etc  存放各种配置文件的目录
    /var  存放经常变动的文件
    /bin   存放可执行文件
    /root  存放超级用户家目录
    /home  存放普通用户家目录

    28.安装tree   yum install tree -y 

     29.

    echo追加写入文件
    >  重定向覆盖输出符
    >> 重定向追加输入符
    
    
        [root@localhost tmp]# echo "亚洲的第一个秘密" > 亚洲的秘密.txt
        [root@localhost tmp]# echo "亚洲的第一个秘密" > 亚洲的秘密.txt
        [root@localhost tmp]# 
        [root@localhost tmp]# 
        [root@localhost tmp]# cat 亚洲的秘密.txt 
        亚洲的第一个秘密
        [root@localhost tmp]# 
        [root@localhost tmp]# 
        [root@localhost tmp]# echo "亚洲的第一个秘密" >>   亚洲的秘密.txt
        [root@localhost tmp]# echo "亚洲的第一个秘密" >>   亚洲的秘密.txt
        [root@localhost tmp]# echo "亚洲的第一个秘密" >>   亚洲的秘密.txt

    30.实时监控的命令

    实时监控的命令,可以用于检测nginx的 access.log 也能看各种日志信息
        
        tail -f  filename  实时监控filename的 变化

    31.复制的命令

        cp  文件  新文件夹
        
        cp -r  文件夹 新文件夹

    32.查找命令

    查找命令,查找机器上的文件,或者文件夹
        
    find      /     -name  views.py        #找到机器上所有的 views.py 
    find   /etc  -name  *.py            #找到/etc目录下 所有名字叫做 .py的文件
    find  /  -name   python*            #找到 机器上 所有的python开头的文件和文件夹
    find  /  -type  f  -name  python*    #找到机器上 所有以python开头的文件
    find  /  -type  d    -name  python*    #找到机器上所有python开头的文件夹

    33.历史记录命令  history命令

        history  历史记录命令,记录系统的命令敲过的历史
        
        快捷方式
        使用 !加上 命令的序号,可以快捷执行

    34.过滤命令grep以及管道符|

         grep -v "^$" settings.py | grep -i "allow"
    #过滤出文件的有用信息,也就是排除 注释行,空白行 grep -v "^#" settings.py | grep -v "^$" -V表示反转 -i 表示不区分大小写 grep可以匹配正则

    35.别名功能alias

    alias  rm="echo 你这个二货,求你了别坑我了"
    
        #当用户输入 rm的时候,就提示他 “你这个二货,求你了别坑我了 ”
    
    #取消别名
    unalias  rm 

    36.更改主机名字  hostnamectl set-hostname wangdachui 

    37.xshell的快捷键

        ctrl + l  清屏 
        
        ctrl + d  是快速推出会话  相当于logout  
        
        shift + ctrl + r  是快速连接会话 

    38.远程传输命令scp

        scp  你想传输的内容     你想传输到的地方 
        
        #实例
        #把本地的test.sh 传输到远程服务器上 
        scp  test.sh     root@服务器ip:/opt/
        scp -r  q root@123.206.16.61:/opt/pythonav  #将文件夹q递归传递到远程服务器

     #把远端服务器的内容,传输到自己的机器上 
    scp
    -r root@123.206.16.61:/opt/pythonav /tmp/ #将远程服务器的pythonav文件夹传到自己的机器上

    39.windows和linux传输文件的软件lrzsz

        yum  install  lrzsz 的工具
        
        它提供2个命令,一个是上传 一个是下载
        
        rz  (接收文件)    直接rz 
        
        sz (发送文件)    sz  传输的内容 
        
        直接拖拽 也可以将windows上的文件传到linux上

    40.在线下载资源的命令wget

    wget  资源的url
    
    #实例
    wget http://www.xiaohuar.com/d/file/20190227/257e9f91df2bbd45c537f9416ae3afbb.jpg

    41.统计文件  文件夹大小的命令

        ls -lh  方式1
        du -h  文件  #统计文件大小
        du -sh  .  #统计当前文件夹大小合计
        du -sh  /var/log   #统计/var/log大小 
       du -h ./* #查看当前目录下文件的大小

    42.linux的任务管理器    top

    43.linux的时间命令date  

        linux的时间命令 date  可以查看当前时间日期
        进行linux时间同步的命令
        ntpdate -u  ntp.aliyun.com

    44.文件加锁命令charr

    chattr +a test.py  文件加锁
    chattr -a test.py   文件解锁

    45.查看文件的隐藏属性命令lsattr

    lsattr test.py

    46.linux网卡配置

    • ifconfig  查询、设置网卡和ip等参数
    • ifup,ifdown   启停网卡 启动/关闭一块网卡   ifup eth0         ifdown eth0 
    • ip  符合指令,直接修改上述功能
    #编辑网卡配置文件
    vim /etc/sysconfig/network-scripts/ifcfg-eth0 
    #修改配置参数
    ONBOOT=yes

    网卡配置详情如下

    网络配置文件:
    /etc/sysconfig/network
    
    网络接口配置文件:
    /etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME
    DEVICE=: 关联的设备名称,要与文件名的后半部“INTERFACE_NAME”保持一致; 
    BOOTPROTO={static|none|dhcp|bootp}: 引导协议;要使用静态地址,使用static或none;dhcp表示使用DHCP服务器获取地址;
    IPADDR=: IP地址
    NETMASK=:子网掩码
    GATEWAY=:设定默认网关;
    ONBOOT=:开机时是否自动激活此网络接口;
    HWADDR=: 硬件地址,要与硬件中的地址保持一致;可省;
    USERCTL={yes|no}: 是否允许普通用户控制此接口;
    PEERDNS={yes|no}: 是否在BOOTPROTO为dhcp时接受由DHCP服务器指定的DNS地址;

    47.查看版本信息

    #查看系统版本信息
    方法1.cat /etc/redhat-release 
          CentOS Linux release 7.4.1708 (Core) 

    方法2.cat /etc/os-release  #查看内核版本号 uname
    -r 3.10.0-693.el7.x86_64 #查看系统多少位 uname -m x86_64 #查看内核所有信息 uname -a

    48.创建用户,切换用户su,查看当前用户,退出用户

    #添加用户
    useradd oldboy 
    #设置密码       
    passwd redhat
    
    root用户可以修改其他所有人的密码,且不需要验证
    
    su命令可以切换用户身份的需求,
    su - username
    
    su命令中间的-号很重要,意味着完全切换到新的用户,即环境变量信息也变更为新用户的信息
    
    
    
    #先看下当前用户(我是谁)
    whoami
    #切换用户
    su - oldboy
    #退出用户登录
    logout
    ctrl + d

    49.删除用户userdel

    userdel删除用户
    -f     强制删除用户
    -r    同事删除用户以及家目录
    userdel -rf 用户名  #一般这样使用,可以将家目录用户一起删除

    50.查看系统用户的id信息

    id  查看当前用户的ID信息
    如:
    id  root  
    可以查到用户的gid  cid

    51.sudo命令,以root的身份来执行命令

    操作如下:
    1.给用户打开sudo
    vi /etc/sudoers
    2.找到如下,添加用户
        ## Allow root to run any commands anywhere 
        root    ALL=(ALL)       ALL
        用户名       ALL=(ALL)       ALL
    3.保存退出后,用户即可使用sudo命令了
    
    visudo的功能
    visodu命令,提供对/etc/sudoers文件,进行配置检测的功能

    52.linux的权限

    Linux权限主要依据三种身份来决定:
        user/owner 文件使用者,文件属于哪 个用户
        group 属组,文件属于哪个组
        others 既不是user,也不再group,就是other,其他人    
    
    
    查看文件的权限命令:ll

    53.

    linux有三个用户身份
    可读可写可执行 是有顺序的   依次是可读可写可执行 
    user  属主            rwx            r--    -w-     --x  r-x
    group 属组            rwx            ---
    others  其他人        rwx

    54.修改文件的权限chmod

    chmod  u+r   file1  给file1 属主可读权限
    
    chmod  666  file2   给file2 更改666权限,意思是用户主可读可写,用户组可读可写,其他可读可写
    
    r   --4
    w  --2
    x  --1

    55.更改文件属主chown  chown 用户名 文件名 

    56.更改文件属组chgrp

    chgrp  用户组名  文件
    
    如 :chgrp   a用户   a.py

    57.linux的软连接配置ln

    ln -s  目标文件绝对路径 软连接绝对路径
    
    如:
    ln -s  /tmp/file1.txt  /opt/file2.txt

    通过软连接查看文件
    cat /opt/file2.txt

    删除软连接 rm -rf /opt/file2.txt

    58.打包,解包命令

    #打包文件-c  ,不节省磁盘
    tar -cvf   打包文件的名字.tar     要打包的内容
    
    #压缩且打包文件 -c -z
    tar -zcvf  压缩文件名.tar.gz     要压缩的内容 
    
    #解压缩 
    tar  -xf  解包文件名.tar  
    
    tar -zxvf    解包文件名.tar.gz  
    
    xz -d  xx.tar.gz.xz  解压.xz文件



    tar(选项)(参数)
    -A或--catenate:新增文件到以存在的备份文件;
    -B:设置区块大小;
    -c或--create:建立新的备份文件;
    -C <目录>:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。
    -d:记录文件的差别;
    -x或--extract或--get:从备份文件中还原文件;
    -t或--list:列出备份文件的内容;
    -z或--gzip或--ungzip:通过gzip指令处理备份文件;
    -Z或--compress或--uncompress:通过compress指令处理备份文件;
    -f<备份文件>或--file=<备份文件>:指定备份文件;
    -v或--verbose:显示指令执行过程;
    -r:添加文件到已经压缩的文件;
    -u:添加改变了和现有的文件到已经存在的压缩文件;
    -j:支持bzip2解压文件;
    -v:显示操作过程;
    -l:文件系统边界设置;
    -k:保留原有文件不覆盖;
    -m:保留文件不被覆盖;
    -w:确认压缩文件的正确性;
    -p或--same-permissions:用原来的文件权限还原文件;
    -P或--absolute-names:文件名使用绝对名称,不移除文件名称前的“/”号;
    -N <日期格式> 或 --newer=<日期时间>:只将较指定日期更新的文件保存到备份文件里;
    --exclude=<范本样式>:排除符合范本样式的文件。

    59.查看进程

    ps -ef  查看全部进程
    
    ps  -ef   |grep  python  #检查python进程是否存活

    60.查看端口

    netstat -tunlp #查看全部进程的端口
    
    netstat -tunlp  |  grep  8000  查看端口是8000的进程是否存活

    61.杀死计算机进程

    #杀死计算机的进程 
    1.通过ps -ef | grep 文件名 #找到进程的pid号
    
    2.通过kill  pid   #杀死进程 
    参数 -9 强制终止 #批量杀死进程 pkill 你想杀死的任务名字 pkill python #杀死全部的python

    62.linux防火墙功能

    1.linux有俩防火墙,可能会影响咱们的 web服务部署
    一个是selinux
    二个是iptables  
    三个,云服务器对外提供防火墙服务的 硬件防火墙  
    
    2.关闭防火墙的步骤
    iptables -F  #清空防火墙规则
    systemctl  stop  firewalld  #关闭防火墙服务
    systemctl  disable  firewalld  #禁止防火墙开机自启 
    
    3.关闭selinux 步骤如下
    1.打开文件vim /etc/selinux/config 
    
    2.临时修改selinux,临时关闭
    getenforce  #获取selinux状态
    setenforce 0    #临时关闭 
     
    想要永久关闭seliunux,执行3,4步骤
    3.修改代码如下
    SELINUX=disabled
    4.重启机器后,生效

    63.查看系统磁盘使用量df

    如何统计磁盘剩余量--df,如何查看cpu状态  top
    
    #查看系统磁盘使用量
    df -h 
    df(选项)(参数)
    -h或--human-readable:以可读性较高的方式来显示信息

    64.dns域名解析

    
    
    DNS(Domain Name System,域名系统),万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。
    通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)


    1
    .域名是什么 就是一堆字符串,对应着服务器的ip地址 www.baidu.com www.taobao.com www.pythonav.com 2.hosts文件是什么 本地写死了的 域名和ip的对应记录 如:123.206.16.61 s18666.com hosts的配置文件 vim /etc/hosts 3. 什么是dns,域名解析系统 dns公网的域名服务器,常见的有 114.114.114.114 144dns服务器 223.5.5.5 阿里的dns 223.6.6.6 阿里的dns 8.8.8.8 谷歌的dns 4.linux的dns配置文件 vim /etc/resolv.conf 写入dns服务器地址,以后linux的域名解析,就去它这寻找记录 nameserver 114.114.114.114 5.检测域名解析 nslookup 命令 如下: [root@wangdachui tmp]# nslookup pythonav.com Server: 114.114.114.114 Address: 114.114.114.114#53 Non-authoritative answer: Name: pythonav.com Address: 39.97.163.132

    65.linux的定时任务   crontab服务

    vim /etc/crontab   #打开文件,查看语法规则
    
    
    编辑定时任务的文件
    crontab -e  
    
    查看命令绝对路径  which 命令
    
    
    #每分钟写入一个信息到文件中
    * * *  * *   /usr/bin/echo "老弟啊,学习很累啊" >> /tmp/xd.txt
    
    
    #每分钟执行一次命令
    
    分 时  日 月  周
    *  *   *   *   *   命令绝对路径
    
    *  *  *  *  *  执行命令 
      
    #每小时的3,15分组执行命令
    分 时  日 月  周
    *      *   *   *   *   命令绝对路径
    3,15  *  *  *  *   执行
    
    
    #在上午8,11点的第3分到15分钟执行
    
    分    时  日 月  周
    *       *   *   *   *   命令绝对路径
    3-15  8,11  *  *  *  
    
    #每晚21:30执行命令
    
    分 时  日 月  周
    *      *   *   *   *   命令绝对路径
    30   21  *  *  *  命令
    
    
    #没周六、日的1:30执行命令
    
    分 时  日 月  周
    *      *   *   *   *   命令绝对路径
    30  1   *  *   6,0   命令 
    
    #每周一到周五的凌晨1点,清空/tmp目录的所有文件
    
    分 时  日 月  周
    *      *   *   *   *   命令绝对路径
    00  1   *  *  1-5  /usr/bin/rm -rf /tmp/* 
    
    #每晚的21:30重启nginx
    
    分 时  日 月  周
    *      *   *   *   *   命令绝对路径
    30  21   *  *  *   /usr/bin/systemctl restart nginx  
    
    #每月的1,10,22日的4:45重启nginx
    
    分 时  日 月  周
    *      *   *   *   *   命令绝对路径
    45  4   1,10,22  *  *  /usr/bin/systemctl restart nginx
    
    #每个星期一的上午8点到11点的第3和15分钟执行命令
    
    分    时  日 月  周
    *       *   *   *   *   命令绝对路径
    3,15  8-11  *  *  1   执行命令 
    crontab (选项)(参数)
    -e:编辑该用户的计时器设置;
    -l:列出该用户的计时器设置;
    -r:删除该用户的计时器设置;
    -u<用户名称>:指定要设定计时器的用户名称。
    
    存放定时任务的文件
    /var/spool/cron

    66.检测crontab是否开机启动 systemctl is-enabled crond 

    67.linux的软件包管理

    安装 软件的方式有三种  源代码编译安装  yum安装   rpm手动安装
    1.源代码编译安装()
        1.下载python3的源代码wget 
        2.解压缩源代码 tar
        3.进入源代码目录,开始编译安装 mark && mark install
        4.配置环境变量 
      
    2.yum方式安装,如同pip工具,自动搜索依赖关系,自动下载解决依赖关系
    
    yum安装的软件也是从centos官网的,yum软件仓库中下载来的
    
    4.yum源的工作目录是/etc/yum.repos.d目录
    并且只有在这个目录的第一层的  *.repo文件,才会被识别为 yum仓库文件 
    
    5.
    提前下载好wget工具
    
    yum install wget -y  
    
    6.下载阿里云的yum源
    https://opsx.alibaba.com/mirror
    
    下载yum源1
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    参数-O  指定将文件下载到的位置
    下载yum源2 (常用的yum源) wget
    -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo 7.测试阿里云的yum工具,安装nginx软件 yum install nginx 8.安装完毕启动,系统服务启动命令 systemctl start/stop/restart nginx



    3.rpm方式手动安装
    
    mysql-5.5.6.rpm  
    安装这个rpm
    rpm -ivh mysql-5.5.6.rpm  
    需要手动解决软件依赖关系,非常恶心难以解决

  • 相关阅读:
    ##3.Keystone 验证服务--openstack
    gitlab一键安装+配置(备份+LADP认证)
    【hexo】03config文件配置详解
    【hexo】01安装
    第6章 linux的文件权限与目录配置
    ubuntu14.04安装Anaconda
    ubuntu14.04安装opencv-python
    ubuntu14.04配置face_recognition环境
    php7 安装时需求的依赖包
    删除包的时候因为依赖关系导致失败的解决方法
  • 原文地址:https://www.cnblogs.com/l1222514/p/11406720.html
Copyright © 2011-2022 走看看