linux基础知识储备


1. linux的初步认识与操作
    linux操作系统
    如何操作linux操作系统(使用命令操作)
    linux下的常用工具
2. linux系统编程
    在linux操作系统环境下编程
    进程
3. linux网络编程
    如何在linux编写网络通信程


linux的发展史
    linux是一个类unix操作系统
    unix
    Minix
    linux
        ---免费
        ---开源--稳定
    服务器市场
        linux
        windows
        unix

        .dll
        刷root---linux下的超级管理员
    因为linux开源免费
        linux操作系统内核
    发行版:在linux内核的基础上封装了自己的应用
    红帽子---收费---快速的解决问题
    centos---

    桌面能完成的功能,命令都能完成

xshell---远程登陆客户端
    vmware---虚拟出一个硬件环境用于安装一个操作系统
    虚拟机---在vmware中虚拟的这个硬件环境/安装的这个操作系统
    xshell功能就是:远程连接到虚拟机/服务器上对虚拟机/服务器进程远程操作
    xshell     secur CRT    putty
    winscp 用于自己主机和服务器/虚拟机之间的文件传输
    notepad++


xshell连接的问题:
    1. 查看网络连接中有没有VMware的虚拟网卡
        如果没有:
        关闭虚拟机-》编辑-》虚拟网络编辑器-》更改设置-》恢复默认设置(重新安装虚拟网卡)
        完成之后再次看一下又没虚拟的网卡
    2. 有虚拟网卡,但是ifconfig之后,没有ip地址
        1. 重新点击右上角双电脑图标-》system eth0
        2. 右键此电脑-》管理-》服务-》VMware服务
 
    
linux的命令操作:
    讲解的是最常用的命令
    命令的使用结构

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

    对目录进行操作(目录=文件夹)
        ls:    默认查看当前目录下的内容
            -a    查看隐藏文件
                linux下以.开头的文件是隐藏文件
                .    当前目录
                ..    上一层目录
            -l    列出目录下内容的详细信息
            -t    按时间排序
            -r    对排序进行逆序
        pwd:    查看当前所在目录

            /home/san    绝对路径,从/开始
            ../san        相对路径,从当前开始
            .
        mkdir    创建目录
            -p    递归创建目录
        rmdir    删除空目录
            -p    递归删除空目录
        man    手册命令
            man    命令名 查看指定命令的手册
        cd    改变当前所在路径
            ~    当前用户的家目录
            -    上一次所在路径
        rm    删除文件(默认不能删除目录)
            -r    删除文件,包含目录
            -f    忽略提示信息,强制删除
        cp    复制
            -r    复制文件到指定位置,包含目录
            -f    忽略提示信息,强制拷贝
        mv    移动/剪切文件到指定位置    
            -f    忽略提示信息
    对文件进行操作
        touch    刷新文件时间属性,若文件不存在则创建
            -t    以指定时间刷新
            -r    以一个文件为标准刷新另一个文件
            -a    仅仅刷新文件最后一次访问时间
            -m    仅仅刷新文件最后一次修改时间
        cat    将文件内容全部打印到终端显示
            -n    显示行号
        tac    逆序将文件内容全部打印到终端显示
        more    按页显示文件内容
            空格向下翻页
            回车向下走一行
            q退出
        less    按页显示文件内容
            f pgdown    向下翻页
            b pgup        向上翻页
            回车 上下    按行移动
            /string        向下匹配string
            ?string    向上匹配string
            q        退出
        head    显示文件的前n行内容(默认前10行)
            -n     用于指定显示多少行
        tail    显示文件的后n行内容(默认后10行)
            -n    用于指定显示多少行
            -f    动态刷新文件末尾内容
                ctrl+c退出
        cp
        mv
    压缩相关操作
        压缩/解压缩/打包
        zip/unzip     zip格式的压缩/解压缩
        gzip/gunzip    gzip格式的压缩/解压缩
        bzip2/bunzip2    bzip2格式的压缩/解压缩
        tar        打包命令
            -c    打包
            -v    显示详细的打包/解包文件信息
            -f    指定包名字(因为-f用于指定包名                    因此通常是最后一个选项)
            -x    解包
            -z    打包/解包的同时以gzip格式压缩/                    解压缩
            -j    打包/解包的同时以bzip2格式压缩                /解压缩
    查找匹配操作
        grep        字符串匹配
            grep "aa" test.txt
            匹配test.txt文件中包含有aa字符串的行
            -v    反向匹配
                匹配的是不包含aa的行
            -i    忽略大小写进行匹配
            -R    对目录下的文件进行匹配
                如果当前的文件是一个目录型文件
                那么就进入这个子目录中继续匹配
        find        从指定目录下查找文件
            -name    按名称查找文件
            -type    按文件类型查找文件
                f    普通文本文件
                d    目录型文件
            linux下文件类型并不以后缀名区分,
            后缀名只是用于用户容易分辨文件功能。
            -size    按大小查找文件
                +ns    超过n
                -ns    小于n
                s:
                    c    字节
                    b    块(默认512)
                    k
                    M        
                    G
            -amin/-cmin/-mmin    按分钟查找
            -atime/-ctime/-mtime    按天查找
                -n    在n分钟/天之内
                +n    超过n分钟/天
    其他操作
        cal    查看日历
            -3    相邻总共 三个月的日历
            -j    显示当前月的每一天是当年第几天
            -y    显示全年日历
        date
            -s    设置系统时间
            +%s    查看时间戳
                19700101000000到现在的秒数
            +'%m-%d'以指定格式显示时间
        bc    计算器
        uname    查看系统的版本信息
            -r
            -a    查看详细的信息
        halt    关机
        reboot    重启
        shutdown -h now    关机
        
