zoukankan      html  css  js  c++  java
  • linux的管理命令

    文件命名规则

           Windows:   / | ? * < >  CON  以点开头  默认都不能作为文件名使用

           Linux:除了/之外,所有的字符都合法

           有些字符最好不要用:空格、制表符、退格符、@#$&()- 等 (空格是命令间的分隔符)

           避免使用点(.) 作为普通文件名的第一个字符  (点开头的是Linux隐藏文件)

    大小写敏感

               一 linux命令的格式

     

            1、命令  [选项]  [参数]

     

            ls  list    显示目录下内容

     

            ①  命令名称:ls

                命令英文原意:list

                命令所在路径:/bin/ls

                执行权限:所有用户

                功能描述:显示目录文件

     

            ②  ls  名直接回车,显示目录下内容

     

            ls  -l          长格式显示       (缩略选项用一个减号,完整选项用两个减号)

     

     

            -rw-------    1   root    root    1190    08-10 23:37     anaconda-ks.cfg

            第一项:     权限位 

            第二项:  1      引用计数

            第三项:  root       所有者

            第四项:  root   属组

            第五项:         大小

            第六项          最后一次修改时间

            第七项          文件名

     

            ls  -a       显示所有文件(包含隐藏文件)

            ls  -al

            ls  -h      文件大小显示为常见大小单位    B   KB  MB

            ls  -d      显示目录本身,而不是里面的子文件

     

            ls  -l  文件名

           

            文件颜色及类型

    1)默认色代表普通文件。  例:install.log

    2)绿色代表可执行文件。  例:rc.news

    3)红色代表tar包 文件。 例:vim-7.1.tar.bz2

    4)蓝色代表目录文件。  例:aa

    5)水红代表图象文件。  例:Sunset.jpg

    6)青色代表链接文件。  例:rc4.d     (此类文件相当于快捷方式)

    7)黄色代表设备文件。  例:fd0

    8)背景红色代表损坏的链接文件。例:rc4.d

     

     

        常见文件类型

    — 二进制文件

             l   链接文件

            d   目录文件

        提示符:

            [root@localhost src]#

     

            [当前登录用户@主机名 当前所在目录]#

     

                    #       超级用户

                    $       普通用户

     

                    当前所在目录:       ~       用户家目录  

                                管理员      /root

                                普通用户     /home/用户名

     

        二 目录操作命令

     

                1) cd  切换所在目录

     

                    ①  命令名称:cd

                        命令英文原意:change directory

                        命令所在路径:shell内置命令

                        执行权限:所有用户

     

     

                    ②cd  /usr/local/src

     

                    相对路径:参照当前所在目录,进行查找。一定要先确定当前所在目录。    root]#cd  ../usr/local/src

                    绝对路径:cd  /usr/local/src     从根目录开始指定,一级一级递归查找。在任何目录下,都能进入指定位置

            建议:多使用绝对路径

     

                    cd  ~       进入当前用户的家目录     /root       /home/aa/

                    cd     

                    cd  -       进入上次目录

                    cd  ..      进入上一级目录

                    cd  .       进入当前目录

     

                2)  pwd 显示当前所在目录

                    命令名称:pwd

                    命令英文原意:print working directory

                    命令所在路径:/bin/pwd

                    执行权限:所有用户

     

                3) linux常见目录

                    /       根目录

                    /bin        命令保存目录(普通用户就可以读取的命令)

                    /boot       启动目录,启动相关文件

                    /dev        设备文件保存目录

                    /etc        配置文件保存目录

                    /home       普通用户的家目录

                    /lib        系统库保存目录

                    /mnt        系统挂载目录

                    /media      挂载目录

                    /root       超级用户的家目录

                    /tmp        临时目录

                    /sbin       命令保存目录(超级用户才能使用的目录)

                    /proc       直接写入内存的

                    /sys       

                    /usr        系统软件资源目录

                        /usr/bin/       系统命令(普通用户)

                        /usr/sbin/      系统命令(超级用户)

                    /var        系统相关文档内容

                        /var/log/       系统日志位置

                        /var/spool/mail/        系统默认邮箱位置

                        /var/lib/mysql/     默认安装的mysql的库文件目录

                   

                4) 建立目录

                    mkdir  目录名

                    命令名称:mkdir

                    命令英文原意:make directories

                    命令所在路径:/bin/mkdir

                    执行权限:所有用户

     

                    mkdir  -p  11/22/33/44       递归建立目录

               

                5) 删除目录

                    rmdir  目录          只能删除空目录

                    命令名称:rmdir

                    命令英文原意:remove empty directories

                    命令所在路径:/bin/rmdir

                    执行权限:所有用户

     

                    rm  文件名       删除文件

     

                    rm  -rf   目录   删除文件和目录

                        -r  递归,删除目录

                        -f  强制

     

                6)  tree  目录名    显示指定目录下所有内容的目录树

                    命令名称:tree

                    命令所在路径:/usr/bin/tree

                    执行权限:所有用户

        

    一 文件操作命令

     

                1)创建空文件或修改文件时间

     

                    touch  文件名

                    命令名称:touch

                    命令所在路径:/bin/touch

                    执行权限:所有用户

     

                2)删除

                    rm  -rf  文件名

                        -r  删除目录

                        -f  强制

                    命令名称:rm

                    命令英文原意:remove

                    命令所在路径:/bin/rm

                    执行权限:所有用户

     

     

                3)cat  文件名       查看文件内容。从头到尾

                    命令名称:cat

                    命令所在路径:/bin/cat

                    执行权限:所有用户

     

                    -n  列出行号

     

                4)more  文件名  分屏显示文件内容

                    命令名称:more

                    命令所在路径:/bin/more

                    执行权限:所有用户

     

     

                    空格向下翻页         b   向上翻页     q  退出

     

                6) head  文件名     显示文件头

                    命令名称:head

                    命令所在路径:/usr/bin/head

                    执行权限:所有用户

           

                    head  -n  行数   文件名       指定显示文件头几行

                    head  -n  20  文件名

                    head  -20  文件名

     

     

                7) 链接文件    

                ln

                命令名称:ln

                命令英文原意:link

                命令所在路径:/bin/ln

                执行权限:所有用户

     

     

                软链接相当于快捷方式

                新建的链接,占用不同的硬盘位置

                修改一个文件,两都改变

                删除源文件,软连接打不开

     

                ln  -s  源文件  目标文件      文件名都必须写绝对路径

     

    二  文件和目录都能操作的命令

     

                1)rm       删除文件或目录

     

                2)复制

                命令名称:cp

                命令英文原意:copy

                命令所在路径:/bin/cp

                执行权限:所有用户

     

     

                cp  源文件  目标位置

     

                    -r  复制目录

                    -p  连带文件属性复制

                    -d  若源文件是链接文件,则复制链接属性

                    -a  相当于  -pdr

     

                cp  aa  /tmp/            原名复制

                cp  aa  /tmp/bb      改名复制

     

     

                3)剪切或改名

                命令名称:mv

                命令英文原意:move

                命令所在路径:/bin/mv

                执行权限:所有用户

     

                mv  源文件  目标位置

     

                mv  /root/aa  /tmp/

     

                mv  aa  bb

     

     

    三  权限管理

     

            1   权限位

                -rw-r--r--   1   root root     0 08-11 01:45 aa

     

                权限位是十位

                第一位: 代表文件类型

     

                    -   普通文件

                    d   目录文件

                    l   链接文件

           

     

                九位    属主权限u    属组权限g     其他人权限o

     

                    r   读      4

                    w   写      2

                    x   执行    1

     

            2   修改权限

                chmod

                命令名称:chmod

                命令英文原意:change the permissions mode of a file

                命令所在路径:/bin/chmod

                执行权限:所有用户

     

                chmod  u+x  aa       aa文件的属主加上执行权限

                chmod  u-x  aa

                chmod  g+w,o+w  aa

                chmod  u=rwx  aa

     

                chmod  755  aa      

                chmod  644  aa

     

       

       

    实验:

           root用户创建一个目录(默认rwxr-xr-x),在目录中新建一个文件,然后将新建的文件设为777,普通用户能否删除该文件?

          

           实验需要相关知识:

           useradd 用户名     #添加用户

    passwd 用户名      #为用户设置密码

    从新开一个终端,用新建的用户登录进行实验

          

           实验2:

           root用户创建的目录,将目录改为777,在目录中新增的文件权限为644(rw-r--r--),切换到普通用户,是否可以删除该文件?

          

           因为rwx权限对于目录和文件,实际意义是不一样的

           文件:     

           r      cat  more  head  tail     查看文件内容

           w     echo  vi                             修改文件内容

           x     sh   (execute)                      执行

          

           目录:

           r      ls  find  tree                            列出文件

           w     touch  mkdir  rm                    创建删除文件

           x     cd                                       进入目录

           对文件有写权限,只代表可以修改这个文件,要想删除文件,需要对文件所在目录有写权限

           只要对目录有写权限,目录中的文件,就算是root创建的,普通用户一样能删除

          

           所以,目录一般都同时有rx权限,如果一个目录只有r却没有x,你能用ls查看,却不能cd 进去!(用普通用户测试)

           [jack@localhost test]$ cd a

      -bash: cd: a: 权限不够

      [jack@localhost test]$ ls a

      123

           对目录w权限,就意味着需要有rwx

        对脚本执行,需要rx 并对该目录有rx权限

     

     

    shell

     

            3   权限意义:

                1)权限对文件的含义

                    r:读取文件内容      cat  more  head  tail

                    w:编辑、新增、修改文件内容       vi  echo

                       但是不包含删除文件

                    x:可执行       

                /tmp/11/22/abc   ---------   

                   

                2)权限对目录的含义

                    r:可以查询目录下文件名       ls

                    w:具有修改目录结构的权限。如新建文件和目录,删除此目录下文件和目录,重命名此目录下文件和目录,剪切          touch  rm  mv  cp

                    x:可以进入目录          cd

     

            4   属主和属组命令

                chown

                命令名称:chown

                命令英文原意:change file ownership

                命令所在路径:/bin/chown

                执行权限:所有用户

     

                chown  用户名  文件名    改变文件属主

     

                chown  user1  aa     user1必须存在

     

                chown  user1:user1  aa   改变属主同时改变属组

     

                useradd  用户名      添加用户

                passwd  用户名           设定用户密码    

           

            5   默认创建文件的权限

                umask   显示0022

                第一位特殊权限位

                其他为三类用户的权限掩码值

                        777

                                -022

                         --------------

                                755      

                         就是创建文件的默认权限

                  我们创建一个目录mkdir test    默认是755权限

                  但新建的文件 touch  file      默认是644权限

            Linux安全机制,不给新建文件x权限。

     

    四  帮助命令

            1   man  命令名          查看命令的帮助  

                命令名称:man

                命令英文原意:manual

                命令所在路径:/usr/bin/man

                执行权限:所有用户

       

            2   命令  --help         查看命令的常见选项

       

    五  查找命令

     

     

            1   whereis  命令名      查找命令的命令,同时看到帮助文档位置

                命令名称:whereis   

                命令所在路径:/usr/bin/whereis

                执行权限:所有用户

     

           

    五  查找命令

     

     

            1   whereis  命令名      查找命令的命令,同时看到帮助文档位置

                命令名称:whereis   

                命令所在路径:/usr/bin/whereis

                执行权限:所有用户

            which   alias

            2   find                搜索命令    

     

    通配符

    *   任意多个字符

    ?   1

    [] 指范围值,外侧加引号

        ^   反向匹配

        ,   分割多个情况

     

    正则表达式

    . 除换行外任意符号

    *   任意个

    ?   0 1

    ^   开头

     

       

                命令名称:find

                命令所在路径:/usr/bin/find

                执行权限:所有用户

     

      普通文件或命令都可以找到

        需要指定搜索路径和条件

        尽量不要在根目录/中查找,查找得慢,会占用太多服务器资源

        如果需要在服务器中全盘查找,可以写一条计划任务在凌晨执行(计划任务后面讲)

        范围越小越好

    匹配条件,越精准越好

        -name 根据文件名查找  *任意字符  ? 单个字符

        例 find /etc -name init          这是精确查找  在/etc中查找 init文件

           find /etc -name init*        查找以init开头的(*代表0个或多个任意字符)

           find /etc -name init???     用?号代表任意一个字符

           find /root -name "*.log"

              

               -iname    不区分大小写

        -size 根据大小查找  单位是 block 数据块  一块是512字节 

                       10M=1024k*10*2=20480 block

        1M -> 1024k -> 2048块  (1块是0.5k 也就是512字节)

    100M -> 102400k -> 204800块

        例 find /etc -size -20480       查找小于10M的文件

           find /etc -size +204800    查找大于100M的文件

               注意+-号,如果没有,是精确这么大,通常都会带上+或-号,表示一个范围

        -user 根据所有者查找

        例 find /home -user jack                     在/home中,查找所有jack用户的文件

               注意,在系统中需要存在此用户,否则报错

        按时间查找

          按天           ctime atime mtime

          按分钟       cmin  amin   mmin

        c  change 改变     表示属性被修改过:所有者、所属组、权限

        a  access 访问      被访问过(被查看过)

        m  modify 修改   表示内容被修改过

        例:find /etc -mmin -120     查找120分钟内被修改过的

            find /etc -mtime +7              超过7天没有改过的文件

        -type根据文件类型查找

        例:   -type f 二进制文件

               -type l 软链接文件

               -type d 目录

        连接符(逻辑连接符: -a -o  命令执行连接符: -exec  -ok)

       

        逻辑连接符:  

        -a     (and 逻辑与 )    -o   (or 逻辑或)

        例: find /etc -size +163840 -a -size -204800在/etc下查找大于80M小于100M的文件

        对查找到的文件,进一步处理

        find  ...  -exec 命令 {}  ;

                      {}表示find查询的结果集

                      是转义符  表示一个命令或符号使用其本身的意义,不使用别名

                      ;分号是表示语句的结束

                      是固定格式,只能这样写。注意中间的空格。

        转义符的作用是什么?

        在linux中有一个别名机制,如rm删除文件,执行的却是rm -i(用which rm 可以查看命令别名),使用rm删除文件前会提示,就是因为rm -i这个参数。如果想使用命令原意,可以在加转义,

        如: m test.txt   则不会提示,直接删除

        找到文件后查看详情:

        find /etc -name inittab -exec ls -l  {}  ;

        find /etc -name init* -a -type f -exec ls -l {} ;  要过滤掉目录,只列出文件,否则ls会列出很多文件

       

        找到testfile后,直接删除,默认不需要确认,直接删除,也不需要加-f选项

        find /test -name testfile -exec rm {}  ;

       

        找samlee用户的所有文件并删除

        find /home -user samlee -exec rm –r  {}  ;

        找samlee用户的所有文件并删除,删除前会一个提示确认

        find /home -user samlee -ok rm -r {} ;

        结合使用:查二进制文件并显示详情

        find /etc -name init* -a -type f -exec ls -l {} ;

        根据i节点查找

        如果一些特殊文件

               touch "a b"

               touch -- -abc

        无法直接删除

               rm a b

               rm -abc

        可以这样删除

               rm "a b"

               rm -- -abc

        如果你不知道是怎样创建的,则可以先查看i节点

               ls -i  查到结果例如 2310630 a b

               find ./ -inum 2310630 -exec rm {} ;

     

     

            3   grep    “字符串”  文件名     查找符合条件的字串行。

                命令名称:grep

                命令所在路径:/bin/grep

                执行权限:所有用户

     

                grep  -i  “root”  /etc/passwd

                    -v      反向选择

                    -i      忽略大小写

     

        Find:   在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符匹配。通配符是完全匹配。

        Grep:  在文件当中搜索符合条件的字符串,如果需要匹配,使用正则表达式匹配,正则表达式是包含匹配

     

     

            4   管道符         

                命令1  |  命令2          命令1的执行结果,作为命令2的执行条件

     

                netstat -an | grep ESTABLISHED | wc -l      统计正在连接的网络连接数量

     

                cat  文件名  |  grep  “字串”          提取含有字符串的行

                grep  “字符串”  文件名

     

                ls  -l  /etc  |  more                        分屏显示ls内容

     

            补充命令:

                netstat         查看网络状态的命令

                    -t  查看tcp端口

                    -u  查看udp端口

                    -l  监听

                    -n  以IP和端口号显示,不用域名和服务名显示

                    -a  查询所有连接

     

           

     

    六  压缩和解压缩

           

                .gz     .bz2        linux可以识别的常见压缩格式  

                .tar.gz .tar.bz2    常见的压缩和打包命令

     

                压缩同时打包

                    tar  -zcvf  压缩文件名  源文件

                    tar  -zcvf  aa.tar.gz  aa

                        -z  识别.gz格式

                        -c:    压缩

                        -v:显示压缩过程

                        -f:指定压缩包名

     

                    tar  -zxvf  压缩文件名       解压缩同时解打包

     

               

                    tar  -jcvf  压缩文件名  源文件    压缩同时打包

                    tar  -jcvf  aa.tar.bz2  aa

     

                    tar  -jxvf  aa.tar.bz2       解打包同时解压缩

     

                查看不解包

                    tar  -ztvf  aa.tar.gz        查看不解包

                    tar  -jtvf  aa.tar.bz2

                        -t  只查看,不解压

     

                    tar -jxvf root.tar.bz2 -C /tmp/ 指定解压缩位置

     

    七  关闭和重启命令

           

                1)shutdown  -h  now         没有特殊情况,使用此命令

                    -h  关机

                    -r  重启

     

                shutdown  -r  now

     

                        命令名称:shutdown

                        命令所在路径:/sbin/shutdown

                        执行权限:root  

                2)reboot

                    命令名称:reboot

                    命令所在路径:/sbin/reboot

                    执行权限:root

               

    八  挂载命令

           

            linux所有存储设备都必须挂载使用,包括硬盘

                命令名称:mount

                命令所在路径:/bin/mount

                执行权限:所有用户

     

                光盘挂载

     

                /dev/sda1   第一个scsi硬盘的第一分区

                /dev/cdrom  光盘

                /dev/hdc        光盘                centos  5.5

                /dev/sr0        光盘        centos 6.x

           

                mount  -t  文件系统  设备描述文件  挂载点(已经存在空目录)

                mount  -t  iso9660  /dev/cdrom  /mnt/cdrom

     

                光盘卸载

                umount  /dev/cdrom

                umount  /mnt/cdrom      强调:退出挂载目录,才能卸载

     

                fdisk  -l

                mount  -t  vfat  /dev/sdb1  /mnt/usb

     

     

    六  网络命令

            1   ping    测试网络连通性

                    命令名称:ping

                    命令所在路径:/bin/ping

                    执行权限:所有用户

     

                ping  -c  次数  ip       探测网络通畅

     

            2   ifconfig        查询本机网络信息

                    命令名称:ifconfig

                    命令英文原意:interface configure

                    命令所在路径:/sbin/ifconfig

                    执行权限:root

    服务器管理规范:

        越是安全等级要求高的服务器,越是严格限制用户等级,不能所有人都是root,远程服务器不能关机。

        服务器不允许在负载高峰执行高负载命令。例如杀毒、大数据压缩解压缩,复制,全盘搜索。

  • 相关阅读:
    hdu 1998 奇数阶魔方(找规律+模拟)
    巧用百度Site App新组件为企业官网打造移动站
    POJ 1276 Cash Machine
    Unity3D中使用MiniJson解析json的例子
    设计模式读书笔记-----单例模式
    android 常用资料
    Objective-C之run loop详解
    icon 图标下载
    揭开Html 标签的面纱,忘不了的html .
    12157
  • 原文地址:https://www.cnblogs.com/examine/p/4612579.html
Copyright © 2011-2022 走看看