Linux基础命令、权限及重要目录。

Linux基本命令

一、 Linux的命令操作(最常用):

命令的使用结构

命令名称 [操作选项] [操作源对象] [操作目标对象]

1. 对目录进行操作(目录== 文件夹)
ls :    查看目录下的内容
            /     查看根目录下的所有目录
           -a     查看隐藏文件
                    linux 下以 . 开头的文件是隐藏文件
                        .    当前目录
                        ..   当前目录的上一层目录
            -l    列出目录下内容的详细信息
                      drwxr-xr-x. 2 wxt wxt  4096 4月   6 02:18 图片
                     -rw-rw-r--. 1 wxt wxt     6 6月  26 03:15 tmp2
                     d                 开头目录型文件
                     -        开头 普通文件
                     rwxr-xr-x     文件权限
                     2                  文件计数器(每删除一个文件,连接计数减1)直到为0,才会真正释放磁盘
                     wxt              第三列所属用户
                     wxt              第四列所属用户组(默认创建用户组为自己)
                     4096            文件大小(按字节)
                     4月   6 02:18 最后一次修改时间
             -t    按时间排序
             -r    对排序进行逆序,和-t结合使用(ls -ltr)
pwd:      查看当前所在目录
             /home/wxt       绝对路径(起始查找路径从根目录开始)
             ../san          相对路径 (相对于当前路径开始查找的路径)
             .               相对路径
echo      文件中写入  (echo "find good work">>test/aa.txt )
man       手册命
man       命令名 查看制定命令的手册(man ls)
mkdir     创建目录
mkdir     目录名
          -p       递归创建目录(mkdir -p abc/bcd/def)
rmdir     删除空目录
          -p       递归删除空目录 
cd         改变当前所在路径
           ~       当前用户家目录
           -       上一次所在路径
rm        删除文件(默认不能删除目录)
           -r      删除文件,包含目录
           -f      忽略提示信息,强制删除
cp        复制
           -r      复制文件到指定位置,包含目录
           -f      忽略提示信息,强制拷贝(-rf)
mv        移动/剪切文件到指定位置(mv aaa/ test  将aaa移动到test中)
           -f      忽略提示信息
2.对文件进行操作
touch     刷新文件时间属性,若文件不存在则创建
          -t          以指定时间刷新
          -r          以一个文件为标准刷新另一个文件
          -a          仅仅刷新文件最后一次访问时间
          -m          仅仅刷新文件最后一次修改时间    
cat        将文件内容全部打印到终端显示(适用短小)
           -n          显示行号
tac        逆序将文件内容全部打印到终端显示
more       按页显示文件内容
           按空格向下翻页
           回车向下走一步
           q            退出
less        按也显示文件内容
           f   pgdown    向下翻页
           b  pgup       向下翻页
                         回车    上下         按行移动
            /string      向下匹配string
           ?string      向上匹配string
            q            退出 
head         显示文件前n行的内容(默认前10行)(head /etc/passwd)
            -n            用于指定显示多少行(head -n 3 /etc/passwd)
tail         显示文件后n行的内容(默认后10行)(tail /etc/passwd)  
            -n            用于指定显示多少行(tail -n 3 /etc/passwd)
            -f            动态刷新文件末尾内容(tail -f test)
cp
mv
3.压缩相关操作(压缩/解压缩/打包)
zip/unzip          zip格式的压缩解压缩          (zip test.zip  test.txt)(unzip test.zip)  
gzip/gunzip        gzip格式的压缩解压缩         (gzip test.gzip test.txt)     
bzip2/bunzip2      bzip2格式的压缩解压缩
tar                打包命令
            -c     打包
            -v     显示详细的打包/解包文件信息
            -f     指定包名字(因为-f 用于指定包名  因此通常是最后一个选项)
            -x     解包               列 tar -xzvf test.tar.gz
            -z     打包解包的同时以gzip格式压缩/解压
            -j     打包解包的同时以bzip2格式压缩/解压
4.查找匹配操作
grep       字符串匹配
           grep “aa”test.txt
           匹配test.txt文件中包含有aa字符串的行
           -v         反向匹配
                      匹配的是不包含aa的行(-v grep “aa”test.txt)
           -i         忽略大小写进行匹配(grep -i“aa”test.txt)
           -R         当前目录下进行文件递归匹配(grep -iR“aa”./)
find       从指定目录下查找文件
            -name   按名称查找文件(find ./ -name "aa.txt")
            -type     按文件类型查找文件
                      f         普通文本文件
                      d         目录型文件(find ./ -type d)
             linux    下文件类型并不以后缀名来区分
                      后缀名只是用于用户容易分辨文件功能
             -size    按大小查找文件(find ./ -size -30c)小于30字节
                       +ns       超过n
                       -ns       小于n
                        s:      
                                  c         字节
                                  b         块(默认512字节)
                                  k
                                  m......
              -amin/-cmin/-mmin            按分钟查找
              -atime/-ctime/-mtime         按天查找
                        -n         在n分钟/天之内 (find ./-cmin -3)
                        +n         超过n分钟/天
5.其他命令(cal date bc uname halt reboot shutdown)
cal        查看日历
          -3       相邻总共三个月的日历
          -j       显示当前月的每一天是当年第几天
          -y       显示全年日历