linux下的目录结构
    树状目录结构,最上层的目录是根目录(‘/’)
    根目录下的所有目录都有特定的含义,都存储着不同功能的文件
    网上查一查根目录下各个目录的功能?

linux下一切皆文件


shell命令及运行原理:
    1. linux下的命令大部分都是一个个的可执行程序
    2. 起始捕捉我们命令的这个东西也是一个程序
linux权限:
    超级用户:root
    普通用户
    su    切换用户
    
    针对文件的权限分了三类用户
        文件所有者:    文件属于谁
        文件所属组:    文件属于哪个用户组(组内成员)
        其他用户:    除了上边两类之外的用户
    文件的权限也有三类:
        可读权限    用户是否能够读取内容
        可写权限    用户是否能够修改内容
        可执行权限    用户是否能够执行这个文件

    7        7        5
    111        111        101
    rwx         rwx         r-x
    文件所有者    文件所属组    其他用户

        文件权限        目录权限    
    r    可读权限        是否可浏览目录
    w    可写权限        是否可创建删除文件
    x    可执行权限        是否可以进入目录
        
    umask    显示/修改当前的文件默认创建权限掩码
        文件满权限777减去掩码得到最终的文件权限
        但是shell说文件创建的时候默认不允许可执行

        umask值是022---权限:755
        rwxr-xr-x
        权限 & (~umask )
    chmod    修改文件权限
        u    所属用户
        g    所属组用户
        o    其他用户
        a    所有用户
            +/-  r/w/x
        0777    以八进制数字来设置权限    
    chown    修改文件所属用户
    chgrp    修改文件所属组
    
    需求:一个项目组有好几个用户
        目录
            所有用户都可以在目录中创建文件,可以删除自己的文件,但是不能删除别人的文件

    沾滞位---权限位
        首先沾滞位是针对目录来设置的
        在设置了沾滞位的目录中可以创建文件,可以删除自己的文件,但是不能删除别人的文件
    chmod +/-t dir    设置目录的沾滞位

    管道符:|
        连接两个命令,将前边命令的结果交给后边命令来处理
    重定向:修改数据的流向
        
    >    标准输出重定向
        清除原有内容,将新内容写入
    >>    标准输出重定向
        向原有内容最后追加新内容
        将原本要写入到终端显示文件的数据写入到指定文件            
    熟悉linux下环境开发,熟练使用vim gcc gdb yum工具
 

猜你喜欢

转载自blog.csdn.net/qq_41832361/article/details/82622365