Linux 一

基本概念
    windows思想:一切皆图形
    linux思想:一切皆文件,多用户,多任务,兼容posix标准
    GNU:要求开源的一个带头公司
    运维的职责:1.网站数据不能丢。2.网站7*24小时运行。3.提升用户体验-访问的快。
    运维人员的原则:简单,易用,高效。
    衡量服务器的大小:1U(U表示服务器的厚度)1U=4.45cm
    服务器分机架式服务器,刀片式服务器,塔式服务器
    计算机组成原理:CPU风扇,CPU,电源,硬盘
    计算机工作原理:输入设备(键盘)--内存,CPU,外存(硬盘)--输出设备
    去IOE运动。
    UPS---不间断电源。
    CPU和磁盘之间的缓冲设备,是临时存储器,断电数据丢失。
    程序代码文件,静态的,存储在磁盘中----运行起来叫进程------一直运行的程序叫守护进程。
    高并发写入:同一时间段,非常多的用户访问网站并下单。
    写入数据到内存里,这个数据的内存空间称为缓冲区(buffer)
    从内存中读取数据,这个数据的内存空间称为缓存区(cache)
    磁盘就是永久存放数据的存储器,磁盘上也有缓存的(芯片)
    什么是操作系统?操作系统是人与计算机硬件交互的中介软件。简称OS。
    操作系统的组成:系统核心,命令解释器shell,外围应用程序。
    Linux是一个操作系统软件,是一套开放源代码的,并可以自由传播的类Uinx操作系统软件。
    
分区方法一:--通用的但是不能保护好重要的数据    
    /boot 200M 存放系统的引导信息 内核
    swap 交换分区 防止内存用光了 临时的一个内存
    如果内存小于8G swap是内存的1.5倍 如果内存大于8G swap给8G
    / 根分区 剩余多少给多少
    相当于只有一个C盘
    
分区方法二:有重要的数据时候
    /boot 200M 存放系统的引导信息 内核
    swap 交换分区 防止内存用光了 临时的一个内存
    如果内存小于8G swap是内存的1.5倍 如果内存大于8G swap给8G
    / 根分区 20-200G
    /data 存放重要的数据 剩余多少给多少

分区方法---你不知道数据是否重要
    /boot  200M    存放系统的引导信息 内核
    swap   交换分区   防止内存用光了 临时的一个内存  
    如果你的内存小于8G swap是内存的1.5倍   如果你的内存大于8G swap给8G 
    /       根分区            20G-200G 
    剩余空间不分 放着谁使用这台服务器谁来分区    

通过软件链接服务器
        xshell
拍摄快照
    尽量把虚拟机关机或挂机

    
远程连接的软件 --- Xshell/SeureCRT/putty
一台机器上的不同服务功能,就是通过端口区分的,然后让外部人员访问。
远程服务链接(ssh)====>> 端口号22
linux目录一切从根开始
左Linux右Windows
cmd---osk屏幕键盘
total -- 表示文件占的大小
显示当前的目录:pwd
touch---一次可创建多个文件,如果文件不存在创建文件,如果文件存在修改时间戳。
到屏幕是输入,到文件夹是输出。
ctr c --- 终止当前的操作
ctrl l --- 清屏
tab --- 自动补全
esc .  使用上一个命令的最后参数

链接排错的过程
    ping 10.0.0.200 --- 查看有没有通路
    telbet 10.0.0.200 22 --- 查看端口22 有没有开启
命令的格式
    命令 【参数选项】 【文件或路径】
查看内核版本:
    uname -r 

mkdir
    创建目录 mkdir /data    ==make directory
    创建多层目录 mkdir -p /data    ==make directory
    显示创建多层目录的过程 mkdir -pv /data    ==make directory
    
ls
    查看目录的内容 ls /data/ 
    查看根目录 ls /    ==list 
    查看详细目录 ls -l /data/  同 ll
    
相对路径和绝对路径
    绝对路径:从根开始的路径,以/开头
    相对路径:当前的路径,开头没有/

