Linux中的文件查找:
Linux中查找一共主要使用到两个命令
Locate 基于文件数据查找,在数据库生成之后新建的文件将无法找到。
Find 从文件目录中实时查找。
Locate 选项文件名
-i忽略大小写
-n只显示前n行
使用updatedb生成数据库
此命令用于非实时查找所以使用不是很广泛
Find 起始路径查找规则(限制条件)
查找规则
-i不区分大小写
-user按照属主名字查找
-group按照属组名查找
-uid按照uid查找文件
-gid按照gid查找文件
以上两种使用情况:删除用户,但未删除用户所属的文件,此时文件的属主为原属主的UID。所以进行UID匹配删除。
按照时间属性查找
-atime[+/-]days 按访问时间查找,+days 表示某某天之外访问过的文件,-days表示某某天之内访问过的文件
-mtime [+/-]days 按照修改时间查找
-ctime[+/-] days 按照属性修改时间查找
-amin[+/-]minutes 以分钟为单位,按照访问时间查找
-mmin[+/-] minutes 以分钟为单位,按照修改时间查找
-cmin[+/-]minutes以分钟为单位,按照属性修改时间查找
按照文件的属性查找
-type
f普通文件
d目录文件
l链接文件
c字符文件
b块文件
p管道文件
s套接字文件
-nouser查找到没有用户的文件
-nogroup 查找到没有组的文件
查找后的动作
-ls显示查找到内容的详细信息
-ok提示并执行后跟的命令
-ok命令 {} (大括号指代查找到得文件)(空格)\;
-exec不提示直接执行后接的命令
-exec命令{}(空格) \;
使用xargs同样可以实现OK和exec的作用:
Find/-name aa |xargscat
Find用法举例
删除0字节文件
Find –type f –size 0 –execrm {} \ ;
find -name ‘.svn’ |xargs rm –rf
find –name ‘.svn’ –exec rm {} \;
网络客户端指令
elinks 基于文本查看网页
links
-dump 以纯文本的形式查看
-source 以源代码的形式查看
Wget 非交互式网络下载
Wget资源链接
--tries重试次数
-r递归下载
Ssh
1、基于口令的验证:客户端向服务器发出登录请求,服务器向客户端返回服务端公钥,客户端通过此公钥加密后将登陆口令发送给服务器,服务器收到后并用对应的秘钥解密;口令正确后建立连接。但此种验证容易出现“中间人”攻击,即可能会有别的主机冒充真正的服务器。
2、基于秘钥的验证:客户端生成一对密钥,并将公钥放置在服务器上,客户端要登录服务器就向服务器发送用自己公钥加密的请求,服务器查找到用户公钥,并与请求的公钥相比较,匹配则回执用客户端公钥加密的“质询”challenge,客户端收到“质询”用密钥解密,再将内容发送给服务器,内容与发送内容匹配就建立连接。
1、密钥生成
ssh-keygen –t rsa
生成rsa类型的一堆密钥保存在用户家目录下~/.ssh/id_rsa(密钥)
~/.ssh/id_rsa.pub(公钥)
将生成的公钥复制到目的主机
法一:ssh-copy-id –i ~/.ssh/id_rsa.pub root@目标IP
此时会提示用户输入用户名对应的密码,然后命令会自动将公钥内容复制到目的主机
~/.ssh/authorized_key2文件中,以文本形式存在
法二:手动复制添加公钥:
复制 ~/.ssh/id_rsa.pub到目的主机
执行 cat id_rsa.pub >>~/.ssh/authorized_keys2
2、在ssh上海支持scp远程拷贝功能
3、用法:scp root@192.168.0.155:/root/id_rsa.pub从远程主机向本地拷贝文件
4、Scp ./文件root@192.168.0.155:/root从本地向远程主机复制文件
Linux访问ftp服务器
ftp服务器ip地址
下载命令:
get文件名
mget多个文件名
ps:现在本地的下载地址默认是当前路径
上传命令:
put文件名
mput文件名
使用!pwd查看当前主机的路径
!+ 命令可对本机执行命令
lcd 切换本地目录
lftp服务器ip地址
lftp是ftp的加强版,他在ftp所支持命令的基础上,支持tab命令补全,支持整目录下载等功能。
整目录下载
Mirror
断点续传下载工具
Lftpget 文件名
网络状态的查看
Natstat选项
-t已经建立的tcp链接
-u 已建立的udp链接
-l显示监听的接口
-n以数字方式显示解析信息
-p 监听服务的提供进程
-r查看本机路由表