linux

安装虚拟机
    安装CentOS,CentOS是使用linux内核的一种操作系统
    网络方式
        bridged(桥接,VMnet0)    单独产生一个网卡,必须和本机在同一网段才可以上网
        host-only(VMnet1)       就算本机没网,也可以和虚拟机通信
        NAT(VMnet8)             共用本机的网卡,本机可以上网,虚拟机就可以上网
    设置VMware的ip网段
        在安装目录下通过vmnetcfg.exe进行修改
    设置window跟虚拟机通信的ip网段
        网络共享中心 - 修改VMware1固定ip地址
    设置linux的ip
        参见下面



linux优点 
    开源
    可定制



修改主机名和ip
    查看主机名
        hostname
    修改主机名(需要重新启动才能生效)
        vim /etc/sysconfig/network
        HOSTNAME=xxx
    查看ip地址
        ifconfig
    修改ip地址(重新启动 或 service network restart)
        图形界面方式
            桌面右上角
        使用命令画的图形界面方式
            setup --> Network configuration --> Device configuration
        直接修改配置文件
            vim /etc/sysconfig/network-scripts/ifcfg-eth0
            修改如下
            DEVICE="eth0"
            BOOTPROT0="static"
            ...
            IPADDR="192.168.8.118"
            NETMASK="255.255.255.0"
            GATEWAY="192.168.8.1"
            DNS1="8.8.8.8"  //如果不是host-only需要设置
            DNS2="8.8.4.4"  //如果不是host-only需要设置
    修改主机名和ip的对应关系
        vim /etc/hosts
        192.168.8.118   主机名
    修改dns
        vi /etc/resolv.conf 
        nameserver 114.114.114.114
        nameserver 8.8.8.8



安装软件
    安装jdk: 将tar包解压,并设置环境变量
    安装eclipse: 将tar包解压
    安装mysql: 使用rpm命令安装rpm包



环境变量
    查看环境变量
        echo $环境变量名        查看某个环境变量的值(名称区分大小写)    
        env                     查看所有环境变量的值
    修改环境变量
        本次临时修改(下次开机会失效)
            环境变量名="$环境变量名":追加值
        永久修改(下面是对所有用户生效的,还有针对某个用户的等等自己查)
            vim /etc/profile
            添加: export PATH=$PATH:/usr/java/bin
            source /etc/profile
    注意
        如果没有设置环境变量,则需要在命令所在目录执行./命令名称才能找到



linux常用目录:
    bin     存放二进制可执行文件
    sbin    存放二进制可执行文件,只有root才能访问
    etc     存放系统配置文件
    usr     用于存放共享的系统资源
    home    存放用户文件的根目录
    root    超级用户目录
    dev     用于存放设备文件
    lib     存放跟文件系统中的程序运行所需要的共享库及内核模块
    mnt     系统管理员安装临时文件系统的安装点
    boot    存放用于系统引导时使用的各种文件
    tmp     用于存放各种临时文件
    var     用于存放运行时需要改变数据的文件