特殊符号
    进入到某一个目录:cd /tmp/
    >> 把文字追加到文件的末尾
    cd .. 进入当前上一级目录
    cd ../../../
    . 当前目录
    $() 先运行括号内
    
在文件中输入内容的方式
    1.vi---记事本
        1.用vi编辑工具打开文件,插入模式:vi
        2.进入编辑模式:i
        3.退出编辑:esc
        4.保存并退出 --- :wq  --- write quite
        5.强制只退出不保存: :q!
        6:查看内容:cat /root/oldboy.txt

    2.vim--- word,Vim  i  esc  :wq  :q!
    3.echo --- 可以把内容显示到屏幕。。。。标准输出
        echo 'xxx'>>/root/oldboy.txt 把内容反射到文件末尾
        >> 或 1>> 标准追加输出重定性
        > 或 1>   先清空原文件内容,然后标准追加输出重定性
        2> 先清空原文件内容,然后错误追加输出重定性,把错误的信息放到文件中
        2>> 错误追加输出重定性,把错误的信息放到文件中
        echo 'ddddd' 2>>/root/oldboy.txt >>/data/oldboy.txt
        echo 'ddddd' >>/root/oldboy.txt 2>&1
        重定向时,如果指向的文件不存在时会先创建文件然后追加内容。

    4.cat >>/root/oldboy.txt <<EOF...内容....EOF

输入重定向
    xargs  -n2 </root/oldboy.txt  将文件内容显示成两列,本质不会改变内容。
    0<或< 输入重定向 ,如果有内容则清空
    0<< 或 <<追加到文件的底部
    xargs 分组 
    -n2 分成两组
    
向一个文件中放入多行
    cat >>/root/oldboy.txt <<EOF  EOF标志结束

cp 复制,主要用来复制文件或目录,不能直接复制目录,需要配合使用
    cp /root/oldboy.txt /tmp/
    cp r /root/ /tmp/ 
    cp 需要和-r配合使用来复制目录,又叫递归复制
    -p 复制文件同时保持文件的属性不丢失。
    -a 相当于-pdr

操作前备份,操作后检查
    cp /root/oldboy.txt /root/oldboy.txt.bak
    cp 主要用来备份文件
    
mv 移动
    mv /tmp/ /root/

rm 删除,默认不能删除目录
    rm oldboy.txt 
    rm -f 强制删除,就不会出现提示
    rm -r 递归删除目录
    删除最好不要用绝对路径,否则容易不小心删掉目录
    rm -rf 强制删除目录
    
find 找文件--- find 找的位置 找的类型 找的名字 名字要加双引号
    find 可以看到当前目录结构
    find /root/ -type f -name "oldboy.txt" ---f 表示文件 
    f---文件  d---目录
    找出以什么结尾的文件:find /root/ -type f -name "*.txt'"
    * --- 表示所有    
    | --- 
    find找到的东西通过|传递给后面的命令处理
        find /root/ -type f -name "*.txt'" | xargs ls -l
    find /root/ -type f -name "*.txt'" -exec ls -l {} \;
        find /root/ -type f -name "*.txt'" -exec sed 's#oldboy#oldgirl#g' ls -l {} \;
    
    
Linux三剑客---处理文本 文字
    grep --- 过滤,在文件中找东西
        过滤,找出 grep 过滤的内容 /data/test.txt
        排除 grep -v 过滤的内容 /data/test.txt
    head和tail
        取前两行 head -n2 /data/test.txt 或 head -2 /data/test.txt 
        取最后两行 tail -n2 /data/test.txt 或 tail -2 /data/test.txt 
        head 和 tail 默认取十行
    sed
        删除/.. / 内的内容 sed '/oldboy/' /data/test.txt 
        删除第3行 sed '3d' /data/test.txt 
        删除第1到3行 sed '1,3d' /data/test.txt 
        sed /.. /  删除
    awk
        取反 awk '!/oldboy/' /data/test.txt 
    sed 和 awk 的内容需要放在//内
    
    head -30 test.txt | tail -10 先取前30行再取后10 行
    sed -n '20p' test.txt 显示第二十行 -n---取消默认输出,默认会全显示
    sed -n '20,30p' test.txt  显示第二十行当到第三十行
    awk 'NR==20,NR==30' test.txt 从第二十行开始到第三十行结束,NR --- 行号
    grep -A10 '20' test.txt 找到第二十行,并显示接下来的十行,常用于带排号的查找。
    sed 老二,擅长取某一行
    awk 老大,擅长取某一列

