文章导读:
linux命令行程序,如何定位到某行某列?
比如编辑某一配置文件.conf
举个例子
vi /etc/keepalived/keepalived.conf
然后按Esc 输入冒号(shift+;)然后输入数字(希望编辑的行数)然后回车
linux下有什么快速定位文件位置的软件
你可以在超级用户提示符 # 下面,使用 find 命令快速查找软件(或者各种文件)在哪一个子目录下面。使用方法如下:
#find / -name "*.c" -print cr
其中:/ 表示从根目录开始进行查找文件;*.c 表示需要查找的文件是 C 语言源程序(*.c);-print 表示将查找到的结果显示在屏幕上。
linux下用于文件定位的几个特殊用法是什么
文件定位?
如果在PATH路径中,可以使用which查找
进程文件定位,可以根据ps查看pid,根据pid在/proc查找文件位置
也可以通过find模糊查找
linux查找内容命令
find,用于在文件树中查找文件并作相应的处理
-name:按照文件名查找文件
-perm:按照文件权限查找文件
-user:按照文件属主来查找文件
-size:按照指定的文件大小查找文件【+n:大于,-n:小于,n:等于】
-group:按照文件所属的组来查找文件
-mtime-n+n:按照文件更改时间来查找文件,-n表示n天之内,+n表示n天以前
-newer file1 file2:查找更改时间在file1和file2之间的文件
例如:
find -mtime -2:查找48小时修改过的文件
find -name ".log":查找当前目录以".log"结尾的文件
find /opt/soft/test -perm 777:查找指定目录下权限为777的文件
find -type f -name "*.log":查找当前目录下以".log"结尾的普通文件
find -type d | sort:查找当前所有目标目录并排序
find /home/wansw -size +20M:查找大于20M的文件
locate指令,可以快速定位文件路径,利用事先建立的系统中的所有文件名称和路径的locate数据库,无需遍历整个文件系统,查询速度较快,为了保证查询准确性,需要定期更新。《Linux就该这么学》
updatedb:第一次运行前,创建locate数据库
grep,用于过滤/搜索指定字符串。可以使用正则表达式,能配合多种命令使用。
用法:grep 【选项】 查找内容 源文件
-A:显示符合的行及之后的内容
-B:显示符合的行及之前的内容
-C:显示符合的行及前后的内容
-c:计算符合的行数目
-n:显示匹配行和行号
-i:忽略大小写
规则表达式
:'grep'表示匹配所有以grep开头的行
'表示匹配所有以grep结尾的行
.:'gr.p'表示匹配'gr'后面接任意字符然后是'p'
:'grep'表示匹配一个或多个空格后紧跟grep的行
[]:[Gg]rep表示匹配Grep与grep
[]:[A-FH-Z]rep表示匹配不以A-F、H-Z开头并紧跟rep的行
例如(grep命令大多数时候多要和别的命令一起使用才有意义):
ps -ef | grep -c SVN:查找指定的进程的个数
cat test.txt | grep -f test2.txt:从text2.txt中读取关键字后在test.txt中搜索
cat test.txt | grep nf text2.txt:从text2.txt中读取关键字后在text.txt中搜索并显示行号
grep 'linux' text.txt test2.txt:从多个文件中搜索关键字'linux'
cat test.txt | grep -E 'ed|at':显示包含ed或at的行
的进程的个数cat test.txt | grep -f test2.txt:从text2.txt中读取关键字后在test.txt中搜索cat test.txt | grep nf text2.txt:从text2.txt中读取关键字