码迷,mamicode.com
首页 > 系统相关 > 详细

linux的管理命令

时间:2015-07-01 11:35:13      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:

文件命名规则

       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这个参数。如果想使用命令原意,可以在加\转义,

    如:\rm 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,远程服务器不能关机。

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

 

linux的管理命令

标签:

原文地址:http://www.cnblogs.com/examine/p/4612579.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!