which 命令符 --- 找到命令的位置,显示命令的绝对路径
    which cp --- 命令的位置
    which mkdir 和 ls -l /bin/mkdir 把这两个合在一起如下
    ls -l $(which mkdir)

复制时直接覆盖,无提示两种方法
    1.\cp /root/oldboy.txt /tmp/ --- 复制时直接覆盖,无提示
    2.which cp --- 找到cp的绝对路径是/bin/cp
      /bin/cp /root/oldboy.txt /tmp/ --- 复制时直接覆盖,无提示

alias --- 查看系统里别名,设置别名
    给命令创建别名提示,如何让系统显示do not use rm 
        echo do not use rm
        alias rm='echo do not use rm' 注意等号左右两边无空格,=右边必须是命令
        检查 alias
    如何让配置的别名永久生效---写到一个文件中
        ls -l /etc/profile
        vim /etc/profile
        ##
        alias rm='echo do not use rm'
        source /etc/profile ---source 让配置的别名生效

rm,cp,mv配置别名后重启链接会失效,解决的方法?
    修改 /root/.bashrc
    # alias rm='rm -i' # 加上注释即可
    alias cp='cp -i'
    alias mv='mv -i'
别名的作用是给危险的命令做警告

seq 10 会显示从1到10
    seq 10 >>/data/test.txt 

vi vim 的快捷键    
    shift G 快速到达文件的最后一行
    o 在当前行下一行创建一个新行,并进入编辑模式

sed 's#找谁#替换成谁#g' test.txt
    sed 's#oldboy#oldgirl#g' test.txt
    sed -i 's#oldboy#oldgirl#g' test.txt
    先找到文件,然后修改,-i 会直接修改内容,甚用
        find /root/data/ -type f -name '*.bak'|xargs sed 's#oldgirl#xxxxx#g'

$() 先运行里面的命令,把结果留下来 == `` 反引号
    sed 's#oldgirl#xxxxx#g' $(find /root/data/ -type f -name '*.bak')
    
xargs 和 |xargs的区别
        | 传递字符串,文本,文字,文字符号
        |xargs 将字符串,文本,文字,文字符号变成了文件名
        sed -i 's#oldboy#oldgirl#g /data/test.txt  -i对文件内容进行修改
        sed -i 必须加上文件的名字否则报错
        
ifup 启动某一块网卡
    ifup eth0
ifdown 关闭某一块网卡
    ifdown eth0

ifconfig 查询ip地址
查看系统什么版本?
    cat /etc/redhat-release
查看内核版本号?
    uname -r 
查看多少位系统
    uname -m 
显示系统信息
    man uname

超级管理员(root):root默认在Linux操作系统中拥有最高的管理权限
创建普通的用户:
    useradd oldboy  添加用户
    passwd oldboy  设置密码
切换用
    whoami --- 查看当前用户是谁
    su -- oldboy --- 切换到oldboy用户     switch user
退回用户
    ctrl d 退的多了会断开连接
    su -- root 
快速给用户设置密码
    echo 123456 |passwd --stdin oldboy  --stdin从管道前面获取密码

变量
    PS1   必须大写 PS1='[\u@\h\W]\$'  加个\t 会显示时间
    $PS1  查看变量内容
    PS1='[\u@\h\W\t]\$' 做修改   给变量赋值内容
    环境变量 往前加 export PSI='xxxx'

