美文网首页
2018-08-30 day14 Linux命令3

2018-08-30 day14 Linux命令3

作者: Kris_Shin | 来源:发表于2018-08-30 19:18 被阅读0次

    1、文件内容搜索

    • grep 内容 文件路径

    • 参数:

    • -i :忽略大小写

    • --color=auto : 颜色自动提示,将grep设置为默认颜色提示,其实就是可以给grep指令器别名

      • vi ~/.bashrc
      • 添加一句 alias grep='grep --color=auto'
      • source ~/.bashrc
    • -n : 显示内容出现的行号

    • -l : 显示内容出现的文件名

    • -c : 显示出现该内容的次数

    • 也可以写正则表达式, 注意使用 -P

      13838384380
      \d{11}
      ^1\d{10}    3456789
      ^1[3-9]\d{9}
      
      test@qq.com   duduxixi@163.com  lalahehe@sina.cn
      \w+@\w+\.(com|cn|net)
      
    • grep 王者荣耀 1.txt

    • grep 王者荣耀 *.txt

    • grep 王者荣耀 ~/.txt

    • grep -P '1[3-9]\d{9}' 3.txt

    2、管道

    • 格式: 指令1 | 指令2
    • 指令1的输出作为指令2的输入,指令2的输出显示到屏幕中
    • 常用的管道指令有:
      ls -l /etc | less
      ls -l /etc | head -5
      ls -l /etc | tail -5
      ls -l /etc | head -10 | tail -5
      ls -l /etc | grep 找的内容
      
    • 查看进程相关
      ps -ef | grep ssh
      

    3、搭建主机信任

    • 密码学的内容,加密-解密,用到一个东西 秘钥
    • 加密-解密秘钥相同-对称加解密
    • 加密-解密秘钥不相同-非对称加解密
    • 一对儿秘钥:公钥和私钥
    • 公钥:给你们,你们拿的都是公钥
    • 私钥:我自己拥有,
    • 公钥加密-私钥解密,私钥加密-公钥解密
    • 实现免密码登录,linux1登录linux2,实现免密码登录
    • (1)在linux1上,生成公钥和私钥
      • ssh-keygen 一路敲enter即可
    • (2)来到生成秘钥的文件中
      • id_rsa : 私钥
      • id_rsa.pub : 公钥
    • (3)复制公钥
    • (4)来到linux2中
      • vi ~/.ssh/authorized_keys
      • 将公钥粘贴进来即可
    • 这样在通过linux1登录linux2的时候就实现了免密码登录

    4、重定向

    • 标准输入(stdin, 键盘)、标准输出(stdout, 屏幕)

    • 输出重定向:意思就是不输出到屏幕,输出到其他地方

    • ls -l > 1.txt >作用:首先清空文件,然后写入文件

    • ls -l >> 1.txt >>作用:追加内容

    • 错误重定向:指令有错,错误信息显示到哪里

    • ls /lala 2> 1.txt 将错误信息显示到指定文件中

    • ls /lala 2>> 1.txt 将错误信息追加到指定文件中

    5、挂载、磁盘相关指令

    • 挂载:神马意思?看图形
    • 将u盘和目录对应的过程就是挂载
    • (1)插上u盘
      • u盘只能让你的linux识别,如果是虚拟机,在虚拟机设置里面点击让虚拟机识别,
    • (2)linux识别成功之后,通过指令查看你的设备
      • fdisk -l

      • /dev/sda 就是linux系统的硬盘设备

      • 如果有分区 /dev/sda1 /dev/sda2 xxx

      • u盘设备往下走

      • /dev/sdb 就是你的u盘设备

      • 如果有分区 /dev/sdb1 /dev/sdb2

      • 挂载u盘

      • mount -t 需要挂载的设备 挂载点

        auto : 自动识别
        vfat : fat32
        ntfs-3g : ntfs格式   需要插件支持
        
      • -o iocharset=utf8 如果有中文,可以指定字符集

      • mount /dev/sdb1 /mnt/usb

      • 取消挂载,不能再挂载的目录中取消挂载

      umount /dev/sdb1 /mnt/usb
      umount /dev/sdb1
      umount /mnt/usb
      
      • 如果取消挂载时候显示该设备正在忙,需要输入指令把使用的进程给干掉,再取消挂载即可
      • fuser -m -k /mnt/usb
    • 和磁盘相关的指令
    • df
      • 显示当前可用的设备的使用情况
      • -h 人性化的显示大小
    • du
      • 当前目录的使用情况
      • -h 人性化的方式显示大小
    挂载.png
    • 配置开机挂载
    • vi /etc/fstab
    • 添加一行信息
    • /dev/sdb1 /mnt/usb vfat defaults 0 0

    6、scp

    • scp:基于ssh的cp,cp是实现本机之间来回拷贝,scp在两台linux之间进行拷贝
    • scp的用法:
      • scp 源路径 目标路径
      • scp 1.txt root@ip地址:路径
      • 如果发送文件夹,需要添加 -r 选项
    • linux和linux之间使用scp进行互发,如果搭建了主机信任,不用输入密码
    • winscp,实现windows和linux之间使用scp进行互发
      • 安装,使用即可,左边:windows目录,右边:linux目录,相互拖动即可

    7、软硬链接

    • link,为了解决文件的共享问题,引入了链接机制。分为软链接和硬链接,以软链接使用居多
    • 硬链接
      • ln 源文件 目标文件
      • 也可以使用link
      • 链接之后,目标文件和源文件内容相同,修改其中一个,另外一个也被修改
      • 在ll之后,可以看见硬链接个数,增加
      • 删除其中一个,另外一个不受影响
      • 可以理解为,给一个文件起了一个外号、别名
      • 【注1】不能给目录创建
      • 【注2】创建完硬链接之后,你的用户名和组信息不变
    • 软链接
      • ln -s 源文件 目标文件
      • 软链接创建之后,修改其中一个,另一个也修改
      • 【注1】可以给目录创建
      • 【注2】创建完之后,用户和组信息是创建时候的信息
    • 软硬链接的不同之处
      • 在linux里面,存放一个文件,由三部分组成,一个文件名,一个是文件索引(inode),一个是数据部分
      • 见百鸟朝凤图


        软硬链接.png

    8、压缩和解压(很常用)

    • 在linux里面,常见压缩格式有两种,一种叫做gz,一种叫做bz2

    • gzip\gunzip(后缀名是.gz)

      • gzip 文件1 文件2
      • 生成之后,源文件不在了,只有压缩文件,每一个都生成一个压缩文件
      • gunzip 文件
      • 不能实现打包压缩,不能实现保留源文件
    • bzip2\bunzip2(后缀名是.bz2)

      • bzip2 文件1 文件2
      • 每一个生成一个压缩文件
      • -k : 保留源文件
      • bunzip2 压缩文件1 压缩文件2
    • tar(可以实现压缩和解压,可以实现打包的功能)

      • 如果打包压缩使用的gzip压缩的,那么后缀名 .tar.gz .tgz
      • 如果打包压缩使用的bzip2压缩的,那么后缀名 .tar.bz2
      • 常用的参数有:
      • -z : 使用gzip压缩
      • -j : 使用bzip2压缩
      • -f : 打包压缩的时候指定压缩后的文件名
      • -c : 打包文件
      • -x : 解压缩使用的
      • -v : 压缩和解压缩时候显示进度
    • 打包使用gzip压缩:

      • tar -zcvf 压缩后的名字.tar.gz 文件1 文件2 文件3
    • 使用gzip解压缩

      • tar -zxvf 压缩包.tar.gz
    • 打包使用bzip2压缩

      • tar -jcvf 压缩后的名字.tar.bz2 文件1 文件2 文件3
    • 使用bzip2解压缩

      • tar -jxvf 压缩包.tar.bz2

    9、软件安装之yum安装

    • 红帽系列软件安装使用 yum安装
    • 大便系列软件安装使用 apt-get安装
    • 去哪下载软件呢?yum源,这个源在哪呢?默认都有自己的源,但是这个源是在国外的。所以使用linux经常将源设置为国内源,阿里源、清华源、搜狐源、网易源、中科大源
    • 如何配置为国内源?
    • 打开阿里源,点击帮助
    • (1)mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
    • (2)下载对应的源配置文件
    • wget是一个专业的下载软件,但是需要安装
    • wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
    • 或者
    • curl是自带的,不用安装
    • curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
    • (3)执行
      • 如果是本地,需要网络,吃饭的时候执行,晚上执行,热点执行
      yum clean all
      yum make cache
      

    相关文章

      网友评论

          本文标题:2018-08-30 day14 Linux命令3

          本文链接:https://www.haomeiwen.com/subject/ifidwftx.html