zoukankan      html  css  js  c++  java
  • Linux常用基本命令

    Linux下简单的操作:

    • env 查看系统环境设置
      /etc/profile是针对所有用户,export xxx=xxx, source profile生效
          某一用户mr,/home/mr/.bash.profile,修改后执行source /home/mr/.bash.profile生效,如果没有执行,需要系统重启才能生效
     
    • 设置启动项chkconfig, chconfig --list 查看启动列表
      启动mysql,chkconfig mysqld on。同理,要取消掉某个服务自动启动,只需要将最后的参数“on”变更为“Off”即可。比如要取消postfix的自动启动:chkconfig postfix off 值得注意的是,如果这个服务尚未被添加到chkconfig列表中,则现需要使用–add参数将其添加进去:chkconfig –add postfix。从系统启动项列表删除一个服务,使用–del选项从启动列表删除它:chkconfig --del ip6tables 。如果要查询当前所有自动启动的服务,可以输入:chkconfig –list 但是这样显示东西太多了,看起来很晕。如果只想看指定的服务怎么办呢?这个时候只需要在“–list”之后加上服务名就好了,比如查看httpd服务是否为自动启动,就输入:chkconfig –list httpd。这个时候输出的结果:httpd           0:off   1:off   2:off   3:off   4:off   5:off   6:off。此时0~6均为off,则说明httpd服务不会在系统启动的时候自动启动。我们输入chkconfig httpd on后,再次检查输出结果变为:httpd           0:off   1:off   2:on    3:on    4:on    5:on    6:off。这个时候2~5都是on,就表明会自动启动了
     
    • 查看线程(LWP)使用情况
    pstree | grep program
    pstree -p |grep program
    ps -eLf | grep program
    ps -ef | grep program
    top -H
    PS:注意每一列输出代表的含义
     
    • 查看内存的使用情况

      proc cat /proc/meminfo or /proc/pid/statm  status,atop,htop,top,smem,memstat,vmstat // vmstat -m,free //free -h,nmon,ps。如果以上命令不存在,安装对应的包即可,如brew install htop。不同的系统可能无法兼容同一安装包

    • find 
               find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} ;
               在某一目录下查找文件内容 ~ find /your/directory -exec grep -l 'your char' {} ;
               ‘.’代表当前目录
               ‘/’代表根目录
               ‘~’代表home下对应用户目录,如/home/glee
               ‘|’代表管道命令,连接两个不同的命令,如less name | grep ...
                -print:将匹配的文件标准输出
                -exec:以" {} ;" 结尾,执行find命令 匹配的文件执行的对应shell命令 "command {} ;",如grep "file*" {} ; 对搜索file*匹配的文件内容
                -ok:与exec类似,但比exec更安全,执行命令前会让用户确定是否执行该操作
                查找.h或.cpp文件内的“Player”字符串:find . -name *h -o -name *.cpp |xargs grep -ri "Player"
                删除目录下所有.svn目录及下面的文件,find path -type d -name ".svn" |xargs rm -rf
     
    • date
    需要root权限,或加 sudo 前缀
    系统时间
        修改时间:sudo date -s "2008-05-23 01:01:01",PS:时间的输入有多种格式
      查看时间:date
        同步网络时间:ntpdate asia.pool.ntp.org
    硬件时间(主板供电计算)
        hwclock --show
        hwclock --hctosys (硬件时间同步系统时间)
        hwclock --systohc (系统时间同步硬件时间)
        PS:hc~硬件,sys~系统
        系统时间依赖于硬件时间,系统每次启动都会去读取硬件时间,然后独立运行
     
    • ifconfig 查看网络配置 -a,更改网络接口的IP地址
      ifconfig hme0 downifconfig hme0 211.101.149.233 netmask 255.255.255.0 up  首先,使用down命令参数把网络接口hme0的服务暂时停止,然后再用Linux查看ip的ifconfig命令给接口分配新的IP地址和掩码,并启动网络接口服务,也可以通过改变文件/etc/hosts中的IP地址的值并重新启动系统来更改机器的IP地址。 
      /etc/hosts/: 211.101.149.11   sampdt  定义主机名在/etc/hostname.hme0及IP地址。
      更改了网卡/增加了网卡,系统不能自动启动该接口服务,这时需要手动创建网口服务: 
      #ifconfig hme0 plumb  
      Linux查看ip即可以为接口le0创建网口服务,相应地,用ifconfig带unplumb参数可以停止服务并关闭网络.netconfig 用来设置IP地址 
    • grep 文件内容或目录搜索
          grep ‘条件’ path,如 grep there filename 从filename中找出there的匹配字符 
          grep -v there filename 反向搜索
        grep [tf] filename 正则表达式搜索 匹配 t f两个字符
     
    • 安装工具 apt-get/yum/brew 等,如:
         yum - “@Chinese Support” //支持中文输入法
         yum install flash-plugin
     
    • script 记录终端内容,如 script -a script.txt 
    • less命令,less path 打开,q 退出
    • more 命令
    more path //打开
    space 或 ctrl+f 下一页
    q退出
    more -number  path 设置每页显示行数
    ls -l | more -3 每页显示3行文件
    more /day3 path  "day3"表示寻找第一次出现该字符串处开始显示
     
    • 关机/重启
    关机:halt
       poweroff
       shutdown -h now 立刻关机 
       shutdown -h 10    十分钟后关机
    重启:reboot
       showdown -r now              立刻重启
       shutdown -r 10                 十分钟后重启
       shutdown -r 21:30               21:30 重启 
     
    • 文件操作相关
      touch path 修改文件最后使用时间
      rm -rf path 删除目录及子目录下的所有文件,rm代表remove,r表示循环,f表示不需要再次确认
      rmdir path      删除一个空目录
      cp -rf path_1 path_2     复制,path_1源路径,path_2目标路径
      mv path_1 path_2         移动,path_1源路径,path_2目标路径
      mkdir path     创建一个目录
      ls -l      list,列出文件目录下的所有文件信息
      du -h --max-depth=1 path 查看path路径下所有文件、文件夹大小 Path为空表示当前目录
      chmod 755 path 分配文件所属组,所属者,其他人权限
      chmod a+rwx /home/abc.sh 采用root用户执行该命令~对所有级别的用户赋予读、写、执行该shell脚本的权限
      sudo chown glee path 改变文件的拥有者为glee用户,使用超级用户权限执行
      sudo chgrp root path 改变文件的所属组为root组,使用超级权限执行
     
    •  9个权限位说明
                 1  ~文件类型 ‘-’普通文件,‘b’特殊块文件‘c’特殊字符文件‘d’目录‘l’软链接‘p’FIFO管道文件‘s’socket套接口文件 ‘w’whiteout..
                 2~4 文件所有者权限
                 5~7 文件所属组权限
                 8~10 其它用户权限,非所有者及非所属组权限
                ‘w’写‘r’读‘x’执行‘-’无‘S’‘s’
     
    • screen

               screen -x path 进入开启的会话模式

               screen (path)进入会话窗口模式

               ctrl+a+c 新建会话

               ctrl+a+A 重命名会话

               ctrl+a+k 关闭当前会话(会kill当前进程)

               ctrl+a+d 退出

               ctrl+a+num num 表示会话id(0 - 9)           

        screen -S yourname -> 新建一个叫yourname的session           

        screen -ls(或者screen -list) -> 列出当前所有的session           

        screen -r yourname -> 回到yourname这个session           

        screen -d yourname -> 远程detach某个session

               screen -d -r yourname -> 结束当前session并回到yourname这个session
     
    • ps,ps -A|grep processname 查找进程包含“processname ”
    a 显示现行终端机下的所有程序,包括其他用户的程序。
    -A 显示所有进程。 
    c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
    -e 此参数的效果和指定"A"参数相同。
    e 列出程序时,显示每个程序所使用的环境变量。
    f 用ASCII字符显示树状结构,表达程序间的相互关系。
    -H 显示树状结构,表示程序间的相互关系。
    -N 显示所有的程序,除了执行ps指令终端机下的程序之外。
    s 采用程序信号的格式显示程序状况。
    S 列出程序时,包括已中断的子程序资料。
    -t <终端机编号>  指定终端机编号,并列出属于该终端机的程序的状况。
    u 以用户为主的格式来显示程序状况。
    x 显示所有程序,不以终端机来区分。
     
    • kill
                kill pid 或 kill -9 pid结束进程,如果使用后者命令还是没法结束该进程,只能重启系统 
                kill -9 -1 终止当前用户所拥有的所有进程
     
    • netstat
                netstat -an|grep LISTEN -i
                netstat -an|grep port
     
    • cat  
    cat file  打开文件
    cat >> file 往文件末尾增加内容
    cat > file 创建文件(如果存在,会把原有文件删除,新建)
    cat -n file 
    cat file_1 file_2 > file 文件file_1,file_2合并到file
    de>cat [选项] [文件]...de> 
    选项 :
    -A, --show-all 等价于 -vET 
        -b, --number-nonblank 对非空输出行编号 
    -e 等价于 -vE 
    -E, --show-ends 在每行结束处显示 $ 
    -n, --number 对输出的所有行编号 
    -s, --squeeze-blank 不输出多行空行 
    -t 与 -vT 等价 
    -T, --show-tabs 将跳 字符显示为 ^I 
    -u (被忽略) 
    -v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外 
    --help 显示此帮助信息并离开
     
    •  sort file 对file内容进行排序,默认按照字符 sort -n file按照数字排序
    • scp
               scp file user@ip:path 将file文件拷贝到某一主机 
               例:scp /home/glee/text.txt root@192.168.0.112:/home/glee/   需输入root用户密码
          scp -r -i GC_KB_00003 km-php root@115.159.36.242:/var/www/html/
                           -r 表示包含拷贝目录下的所有子目录文件
                           -i 认证文件
     
    • 压缩与解压 
      zip、unzip、bzip2、bzcat、bunzip2
          bzip2 filename 压缩
          bunzip2 fielname.bz2 解压
          bzcat filename.bz2 查看压缩文件内容
          gzip、gzcat,gunzip 用法类似
    tar [主选项+辅选项] 文件或目录
        主:归档(c)、拆包(x)、列出内容(t)     
        辅:-z 是否具有gzip属性,压缩或解压,如:xxx.tar.gz或xxx.tgz
                -j 是否具有bzip属性,压缩或解压,如:xxx.tar.bz2
                -v 压缩过程显示文件
                -f  显示档名,f之后不能加其它参数,接档名
                -p 使用原文件原属性
     
    • 硬盘挂载mount
    df -h 查看硬盘容量
    fdisk -f 查看当前硬盘    
    mount /dev/path path
    卸载 umount path    
     
    • df 查看磁盘剩余空间
               du显示当前目录及子目录磁盘使用情况,以块为单位显示占用空间
               ps:两个命令同时使用用‘|’分隔(管道命令),如: du -sh * | sort -nr ,其中-r表示降序
     
    • 防火墙
       打开防火墙配置 vi /etc/sysconfig/iptables
       查看防火墙端口状态/关闭/重启 /etc/init.d/iptables status/stop/restart
       放开80与22端口:
         #/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT  
         #/sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT  
         #/etc/rc.d/init.d/iptables save 
         重启计算机后,防火墙默认已经开放了80和22两个端口。
       永久性关闭防火墙:#chkconfig --level 35 iptables off 
         验证设置是否生效:iptables -L
    • selinux
             getsebool -a | grep httpd 查看httpd相关的功能是否开启
             setsebool xxx 1(或0) 
     
    • tail tail -f filename
  • 相关阅读:
    C++窗体应用程序
    C++继承方式简介及公有继承
    C++(继承的基本概念和语法)
    python(12)---科赫特雪花
    python(11)---pyinstaller
    20200914 day9 数据结构复习(一)
    20200914 day9 刷题记录
    20200913 day8模拟(二)
    20200912 day7 刷题记录
    20200912 day7 图论复习(一)
  • 原文地址:https://www.cnblogs.com/Lucky-qin2013/p/6709035.html
Copyright © 2011-2022 走看看