【Y】关闭SELinux功能
    永久关闭
        操作前备份
        cat /etc/selinux cat,cp,sed -i, .bak
        cat /etc/selinux/config --- 看该目录下内容,找目标
        sed 's#SELINUX=enforcing#SELINUX=disabled#g' cat /etc/selinux/config
        SELinux---sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' cat /etc/selinux/config
        看内容也可以用grep --- grep '=disabled' /etc/selinux/config 加个=会更精确
        重启后才会生效
    临时关闭SELinux
        setenforce [ Enforcing ] | Permissive | 1 | 0 ]
        0 表示Permissive --- 即表示SELinux关闭,会给出警报,但不会影响
        1 表示Enforcing --- 即表示SELinux开启 
        临时生效
sed -i.xxx sed 命令后 -i. 加内容表示会先备份再修改,只针对一个
在生产环境下Linux机器是不能随意重启。

【Y】关闭iptables 防火墙
在企业环境中,一般只有配置外网IP的Linux服务器需要开启防火墙,即使是有外网IP,对于高并发
流量的业务仍不能开,因为会有较大的性能损失,导致网站访问很慢,这样的情况下只能在前端加
更好的硬件防火墙。
关闭防火墙iptables
    临时的
        /etc/init.d/iptables stop 一般关两次 同 service iptables stop (start是开启)
        /etc/init.d/iptables status 查看状态关了没
        /etc/init.d/iptables  显示防火墙的状态有哪些
管理开机自启动的项目chkconfig
    彻底的关闭,开机不会启动
    chkconfig --- 查看
    chkconfig |grep ipt --- 查看iptables状态
    chkconfig iptables off  
解决乱码问题
    查看修改 系统当前的字符集
        export LANG=en_US.utf-8 --- 修改字符集
        echo $LANG --- 查看字符集
    
    系统字符集配置文件的位置
        cat /etc/sysconfig/i18n
    临时让系统显示中文
        export LANG=zh_CN.utf8
    永久 让系统显示中文
        cp /etc/sysconfig/i18n /etc/sysconfig/i18n.bak
        echo 'LANG=zh_CN.utf8' > /etc/sysconfig/i18n
        source /etc/sysconfig/i18n --- 让字符集的配置文件生效
        mv /etc/sysconfig/i18n.bak /etc/sysconfig/i18n mv还可以改名字,本质也是搬过来覆盖。
    
linux的目录结构,一切从根开始,是一个有层次的树状结构,每个目录都可以挂不同的
设备(磁盘)上,如果设备被访问就需要一个入口,这个入口就是挂载点,挂载点实质就是目录。
挂载光盘。一个目录只能挂在一个磁盘。
    mount /dev/cdrom/ /mnt/  挂载
    df -h --- 查看磁盘的使用情况  --h == --human - readable
    umount /mnt 卸载 ,卸载时在别的目录卸载
    ls -lh
    ls -ld --- 查看目录本身
yum install tree  下载
根下常见的目录
    bin 放命令的目录
    boot 放系统引导程序+【系统内核】
    dev device设备,光盘,硬盘
    etc 存放的系统的配置文件
    home 普通用户的家目录
    lib libary 库 库文件
    lib64 lib64 系统是64位 库文件,只有64位系统有这个目录
    lost+found 磁盘或系统文件损坏,临时文件的位置
    mnt 临时的挂载点,默认是空的
    opt option第三方软件安装处
    proc 虚拟目录目录里面是内存的信息(内核 进程 软件)
    root root用户的家目录
    sbin 只有root用户可以用的命令,可以改系统的命令
    sys 虚拟目录 跟proc类似
    tmp 存放的临时文件
    usr 存放用户的程序
    var 经常变换的文件,系统日志
    selinux selinux及他的配置文件存放的位置

/etc/sysconfig/network-scripts/ifcfg-eth0  查看eth0   eth0---网卡
NETMASK=255.255.255.0 子网掩码是用来看局域网里最多可以有多少台机器
DNS把baidu.com变成了百度服务器IP,DNS就是域名和IP的解析工具。
ping + 域名 可以查到域名的IP,这个功能是DNS实现的

重启一块网卡
    ifdown eth0 && ifup eth0  
重启所有的网卡
    /etc/init.d/network restart