linux常用命令
    格式: 命令 -选项 参数
    类型
        内部命令
            属于shell解析器的一部分
            cd 切换目录
            pwd 显示当前工作目录
        外部命令
            独立于shell解析器之外的文件程序
            ls 显示文件和目录列表
            mkdir 创建目录
    查看帮助文档
        help xxx    查看内部命令的帮助文档
        man xxx     查看外部命令的帮助文档
    文件或目录操作
        cd          切换目录
            格式        cd [目录名]
            cd -        后退
        ls          显示当前目录中的内容
            格式        ls [选项] [目录名]
            -l          显示详细信息
            -a          显示所有内容(包括隐藏文件,.开头的文件/目录是隐藏文件/目录)
            -h          显示单位
            目录名      默认为当前目录
        pwd         显示当前路径
            格式        pwd
        touch       创建空文件
            格式        touch [选项]... 文件...
        mkdir       创建目录
            格式        mkdir [选项] 目录...
            -m          设置权限
            -p          自动创建父目录
            -v          显示创建的目录
        cp          复制文件或目录
            格式        cp [选项] 源 目的
            -r          递归复制
        mv          文件或目录移动或改名
            格式        mv [选项] 源文件或目录 目标文件或目录
            -f          强制,如果存在则直接覆盖
        rm          删除文件或目录
            格式        rm [选项] 文件…
            -r          递归删除
            -f          强制删除(不用提示)
            -v          显示删除的文件
        which       在path变量中查找可执行文件的第一个位置
            格式        which 可执行文件名称
        find        查找指定文件, find /etc/ -name "aaa"
            格式        find 路径 [选项]
            -name       按照文件名查找文件
            -iname      按照文件名查找文件(忽略大小写)
            -path       匹配文件路径
            -regex      根据正则表达式匹配文件路径
            -size +nc   查找文件大小大于n字节的文件 
            -amin n     查找最近n分钟访问的文件
            -atime n    查找最近n天访问的文件
            -mmin n     查找最近n分钟修改的文件
            -mtime n    查找最近n天修改的文件
            -o          是或者的意思
            -a          是而且的意思
            -not        是相反的意思
            -delete     搜索到匹配文件并删除
            -exec       继续执行命令,格式 find 路径 [选项] -exec [命令] {} \;
                        如:继续删除文件 find . -regex "*.txt" -exec rm -r {} \;
        ln          建立链接文件
            格式        ln [参数] [源文件或目录] [目标文件或目录]
        df          显示文件系统磁盘占用情况
            格式        df [选项] [文件]
            -h          展示单位
        du          显示文件和目录磁盘占用情况
            格式        du [选项] [文件]
            -h          展示单位
    文本文件
        cat         显示文本文件内容
            格式        cat [选项] [文件]...
            -n          显示行号
        tac         显示文本文件内容,倒序
            格式        tac [选项] [文件]...
        more        分页显示文件内容
            格式        more [file] 
            -n          定义屏幕大小为n行
            快捷键
            enter       向下翻一行
            space       向下滚动一屏
            ctrl+b      向上滚动一屏
            =           输出当前行的行号
            :f          输出文件名和当前行的行号
            q           退出
        less        分页显示文件内容(可向前翻页,并且可向前搜索)
            格式        less [参数]  文件
            -i          忽略搜索时的到小写
            -m          显示类似more命令的百分比
            -N          显示行号
            -o          将输出的内容保存到指定文件中
            快捷键
            /字符串     向下搜索字符串
            ?字符串     向上搜索字符串
            n           搜索下一个
            N           搜索上一个
            回车键      向后滚动一页
            b           向后滚动一页
            d           向后滚动半页
            空格键      向后滚动一行
            u           向前滚动半页
            y           向前滚动一行
            pagedown    向后滚动一页
            pageup      向前滚动一页
            Q           退出
        head        查看文件开头内容
            格式        head [参数]... [文件]...
            -n          显示行数
        tail        查看文件结尾内容
            格式        tail [参数] [文件] 
            -n          显示行数
            -f          循环读取
        wc          统计文本的行数,字数,字符数
            格式        wc [选项] 文件...
            -c          统计字节数
            -m          统计字符数
            -w          统计字数
            -l          统计行数
        diff        比较文本文件内容
            格式        diff [参数] [文件1或目录1] [文件2或目录2]
        grep        查找指定字符串
            格式        grep [选项] 文件
            --color     关键字加亮
            -n          显示匹配行及 行号。
            -i          不区分大小写
            -r          递归搜索
            -l          只列出匹配的文件名
            -An         同时显示匹配行的前n行
            -Bn         同时显示匹配行的后n行
            -Cn         同时显示匹配行的前后n行
            -mn         匹配到n个后就停止
            -o          只打印匹配的内容,如正则的匹配项
            -w          查找一个单词
            -E          运用正则表达式
            支持正则    如果不使用-E,则{ ( ? + |需要加转义
            --include       仅查找指定规则的文件, --include=*.txt
            --exclude-dir   排除目录, --exclude-dir={.git,.svn}
            --exclude       排除文件, --exclude=*.{java,js}
        echo        写内容,一个>覆盖,两个>追加 echo "aaa" > book
        vi          编辑文本文件
                    x 保存当前文件并退出 
                    q! 不保存文件并退出vi
        nl          输出的文件内容自动加上行号
            格式        nl [选项] 文件
            -b          指定行号指定的方式,主要有两种:-b a表示空行也显示行号 -b t不显示
            -w          行号栏位的占用的位数
    系统
        date        显示/设置日期
            格式        date [参数] [格式]
            -s          根据字符串来设置日期/时间
            示例
            显示日期    date
            设置日期    date -s 2016-03-01
            设置时间    date -s 15:13:00
            设置日期时间date -s "2016-03-01 15:13:00"
        cal         显示日历 
            格式        cal [参数] [月份] [年份]
        ifconfig    网卡网络配置详解
            格式        ifconfig [网络设备] [参数]
        netstat     显示网络状态信息
            格式        netstat [参数]
            -a          显示所有连接和监听端口
            -t          仅显示tcp相关选项
            -u          仅显示udp相关选项
            -n          拒绝显示别名,能显示数字的全部转化成数字
            -p          显示建立相关链接的程序名
        ping        测试网络的连通性
            格式        ping [参数] [主机名或IP地址]
        top         显示当前系统中耗费资源最多程序
            格式        top [参数]
        ps          显示当前运行进程的瞬间状态
            格式        ps [参数]
            -A,-e       显示所有进程
            -f          显示详细信息
        lsof
            格式        lsof [参数] [文件]
            -i          列出占用此端口的进程
        kill        关闭进程
            格式        kill [参数] [进程号]
            -l          查询信号信息
            -s          发送指定信号(默认为15,15代表关闭,9代表强制关闭)
        free        显示当前内存和交换空间的使用情况
            格式        free [参数]
            -m          以mb为单位显示
        history     查看命令历史
        clear       清屏
        shutdown    系统关机
            -r          关机后立即重启
            -h          关机后不重新启动
        halt        关机后关闭电源
        reboot      重新启动
    压缩
        tar             打包/解包文件或目录(将文件夹打包为一个文件)
            格式            tar [参数] [文件] 
            -c              创建一个压缩文件
            -x              解压一个压缩文件
            -z              同时使用gzip压缩
            -j              同时使用bzip2压缩
            -v              压缩的过程中显示文件名称
            -f              指定压缩文件名称
            -C              指定解包的指定目录
                            tar指定要压缩的文件夹不建议使用绝对路径,会报错,需要手动使用P参数
        gzip            压缩文件或目录,自动删除源文件(后缀为gz)
            格式            gzip [参数] [要压缩的文件/目录]
            -c              保留原有文件
            -r              递归处理
            -n              n表示速度,1-9,速度越慢压缩率越高
        gunzip          解压gzip压缩的文件
            格式            gunzip [参数] [压缩文件名称]
        bzip2           压缩文件或目录,自动删除源文件(后缀为bz2)
            格式            bzip2 [参数] [要压缩的文件/目录] 
            -b              表示是解压缩 , 等价的有bunzip2命令
        bunzip2         解压bzip2压缩的文件
            格式            bunzip2 [参数] [压缩文件名称] 
        zip             对于window下zip文件的相关压缩/解压命令
            格式            zip [参数] [文件名称] [要压缩的文件/目录] 
            -r              递归处理
            -m              将文件压缩之后,删除源文件
            -v              压缩的过程中显示文件名称
        unzip
            格式            zip [参数] [压缩文件名称]
            -o              解压后覆盖原有文件
            -d              解压到指定目录
            -v              压缩的过程中显示文件名称
        注意:
            gzip和bzip2命令压缩或解压缩默认自动删除源文件



快捷键
    tab         自动补全命令
    ctrl + c    停止当前进程
    ctrl + r    查找命令历史
    ctrl + l    清屏



vim编辑器
    工作模式
        一般模式
        插入模式
        底行模式
    工作模式转换
        一般模式-->插入模式 i,a,o
        插入模式-->一般模式 esc键
        一般模式-->底行模式 :
        底行模式-->一般模式 命令输入完成
        进入文本编辑器默认为一般模式
        退出文本编辑器 :wq
    一般模式快捷键
        i       进入插入模式,在当前光标前插入
        a       进入插入模式,在当前光标后插入(光标自动后移一位)
        o       进入插入模式,在当前光标后并另起一行插入
        I       进入插入模式,在当前行的行首插入
        A       进入插入模式,在当前行的行尾插入
        O       进入插入模式,在当前行的上一行另起一行插入
        G       跳到文件最后一行
        g+g     跳到文件第一行
        x       删除当前光标下的字符
        nx      删除当前光标后的n个字符
        d+d     删除当前行
        d+G     删除当前行到最后一行的所有内容
        D       删除光标所在处到行尾的内容
        n+d+d   删除n行(实际是剪切)
        r       替换光标处所在的字符
        R       进入替换模式,按esc结束
        v       进入可视字符模式
        V       进入可视行模式
        ctrl+v  进入可视块模式
        u       撤销
        ctrl+r  重做
        y+y     复制
        n+y+y   复制n行
        p       粘贴
        Z+Z     保存退出
    底行模式命令
        q!          不保存退出
        wq          保存退出
        set nu      显示行号
        set nonum   取消行号
        n           定位到n行
        n1,n2d      删除[n1,n2]的所有行


Linux管道
    格式: 命令1 | 命令2   将一个命令的标准输出作为另一个命令的标准输入。
    例:grep -r "close" /home/* | more       在home目录下所有文件中查找,包括close的文件,并分页输出。



权限管理
    三种基本权限
        r       读权限
        w       写权限
        x       执行权限
    ls -l显示的前几位的信息
        例: -rwxrw-r--
        第1位:      文件类型(d目录, -普通文件, |链接文件)
        第2-4位:    所属用户权限(u)
        第5-7位:    所属组权限(g)
        第8-10位:   其它用户权限(o)
        第2-10位:   全部权限(a)
    十进制表示权限
        r=4,w=2,x=1
        rwx = 7
        r-x = 5
        rwxrw-r-- = 764



防火墙
    service iptables status     查看防火墙状态
    service iptables stop       关闭防火墙(重新启动会再次开启)
    service iptables start      开启防火墙
    chkconfig iptables --list   查看防火墙的运行级状态
    chkconfig iptables off      将防火墙的所有运行级状态设置为关闭



rpm软件包管理
    概述
        类似windows里面的 "添加/删除程序"
        可安装rpm类型的安装包
        只有在某些分支的linux内核支持: ReadHat,CentOS,SUSE
    命令格式
        rpm 参数 rpm文件
    常用参数
        i       安装应用程序
        e       卸载应用程序
        vn      显示安装进度
        U       升级安装包
        qa      显示所有已安装的软件包



ssh
    远程登录
        ssh 远程地址
    远程执行命令
        ssh 远程地址 命令
    ssh设置免密码登录
        A登录B需要设置免密码登录
        先在A生成ssh密钥
            ssh-keygen -t res
            会在A的 ~/.ssh中生成两个文件: id_rsa和id_rsa.pub
        将id_rsa.pub交给B(在A输入命令)
            ssh-copy-id 远程地址
            会在B的 ~/.ssh中生成authorized_keys文件
    复制文件
        scp 本地文件路径 用户名@ip:远程路径


sed命令
    sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作
    常用选项:
        -n∶使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN的资料一般都会被列出到萤幕上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。
        -e∶直接在指令列模式上进行 sed 的动作编辑;
        -f∶直接将 sed 的动作写在一个档案内, -f filename 则可以执行 filename 内的sed 动作;
        -r∶sed 的动作支援的是延伸型正规表示法的语法。(预设是基础正规表示法语法)
        -i∶直接修改读取的档案内容,而不是由萤幕输出。       
    常用命令:
        a   ∶新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
        c   ∶取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
        d   ∶删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
        i   ∶插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
        p  ∶列印,亦即将某个选择的资料印出。通常 p 会与参数 sed -n 一起运作~
        s  ∶取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!
        {}      在定位行执行的命令组,用分号隔开 sed -n '/07:44/{=;p}' a.log 
        =       显示行号
    举例:(假设我们有一文件名为ab)
        显示某行
         sed -n '1p' ab             #显示第一行 
         sed -n '$p' ab             #显示最后一行
         sed -n '1,2p' ab           #显示第一行到第二行
         sed -n '2,$p' ab           #显示第二行到最后一行
        使用模式进行查询
         sed -n '/ruby/p' ab        #查询包括关键字ruby所在所有行
         sed -n '/\$/p' ab          #查询包括关键字$所在所有行,使用反斜线\屏蔽特殊含义
         sed -n '/a/,/b/p' ab       #查询第一个包含a的行 到 第一个包含b的行 的中间的所有行(如果没有包含a的行,则一行不打印,如果没有包含b的行,则打印到完)
        替换指定字符串
         sed -i s/nmd_wt/nmd49_wt/g `grep nmd_wt -rl --include="*.conf" .`  将后缀为conf中的nmd_wt字符串替换为nmd49_wt
    注意:
        也可以和nl命令一起使用打印行号, 如 nl 文件名 | sed -n '/a/p'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值