玩转Linux系统04--文件管道和主机信任搭建
一、文件内容搜索
格式: grep 内容 文件路径
1.常见grep参数
-i 忽略字符大小写的差别。
--color=auto : 颜色自动提示,将grep设置为默认颜色提示,其实就是可以给grep指令器别名
-n : 显示内容出现的行号
-l : 显示内容出现的文件名
-c : 显示出现该内容的次数
【例】编辑一个1.txt文件,输入一部分文字
[root@localhost ~]# vi 1.txt #进入编辑内容
[root@localhost ~]# grep 关羽 1.txt
关羽
关羽是著名的三国大将,桃园三结义、过五关斩六将
[root@localhost ~]# grep 关羽 1.txt --color=auto 关羽 #此时显示的关羽是彩色的
关羽是著名的三国大将,桃园三结义、过五关斩六将
2.设置自动颜色提示
vi ~/.bashrc
source ~/.bashrc
(1)[root@localhost ~]# vi ~/.bashrc #进入编辑模式添加一句 alias grep='grep --color=auto' #在里面添加一句这个代码
(2)[root@localhost ~]# ~/.bashrc #调用一下这个文件
(3)[root@localhost ~]# grep 是 4.txt #重新搜索,可以显示搜索到的‘是’变颜色
。。。。。
3.也可以写正则
grep -p
grep -e 两种均可【例】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.txtgrep 王者荣耀 *.txtgrep 王者荣耀 ~/.txtgrep -P '1[3-9]\d{9}' 3.txt
二、管道
格式 指令1 | 指令2
指令1的输出作为指令2的输入,指令2的输出显示到屏幕中
1.常用的管道指令
[root@localhost ~]# ls -l /etc | less #翻页查找
[root@localhost ~]# ls -l /etc | head #查看前十行
[root@localhost ~]# ls -l /etc | head -10 | tail -5
#查看前十行中后五行内容和grep结合使用ls -l /etc | grep 找的内容
2.进程相关指令===ps +管道
#查看进程中ssh的
[root@localhost ~]# ps -ef | grep ssh
root 1168 1 0 17:16 ? 00:00:00 /usr/sbin/sshd
root 1668 1168 0 17:22 ? 00:00:01 sshd: root@pts/0
root 2118 1672 1 18:45 pts/0 00:00:00 grep ssh
三、搭建主机信任
搭建主机信任就是实现免密登录
1.公钥和私钥
密码学的内容,加密-解密,这里引入一个知识:秘钥
加密--解密秘钥相同====对称加解密加密--解密秘钥不相同====非对称解密
一对密钥:公钥和私钥
公钥:给你们,你们拿的都是公钥私钥:我自己拥有
公钥加密—私钥解密,私钥加密—公钥解密
2.linux1登录linux2,实现免密码登录
(1)在linux1上生成公钥和私钥
ssh-keygen
指令,然后一路敲Enter键就可以,不需要输入
[root@localhost ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
a6:6a:c1:00:0e:a2:72:26:bd:a7:bb:00:50:a9:bc:81
root@localhost.localdomain
The key's randomart image is:
+--[ RSA 2048]----+
| .. |
|+.. |
|O+ |
|E+= |
|o+o+ S |
|... + o |
|. o .. |
| .. .. |
| o+. |
+-----------------+
(2)来到生成秘钥的文件中
id_rsa : 私钥
id_rsa.pub : 公钥
[root@localhost ~]# ls -a
. .. 1.txt 2.txt anaconda-ks.cfg .bash_logout
.bash_profile .bashrc .cshrc install.log install.log.syslog
.ssh .tcshrc
[root@localhost ~]# cd .ssh
[root@localhost .ssh]# ls
id_rsa id_rsa.pub
(3)查看公钥内容,并鼠标手动复制
[root@localhost .ssh]# cat id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEArqZ8hDb97kcgRX0hRNI+
BUrzFPBE11Y6IzomMwaDkadYbyZ6u1q2z0iUTBzo1BMSuaC/F8Qd2Wm3/
+b/FBbx/EmpVl0y0nBHL29zofKvudPcrhNuqLTA2SA7LPan4dWcODb6OV
dEjo2zP76e9nOsi/YOJvNjzjdYLA/HsMm4ERY5mGWJUiJpG+vXf0NZX35
ygglPwzseF4B90Ffhhb1lZc1HT4HIp+K/cDqHUPRtpHEVrgoWAbuLJcNvJ
GPOLTTu8fI8vefsZvmRGbYKY4h4fXLrU4NpAQ== root@localhost.lo
caldomain
(4)来到linux2中 vi ~/.ssh/authorized_keys
将公钥粘贴进来即可这样在通过linux1登录linux2的时候就实现了免密码登录
[root@localhost .ssh]# vi authorized_keys
#进入编辑模式,将公钥粘贴进来
注意:文件名字是固定格式,不能随意改,必须这个名字authorized_keys
四、SCP
1,什么是scp
scp:基于ssh的cp,cp是实现本机之间来回拷贝,scp在两台linux之间进行拷贝
2.scp的用法
(1)linux和linux之间
scp 源路径 目标路径
scp 1.txt root@ip地址:路径
如果发送文件夹,需要添加 -r 选项
linux和linux之间使用scp进行互发,如果搭建了主机信任,不用输入密码
(2)windows和linux之间(类似于xftp软件)
用软件 winscp,实现windows和linux之间使用scp进行互发
安装,使用即可,左边:windows目录,右边:linux目录,相互拖动即可
五、重定向
标准输入(stdin, 键盘)、标准输出(stdout, 屏幕)
1.输出重定向:意思就是不输出到屏幕,输出到其他地方
ls -l > 1.txt > 作用:首先清空文件,然后写入文件
ls -l >> 1.txt >> 作用:追加内容
echo '你好' >> 1.txt 在1.txt文本中追加你好
2.错误重定向:指令有错,错误信息显示到哪里
s /lala > 1.txt 将lala文件夹错误信息显示到指定文件中
ls /lala >> 1.txt 将lala文件夹错误信息追加到指定文件中
六、挂载、磁盘相关命令
1.什么是挂载
注意,优盘只能被一个系统识别,插入优盘会选择,如果是虚拟机需要
如图:
2.步骤:
(1)(1)插上u盘
u盘只能让你的linux识别,如果是虚拟机,在虚拟机设置里面点击让虚拟机识别
(2)inux识别成功之后,通过指令查看你的设备 fdisk -l
/dev/sda 就是linux系统的硬盘设备如果有分区 /dev/sda1 /dev/sda2 xxx
(3)u盘设备往下走
/dev/sdb 就是你的u盘设备如果有分区 /dev/sdb1 /dev/sdb2
(4)挂载优盘
mount -t 需要挂载的设备 挂载点auto : 自动识别vfat : fat32ntfs-3g : ntfs格式 需要插件支持-o iocharset=utf8 如果有中文,可以指定字符集mount /dev/sdb1 /mnt/usb
3.取消挂载:不能在挂载的目录中取消挂载
umount /dev/sdb1 /mnt/usbumount /dev/sdb1umount /mnt/usb
注意:u盘中有中文,在挂在前先用下面指令读取,否则挂载时会乱码
如果取消挂载时显示设备正在忙,需要输入指令把使用的进程干掉,再取消挂载即可
fuser -m -k /mnt/usb
4、和磁盘相关的指令
df 显示当前可用的设备的使用情况
[root@localhost mnt]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root18G 671M 16G 5% /
tmpfs 491M 0 491M 0% /dev/shm
/dev/sda1 477M 28M 425M 7% /boot
du
当前目录的使用情况-h 人性化的方式显示大小
4.配置开机挂载
vi /etc/fstab进入编辑模式添加一行信息/dev/sdb1 /mnt/usb vfat defaults 0 0
七.软件硬链接
link,为了解决文件的共享问题,引入了链接机制,分为软连接和硬链接,以软连接使用居多
1.硬链接
ln 源文件 目标文件也可以使用link链接之后,目标文件和源文件内容相同,修改其中一个,另外一个也被修改在ll之后,可以看见硬链接个数,增加删除其中一个,另外一个不受影响可以理解为,给一个文件起了一个外号、别名 【注1】不能给目录创建【注2】创建完硬链接之后,你的用户名和组信息不变
2.软链接
ln -s 源文件 目标文件软链接创建之后,修改其中一个,另一个也修改【注1】可以给目录创建【注2】创建完之后,用户和组信息是创建时候的信息
3.软硬连接的不同之处
在linux里面,存放一个文件,由三部分组成,一个文件名,一个是文件索引(inode),一个是数据部分
如图:
八、压缩和解压缩(熟练)
在linux里面,常见压缩格式有两种,一种叫做gz,一种叫做bz2
1.gzip\ gunzip(后缀名是.gz)
格式: gzip 文件1 文件2 #压缩多个生成之后,源文件不在了,只有压缩文件,每一个都生成一个压缩文件gunzip 文件不能实现打包压缩,不能实现保留源文件
[root@localhost ~]# gzip 3.txt #压缩3.txt文件,但不保留原文件
[root@localhost ~]# ls
3.txt.gz
2.bzip2\bunzip2(后缀名是bz2)
bzip2 文件1 文件2 #每一个生成一个压缩文件-k : 保留源文件再压缩
bunzip2 压缩文件1 压缩文件2[root@localhost ~]# bzip2 -k 4.txt #-k 可保留原文件再压缩
[root@localhost ~]# ls
3.txt.gz 4.txt 4.txt.bz2
3.打包和打包压缩
tar(可以实现打包的功能,可以实现压缩和解压,)如果打包压缩使用的gzip压缩的,那么后缀名 .tar.gz .tgz如果打包压缩使用的bzip2压缩的,那么后缀名 .tar.bz2
常用的参数(组合使用时不分先后)
-z : 使用gzip压缩-j : 使用bzip2压缩-f : 打包压缩的时候指定压缩后的文件名-c : 打包文件-x : 解压缩使用的-v : 压缩和解压缩时候显示进度
打包使用gzip压缩:
打包使用gzip压缩:tar -zcvf 压缩后的名字.tar.gz 文件1 文件2 文件3使用gzip解压缩tar -zxvf 压缩包.tar.gz
打包使用bzip2压缩
打包使用bzip2压缩tar -jcvf 压缩后的名字.tar.bz2 文件1 文件2 文件3
使用bzip2解压缩tar -jxvf 压缩包.tar.bz2
九、软件安装之yum安装
红帽系列(centos、费德罗)软件安装使用 yum安装
大便系列(Ubuntu等)软件安装使用 apt-get安装
1.去哪下载软件呢?
yum源,这个源在哪呢?默认都有自己的源,但是这个源是在国外的。所以使用linux
经常将源设置为国内源,阿里源、清华源、搜狐源、网易源、中科大源,国外更新的
时候,国内会实时更新
2.配置源(以阿里源为例)
搜索阿里源https://opsx.alibaba.com
打开阿里源,点击帮助
(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.repohttp://mirrors.aliyun.com/repo/Centos-6.repo
(3)执行如果是本地,需要网络,吃饭的时候执行,晚上执行,热点执行yum clean allyum makecache
玩转Linux系统04--文件管道和主机信任搭建相关推荐
- 外网访问arm嵌入式linux_嵌入式Linux系统编程——文件读写访问、属性、描述符、API
Linux 的文件模型是从 Unix 的继承而来,所以 Linux 继承了 UNIX 本身的大部分特性,然后加以扩展,本章从 UNIX 系统接口来描述 Linux 系统结构的特性. 操作系统是通过一系 ...
- linux 文件操作 编程,Linux系统编程------------文件操作(基础)
一.文件操作 1.1 Linux文件系统结构 1.1.1 Linux常见系统目录 /bin : 存放普通系统可执行的命令(ls wc等) /sbin : 存放系统管理程序(fsck等) /b ...
- 4. linux调用文件计算阶乘前5项和_嵌入式Linux系统编程——文件读写访问、属性、描述符、API
Linux 的文件模型是从 Unix 的继承而来,所以 Linux 继承了 UNIX 本身的大部分特性,然后加以扩展,本章从 UNIX 系统接口来描述 Linux 系统结构的特性. 操作系统是通过一系 ...
- linux管道命令详解,Linux系统中的管道命令的用法详解
Linux系统中管道命令是linux系统的一个强大之处.下面由学习啦小编为大家整理了Linux系统中的管道命令的用法详解的相关知识,希望对大家有帮助! Linux系统中的管道命令的用法详解 管道命令操 ...
- linux有名管道数据异常,Linux系统编程—有名管道
▋****1. 管道的概念 管道,又名「无名管理」,或「匿名管道」,管道是一种非常基本,也是使用非常频繁的IPC方式. 1.1 管道本质 管道的本质也是一种文件,不过是伪文件,实际上是一块内核缓冲区, ...
- linux打开文件命令occ,Linux系统查看文件内容的命令有哪些?
Linux文件内容查阅,可以使用命令来实现.cat, tac, more,包括nl等命令都可以用来查阅文件内容,本文就通过举例的方式来介绍一下,Linux系统查看文件内容的命令有哪些. /messag ...
- linux 默认文件属性,linux系统下文件的默认权限以及隐藏属性的作用
[摘要] 操作系统(Operating System,简称OS)是管理计算机硬件与软件资源的计算机程序.操作系统需要处理如管理与配置内存.决定系统资源供需的优先次序.控制输入设备与输出设备.操作网络与 ...
- linux搜索关键字并定位,Linux系统中文件定位与查找(示例代码)
Linux系统中文件查找 关键词 文件查找 | find | locate 本文主要介绍有关文件查找的两个命令--find和locate,以及压缩打包的命令--compress, gzip,bzip2 ...
- linux 解压tar.jz,linux系统压缩文件和解压缩命令
linux系统压缩文件和解压缩命令 tar命令 解包:tar zxvf FileName.tar 打包:tar czvf FileName.tar DirName gz命令 解压1:gunzip Fi ...
最新文章
- postgresql 查询序列_时间序列数据库(TSDB)初识与选择
- php 如何实现表格行列的对齐,excel怎样把每列文字对齐
- Master、Slave等术语将不能在未来的Linux代码中使用
- iphone iPhone开源项目汇总(更新版)
- 通过git和Xcode将代码上传到GitHub
- SVN trunk branch tags 区别
- Android点击返回键销毁自己,Activity界面销毁 软键盘未收回
- 暴力推荐2:硬盘分区丢失之DiskGenius
- 可以在线测试血糖的软件,血糖也能自己测,糖护士荷智能血糖仪体验:测血糖就这么简单...
- Python爬虫爬取腾讯视频动漫专区的动漫及其描述
- MintUI(详见官方文档)
- 隔壁老王都知道的JavaScript+mysql+HTML+CSS的客户管理系统设计和实现【建议收藏,不然看着看着就不见了】
- 三菱Q系列plc11轴运动控制程序
- Ph0ne1x-100 解题思考
- 雲禾遗密:Web3js调用智能合约查看某账户ERC20代币数量
- 从懵懂无知到独挡一面——那些萌新程序员的进阶之路
- linux内核编程笔记【原创】
- 这可能是你见过的最全的SaaS行业分析
- 大学计算机在线作业答案,上海交通大学《计算机》在线作业二参考答案
- 德州INA139NA/3K 电流监控器IC 丝印N139
热门文章
- 探讨如何安全地保存重要数据
- google java c c++ python ruby_Ruby Python Java C C++ 数组使用方法对比
- 你幸福吗? 幸福西饼小程序来袭
- 浅谈数据库事务(transaction)
- 老婆变心了如何挽回老婆
- Wannafly挑战赛 23 B 游戏(SG函数运用)
- 宝塔面板查看默认入口和账号密码
- 如何查看GIM模型(免费浏览器)
- 第一次带团队,培养的团队骨干同事突然告诉我要离职
- 解决报错 Error in processing command line: Don‘t understand command line argument “-cl-no-subgroup-ifp“