DNS的设置
    linux客户端DNS可以在网卡配置文件里设置(ifcfg-eth0)
    linux客户端DNS也可以在/etc/resolv.conf里设置
    网卡里的设置DNS优先于/etc/resolv.conf,如果重
        启网络网卡的dns会覆盖/etc/resolv.conf的设置。
etc文件        
    /etc/hosts  --- IP与名字(网址 主机)对应关系
    设定用户IP与名字(域名)的对应关系,使用名字就相当于使用了这个ip地址
    /etc/sysconfig/network 
    可以修改主机名,修改方式如下
    hostname 查看主机名 同 cat /etc/sysconfig/network
    hostname oldboy36-nb  --- 临时修改主机名
    hostname  再次查看
    sed 's#oldboy36#s#oldboy36-nb#g' /etc/sysconfig/network
    hostname ---检查
    sed 's#oldboy36#s#oldboy36-nb#g' /etc/sysconfig/network
    cat /etc/sysconfig/network  永久生效
    
    /etc/fstab  --- 实现开机要挂载的文件系统的一个列表
    fstab 一旦配置错误,系统将无法启动
    /etc/rc.local 文件中放着开机需要启动的命令或脚本,
    
    用于存放开机自启动程序命令的文件。脚本就是命令的集合。
    /etc/inittab --- 系统的运行级别的配置文件。以下6个级别。
    0-关机 6-重启 1-单用户模式 2-多用户模式,无NFS 
    3-多用户模式,命令模式,文本模式,命令行模式(工作中默认)
    4-还未使用,待开发  5-图形界面模式
    cat /etc/inittab ---查看运行级别
    
    /etc/init.d --- 放的软件的管理命令的目录。
    /etc/profile --- 系统全局环境变量永久生效的配置文件,定义别名及PATH变量等
    /etc/bashrc --- 放别名,函数,但是工作中别名放profile中。
head /etc/profile --- 默认取前十行,查看系统文件,来知道文件时干什么的
head -4 /etc/profile --- 取前4行
head -4 /etc/profile /etc/bashrc--- 也可以取多个文件
以.开头的文件一般都是隐藏的,查看隐藏的文件用 ls -la ~  波浪线表示当前用户
user文件
    /usr/local    相当于windows中program Filex(x86) --- 及软件默认安装的目录, Linux中编译安装默认安装处。
Linux中的安装软件的方法
    1.yum install 包名  --- yum安装
    2.rpm -ivh 包名.rpm
    3.        ./configure --- make --- make install ---  /usr/src  ---编译安装
var文件    
    /var 日志文件
    /var/log  各种系统日志存放地
    /var/log/messages  系统信息默认日志文件,
    ll /var/log/messages* --- 查看系统信息默认日志文件,
        系统会每周在固定时间把日志切割下及系统日志的轮询。
    /var/log/secure --- 记录的用户的登录信息
    /var/spool/cron/  定时任务文件

/proc/ 文件
    /proc/cpuinfo --- 关于处理器的信息
        cat /proc/cpuinfo 
    /proc/meminfo --- 系统的内存信息
    /proc/loadavg --- 系统负载平均值信息
    /proc/mounts --- 设备的挂在信息
uptime --- 查看系统的负载信息及运行时间
w --- 也可以查看系统的负载信息及运行时间,同时显示谁登录了系统,干了什么事情

什么是PATH环境变量,它有什么作用?
    PATH里面放的是Linux中命令的路径。 echo $PATH, 找命令就去PATH下面来找。
验证是否可以上网
    ping www.baidu.com 验证是否可以上网
    ping 223.5.5.5 ping百度不通,ping外网IP地址通了,说明DNS配置有问题
        解决问题方法 
        cat >>/etc/sysconfig/network-scripts/ifcfg-eth0 <<EOF
        DNS1=223.5.5.5
        DNS2=223.6.6.6
        EOF
        /etc/init.d/network restart
        
