Ubuntu查⽂件的⽅法
1. whereis+⽂件名
⽤于程序名的搜索,搜索结果只限于⼆进制⽂件(参数-b)、man说明⽂件(参数-m)和源代码⽂件(参数-s),如果省略参数,则返回所有信息。
2. find / -name +⽂件名
find是在指定的⽬录下遍历查,如果⽬录使⽤ / 则表⽰在所有⽬录下查,find⽅式查⽂件消耗资源⽐较⼤,速度也慢⼀点。
3. locate+⽂件名
linux会把系统内所有的⽂件都记录在⼀个数据库⽂件中,使⽤locate+⽂件名的⽅法会在linux系统维护的这个数据库中去查⽬标,相⽐find命令去遍历磁盘查的⽅式,效率会⾼很多,⽐较推荐使⽤这种⽅法。
但有⼀个问题是数据库⽂件不是实时更新的,⼀般会每周更新⼀次,所以使⽤locate命令查到的结果不⼀定是准确的。当然可以在使⽤locate之前通过 updatedb 命令更新⼀次数据库,保证结果的性。
4. which+可执⾏⽂件名
which的作⽤是在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第⼀个搜索结果。
使⽤which命令,就可以看到某个系统命令是否存在,以及执⾏的到底是哪⼀个位置的命令。
which指令会在环境变量$PATH设置的⽬录⾥查符合条件的⽂件,所以基本的功能是寻可执⾏⽂件。
Linux查⽂件内容的常⽤命令⽅法。
从⽂件内容查匹配指定字符串的⾏:
grep"被查的字符串"⽂件名例⼦:在当前⽬录⾥第⼀级⽂件夹中寻包含指定字符串的.in⽂件grep"thermcontact"∗/∗.in从⽂件内容查与正则表达式匹配的⾏:grep –e “正则表达式” ⽂件名
查时不区分⼤⼩写:
grep –i "被查的字符串" ⽂件名查匹配的⾏数:grep -c "被查的字符串" ⽂件名
从⽂件内容查不匹配指定字符串的⾏:
$ grep –v "被查的字符串" ⽂件名
从根⽬录开始查所有扩展名为.log的⽂本⽂件,并出包含”ERROR”的⾏
正则匹配文件名find / -type f -name "*.log" | xargs grep "ERROR"
例⼦:从当前⽬录开始查所有扩展名为.in的⽂本⽂件,并出包含”thermcontact”的⾏
find . -name "*.in" | xargs grep "thermcontact"
Loading [MathJax]/jax/element/mml/optable/GeneralPunctuation.js
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论