date      显示年月日时分秒 
          -s       设置系统时间(date -s "2018-9-22  12:00:00")
          +%s      查看时间戳(从1970年1月1日零点零分零秒到现在经过的秒数)(date +%s)
          +'%Y-%m-%d'      可以指定格式显示时间(2018-9-20)
bc        计算器(按ctrl+c退出)
uname  查看系统的版本信息
          -r
          -a       查看详细的信息
          halt     关机
          reboot   重启 
          shutdown -h now   关机
二、 linux权限:
超级用户:root
普通用户
su      切换用户
rwx   rwx   rwx
针对文件的权限分了三类用户
        文件所有者:  文件属于谁
        文件所属组:  文件属于哪个用户组(组内成员)
        其他用户:    除了上边两类之外的用户
文件的权限也有三类:
        可读权限      用户是否能够读取内容
        可写权限      用户是否能够修改内容 
        可执行权限     用户是否能够执行这个文件

                7                        7                       5
               111                    111                   101
               rwx                     rwx                   r-x
             文件所有者 u      文件所属组g        其他用户o
    
                    文件权限         目录权限
               r     可读权限        是否可浏览目录
               w     可写权限        是否可创建删除目录
               x     可执行权        是否可以进入目录
               例:   644            rw-r--r--
               
umask        显示或者修改当前的文件默认创建权限掩码(创建文件默认去掉可执行,所以为664)
             文件满权限777减去掩码得到最终的文件权限
             但是shell说文件创建的时候默认不允许可执行 
             umask 值是022-----权限:755( rwxr-xr-x)
             权限 & (~umask)
chmod        修改文件权限
             u      所属用户(chmod  u+x  work.txt)
             g      所属组
             o      其他
             a      所有用户(chmod  a+w  work.txt)
                     +/-  rwx
                     0777        以八进制数字来设置权限
chown      修改文件所属用户(root下  chown root work.txt )
chgrp      修改文件所属组                 

沾滞位-----权限位
            首先沾滞位是针对目录来设置的
            在设置了沾滞位的目录中可以创建文件,可以删除自己的文件,但是不能删除别人的文件
chmod+t dir    设置目录的沾滞位
            管道符:
                  链接两个命令,将前面命令的结果交给后边命令来处理
            重定向: 修改数据的流向
                                 
            >       标准输出重定向(清除原有内容,将新内容写入)
            >>      标准输出重定向 (将原有内容最后追加新内容)
                    将原本要写入到终端显示文件的数据写入到指定文件中
三、 根目录下各个目录的功能?
Linux 是一个多用户,多任务操作系统,同时可以的登陆多个用户。Linux下,一切对象皆为文件的主旨,
在根目录下,涵盖了所有核心关键的目录,每个目录分管不同的功能项,一些核心的功能目录,更是不能去随意改
动或者删除,对根目录下的目录有一定的认知,对于管理自定义的文件有很大的帮助,也就是我们常说的标准化:

 / home:   总的家目录(总的家目录下边又有各个用户自己的家目录,默认情况下家目录都是以)
 /bin:    保存系统命令,如ls、cd、pwd等常用命令

/dev:     存放设备文件,特殊文件保存目录(不可以随意修改)

/home:    用户目录,存放普通用户相关文件的用户,是我们常用的目录

/lost+found:存放临时文件。此文件夹大多数情况下都是空的,当突然停电或非正常关机后,有些文件就临时存放在这里。

/mnt:     缺省挂载点,挂载U盘、移动硬盘目录(常用)

/sbin:    用来存放管理员才能使用的命令,即具有一定权限才可以使用的命令

/proc:    进程,该目录不能直接操作,其保存的是内存的过载点

/srv:     系统启动服务时可以访问的数据库目录

/tmp:     临时目录

/var:     系统相关文档内容目录,存放经常被修改的文件,包括各种日志、数据文件。

/boot:    存放引导的相关文件,保存系统的启动数据(不可随意操作)

/etc:     用来存放配置相关文件

/lib:     存放系统动态链接共享库,几乎所有的应用程序都会用到该目录下的共享库。

/media:   存放挂载和自动挂载设备的标准位置。如远程文件系统和可移动介质。

/opt:     存放第三方软件。第三方软件在安装时默认会找到这个目录,所以如果你没有安装此类软件时,它是空的,但如果你一旦把它删除,以后再安装此类软件可能会碰到麻烦。

/root:    存放root用户(即管理员用户)相关文件的目录

/sys:     该目录不能直接操作,存放类似于/proc的文件系统,在linux2.6内核中最新出现,包含的文件用于获得硬件状态并反映内核看到的系统设备树。它使用了/proc中的很多帮助。

/selinux:  selinux是一种基于域-类型模型(domain-type)的强制访问控制(MAC)安全系统,它由NSA编写并设计成内核模块包含到内核中,相应的某些安全相关的应用也被打了SELinux的补丁,最后还有一个相应的安全策略。

/usr:     系统软件资源目录,存放默认安装文件的目录,存放用户的应用程序和文件

/usr/bin   众多的应用程序

/usr/sbin  超级用户的一些管理程序

/usr/include linux下开发和编译应用程序所需要的头文件

/usr/lib    常用的动态链接库和软件包的配置文件

/usr/src    源代码,linux内核的源代码就放在这里

/usr/local/bin  本地增加的命令

/usr/local/lib  本地增加的库

猜你喜欢

转载自blog.csdn.net/sister_wang0712/article/details/82833276