tree
    tree -d 只显示目录
    tree -d /oldboy/
    tree -d -L 1 /oldboy/    -d表示只显示目录,-L显示几层 1表示1层
    find -maxdepth 1 -type d 找当前目录下的一层
    find -maxdepth 1 -type d -name '.text'  以.text结尾
    find -maxdepth 1 -type d !-name '.'  !非 -maxdepth 最大深度,find命令最多在基层目录中查找。
    ls -l|grep '^d' 找到以什么开头    ^目前只能在三剑客中用。
    ls -l|sed -n '/^d/p'  找到以什么开头
    ls -l|awk '/^d/'   找到以什么开头
    ls -F|grep '/'  通过ls给不同的文件加上不同的标记
    ls 默认查看一层
-l 显示详细的信息
-d ls会把目录当作文件来处理
-a 显示所有文件包含隐藏文件
-F 给不同的文件加上不同的标记
-t 按时间排序显示 
-r让最新的在最下面,倒序排列
-mtime 根据修改时间找文件
-f 显示文件的实时更新 同 tailf

正则表达式
    1.  ^ 以什么开头
cd
    cd -  表示快速进入上一次所在位置。
    cd . 进入当前目录
    cd .. 进入当前上一级目录
    cd ~ 当前目录的家目录  同 cd
把最新的文件显示在下面
    ls -lrt    -t 按时间排序显示 r让最新的在最下面,倒序排列
数据模拟命令
    mkdir -p /app/logs
    cd    /app/logs 
    for time in {01..20};do date -s '201705$time'; touch access_www_$(date +%F).log ;done
    date -s '20170520'   --- 直接复制粘贴用,固定格式
查找以前的log
    find /app/logs/ -type f -name '*.log'
    find /app/logs/ -type f -name '*.log' -mtime 7 第七天的
    find /app/logs/ -type f -name '*.log' -mtime +7 七天以前
    find /app/logs/ -type f -name '*.log' -mtime +7 -exec ls -l {} \; 显示七天以前
        {}表示将内容放到{}内, \;  表示结束
    find /app/logs/ -type f -name '*.log' -mtime +7|xargs ls -l   显示七天以前信息
    ls -l $(find /app/logs/ -type f -name '*.log' -mtime +7)  显示七天以前信息
tail -f /var/logsecure 查看文件的实时更新 同 tailf
echo {1..5} 同 echo {a..f} 显示1到5行
echo stu{1..5} 同 echo stu{a..f} 显示1到5行,并在序号前随便加东西
echo stu{1..5}|xargs -n1 >/oldboy/nginx.conf 
    同 echo stu{a..f}|xargs -n1 >/oldboy/nginx.conf 以列显示
cat/tac
    cat -n nginx.conf  显示行号 
vi/vim
    :set nu 在vi中显示行号    :set nonu 取消不显示行号
grep 
    grep -n 'stu1' nginx.conf 根据内容显示内容并显示行号
    grep -n '.' nginx.conf 显示任意字符并显示行号
sed
    sed '=' nginx.conf 显示行号 
    sed '=' nginx.conf |xargs -n2 显示行号 ,以两列形式
awk
    awk '{print NR,$0}' nginx.conf $0表示这一行内容 awk中NR表示行号  print 表示显示
nl nginx.conf nl专门给文件显示行号,不常用
chkconfig 管理开机自启动的
    --level 指定级别
    chkconfig |grep ipt 查看运行级别状态    
    chkconfig --level 3 iptables on  将3开启
    chkconfig iptables off  永久关闭
        chkconfig |grep ipt 检查
    /etc/init.d/iptables stop 
        /etc/init.d/iptables status 检查
    
打包压缩
    tar zcvf /tmp/etc.tar.gz /etc/ 给etc目录打包压缩 同 tar zcf /tmp/etc.tar.gz /etc/
        z 压缩工具 ---gzip
        c 创建 ---create
        v 解压过程 --- view
        f 指定压缩包的名字
    tar ztf /tmp/etc.tar.gz --- 查看压缩包 同 tar tf /tmp/etc.tar.gz
        t 显示 ---list
    默认解压到当前目录
        cd /tmp/
        pwd
        tar xf /tmp/etc.tar.gz 同 tar zxvf /tmp/etc.tar.gz
    tar命令在使用绝对路径打包时候会把绝对路径变换成相对路径
    tar zcf /tmp/etc.tar.gz /etc/ --exclude=sss 打包压缩/tmp整个目录,并排除/tmp/sss文件,
    tar zcf /tmp/etc.tar.gz /etc/ --exclude=sss/xx 打包压缩排除多个
    tar zcf /tmp/etc.tar.gz /etc/ --exclude-from=xx.text 打包压缩排除并写入到某个文件中
    tar xf /tmp/etc.tar.gz -C /opt 解压到指定目录下

