多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[TOC] # 查看目录 || 文件 ## 目录切换: ~~~ > cd 目录名字 #切换到哪个目录 > cd / #切换到根目录 > cd .. #向上级目录切换 > cd ~ #快速切换回自己的家目录 ~~~ ## 查看目录下的文件信息: ~~~ > ls #list查看当前目录下有什么文件 > ls -l 或ll #list -list通过详细内容形式查看目录下的文件内容 > ls 目录 #查看指定目录下文件名字信息 > ls -l 目录 #以详细列表形式查看指定目录下文件名字信息 > ls -a #slist all查看全部文件,包括隐藏文件 > ls -al //list list all以详细列表形式查看全部文件,包括隐藏 文件: > ls -i //查看目录下文件名字的索引号码(id号) > ls -h //人性化显示(显示文件大小) > ls -d //查看目录属性 ~~~ # 操作目录 ||文件 * cat #查看文件内容 ` > cat filename(需要操作的文件名) #在终端显示文件全部内容` > -n 显示的时候带行号(空行也编号) > -b 显示的时候带行号(空行不编号) ~~~ # 和grep一起使用 > cat -n log.xml | grep -C 5 'subscribe' #查找log.xml文件中,有subscribe关键词的行,并显示其上下5行 grep的参数: -C上下5行; -B前5行; -A后5行 ~~~ * more filename #通过"敲回车"方式从第一行逐行查看文件内容;不支持回看;q键 退出查看 * less filename #"上下左右"键方式查看文件各个部分内容;支持回看,q键 退出 * head -n filename #查看文件“前n行”内容 * tail -n filename #查看文件“末尾n行”内容 > -f 当文件增长时,输出后续添加的数据; * head -5路径/文件名 #查看前5行 * tail #查看后5行 > 不加参数 列出尾行 > -n 指定行数 > -f 动态查看数据写入 * locate #也是查找文件,效率上会比find快一点 * find 路径 -type f -name文件名 #查找文件‘文件名*’ #模糊查找 1. name 根据文件名字查找指定的文件 find 目录 -name 完整文件名称 ~~~ > find / -name passwd[完整名称] #"递归遍历"系统全部目录查找名字等于passwd的文件 > find /etc -name passwd[完整名称] #递归遍历/etc及内部所有目录查找 名字等于passwd的文件 > find 目录 -name "an*"[部分名称] #模糊查找文件名字以an开始的 ~~~ 2. 对查找的目录层次进行限制 > -maxdepth #限制查找的最"深"层次 > -mindepth #限制查找的最"浅"层次 > find / -name passwd -mindepth 3 -maxdepth 4 //在3到4个层次的目录里边定位passwd文件 3. 根据文件大小进行查找 > - size 单位 > find ./目录路径 -size 50c //在当前目录下查找大小[等于]50个字节的文件 单位: 数量 单位 实际大小 100 -------> 512字节:【100*512字节】 50c -------> 字节 : 【50字节】 50k -------> 千字节: 【50*1024字节】 50m -------> 兆字节 【50*1024*1024字节】 > find ./ -size +50c #在当前目录下查找大小[大于]50个字节的文件 > find ./ -size -50c #在当前目录下查找大小[小于]50个字节的文件 4. 查找10天前修改的文件(源慕课4-3,12分开始,17分) 5. 搜索文件(效率比find高,比find搜的快)源自慕课4-1(视频上的系统是6.3) > find 文件名 #他在/var/lib/mlocate后台数据库(默认每天更新1次)中搜索,所以新建的他搜索不到。 > updatedb #强制更新数据库后就可以搜索到了 * grep '要查找的内容' 要查找的文件名(绝对或相对路径) #【查行】支持正则 > -v //取反 > -E //能使用扩展正则表达式 ~~~ > grep -Ev '^#|^$' nginx.conf //去掉配置文件中,以#开头的,和空行。用cat -A就能看出来空行是$ > grep 'sbin' /etc/passwd //在passwd文件中查找sbin字样,会把sbin所在行的内容都输出 ~~~ 和find的区别:find是查找文件在哪里,grep是查找文件中的xx些内容。此查找不是在vim编辑器中查找vim查找内容用的是/和? 6、awk '{print $1}' 文件名 //【查列】输出第1列的数据。英文单引,支持正则。 -F '分隔符' //默认的分隔符是空,以什么分隔符进行列和列的切分,英文单引 7、sed -i 's#no#yes#g' 要替换的文件名 //【增改删】不使用vim的替换(不打开文件情况下的替换),支持正则。 >[warning]注意:和vim的替换差不多,vim中是:%s#no#yes#g //将整个文档的no替换成yes >[info] 总结:awk、grep、sed三剑客,都支持正则 6、wc 文件名 //统计 -c #统计字节数 -w #统计单词数 -l #统计行数 > grep '80.82.70.187' /var/log/nginx.access.log | awk '{print $1}' | wc -l //先取行,在取列,最后统计。统计80.82.70.187有多少个 7、du -h //查看文件或目录的大小以k m的形式查看文件占据磁盘空间大小 8、df -h //磁盘的使用情况 # 对文件/目录的【增删改】 1、mkdir 目录名//【增】新建-p递归新建 2、touch 文件名//【增】新建 3、mv 原目录路径 新目录路径//【改】移动(目录文件均可操作) 4、rename //修改文件名 5、cp 源目录路径 新目录路径//【改】复制(目录文件均可操作)-r是给目录用的,递归复制 6、rm -rf //【删】递归删除目录和文件 7、unlink //【删】文件名;只能删除文件 8、echo 内容 >路径文件名//【改】覆盖追加2个>>换行追加(不覆盖),内容复杂的话,用引号引起来,单词用空格间隔 9、diff 文件a 文件b //对俩个文件进行对比,输出的是a和b文件不一样的地方 安装和解压 1、yum install 软件包名-y #安装软件包 yum search 软件包不精确的名字 //在yum中查找软件包 yum list installed //yum中已安装的包 2、rpm 傻瓜式下一步安装软件 4、zip压缩和解压 范例: zip命令可以用来将文件压缩成为常用的zip格式。unzip命令则用来解压缩zip文件。 4.1、 我想把一个文件abc.txt和一个目录dir1压缩成为yasuo.zip: # zip -r yasuo.zip abc.txt dir1 4.2、我下载了一个yasuo.zip文件,想解压缩: ` > unzip yasuo.zip`