sed 's#i am ##g' /oldboy/oldboy.txt|sed 's#,myqq is##g' 只显示部分内容
awk
awk '{print $2}' /oldboy/oldboy.txt 显示第二列,根据空格区分列
    awk '{print $2,$5}' /oldboy/oldboy.txt 显示第二列和第5列,默认根据空格区分列
        $2 第几列
    awk '{print $2,$5}' /oldboy/oldboy.txt|sed 's#,myqq is##g'  只显示部分内容
    awk -F ',' '{print $2}' /oldboy/oldboy.txt 以逗号作为分割符
    awk -F '[, .]'    '{print $2}' /oldboy/oldboy.txt 以逗号,空格,点 为分割符
    cut -d ' ' -f1/oldboy/oldboy.txt 第一列
    cut -d ' ' -f1,2,3/oldboy/oldboy.txt 第1,2,3列
    cut -d ' ' -f1-5/oldboy/oldboy.txt 1到5列
        -d 指定分隔符,cut命令没有默认分隔符, -f指定第几列

wc ---查看文件有多少行  world count 
    wc -l /etc/services 统计这个文件有多少行
查看sshd服务,进程,是否存在    
ps -ef 正在运行的进程 ---process
ps -ef|grep 'sshd' 查找名字为sshd的进程 
ps -ef|grep 'sshd'|wc -l 查找名字为sshd的进程 ,同时显示多少行
egrep 同 grep -E    

简单分区方案
    / 不要低于10G
    /home 相当于我的文档
    swap 交换空间,一般是内存的1.5倍,必须要有,否则内存满会宕机。
Linux系统线上分区方案
    /boot 系统引导分区 建以100-200M
    swap 交换分区
    / 根分区 40-100G (log不要在这放)
    剩下空间不分
数据盘和系统盘要分开
service network restart
    重启服务
以.开头的是隐层文件
ls -a 查看隐层文件
header 看开头
tail 看尾巴
more 可以按空格一页一页的看,不可以往前看
less 可以按空格一页一页的看ctrl F,往前ctrl b往后
poweroff 关机
reboot 重启
history 查看历史记录
CTRL d 退出终端
CTRL a 光标移动到最前
ctrl e 光标移动最后
ctrl u 把光标前都删掉
ctrl k 把光标后都删掉
ctrl r 查询之前输过的
date 查看系统时间 
history -c 清除历史
配置静态IP
    BOOTPROTO=static
    IPADDR=192.168.1.100
创建目录 mkdir --- 默认创建一个目录 mkdir -p 可以创建多个
创建文件夹 touch 
tail -n2 查看后2行
tail -f 追加查看
cat -n 查看文件所有内容
echo 输出,默认会有换行
echo -n 输出,不换行
ls -a 查看目录下所有的文件
ls -l 查看文件的详细信息
ls -S -h1 查看最大的文件
echo * 打印出当前目录下所有的文件,不匹配隐层文件。
alias 起别名
unalias 删除自定义的别名
man 查看命令手册
help 查看系统的内键命令
useradd
userdel
su 切换到root用户
su dev 切换到dev用户cd~
su - dev 
gizp 文件名 压缩文件
gizp -d 文件名 解压文件
file 文件名 查看文件类型
tar -cf 包名 要打包的文件 打包 
tar -tf 包名 查看包
tar -zcf 包名 打包和压缩

 

posted @ 2018-05-27 11:07  liang哥哥  阅读(170)  评论(0)    收藏  举报