①..列出文件清单命令:ls
ls命令能够列出当前目录下的所有内容.ls 命令的执行方式为:
# ls [-选项] [文件名或者目录名]
进入到Linux命令行中后,我们至少要知道当前所处的位置有哪些内容,这些信息就可以使用ls命令来获得.
在Linux中,ls命令是最常使用的命令之一,因为在命令行下要随时查看目录内容.如果不加任何选项的话,ls命令仅列出当前目录下的文件和目录名,例如,想要查看/etc目录下的内容,可以使用下列命令:
# ls /etc
如果想要列出当前目录下所有文件,则可以使用下列命令:
# ls -a
功能:在标准输出上显示文件.
语法:cat [-vTEuAte] 文件
例子: cat example.txt
功能:在终端屏幕按屏显示文本文件.
语法: more [-pcdls] 文件
例子: more example.c
more -dc example.c
more -c -10 example.c
less命令的功能几乎和more命令一样,也是用来按页显示文件,不同之处在于less命令在显示文件时允许用户既
可以向前又可以向后翻阅文件.
功能:显示指定文件的前若干行.缺省设置为显示10行
语法:head [-n] 文件
例子: head example.c
功能:显示指定文件的末尾若干行.缺省设置为显示10行
语法:tail [+ / - num ] [参数] 文件
+num 从第num行以后开始显示.- num 从距文件尾num行处开始显示.
例子: tail example.c
功能:
这组命令以指定模式搜索文件,并通知用户在什么文件中搜索到与指定的模式匹配的字符串,并打印出所有包含该字符串的文本行,在该文本行的最前面是该行所在的文件名.grep命令一次只能搜索一个指定的模式;egrep命令检索扩展的正则表达式(包括表达式组和可选项);fgrep命令检索固定字符串,它不识别正则表达式,是快速搜索命令.
语法:
例子: grep "text file" example
grep data *
grep goto *.c
find命令可将档案系统内符合 expression 的档案列出来.你可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来.
find 根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression.还有指DOS 命令 find,Excel 函数 find等.
扩展资料:
linux的其他类似find命令详解:grep
用于查找文件中符合字符串的那行.
e.g. grep -nr "network_ssl" ./ [查找当前文件夹下所有文件内容,列出包含有 network_ssl该字串的行,并显示行号]
参数说明: -a :将 binary 文件以 text 文件的方式搜寻数据
-c :计算找到 '搜寻字符串' 的次数
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行!
可以使用find命令.例如:find test . 就是在当前目录下查找test文件
find详细描述:命令用来在指定目录下查找文件.任何位于参数之前的字符串都将被视为欲查找的目录名.如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件.并且将查找到的子目录和文件全部进行显示.
语法:find(选项)(参数)
选项:
-amin分钟:查找在指定时间曾被存取过的文件或目录,单位以分钟计算;?-anewer参考文件或目录:查找其存取时间较指定文件或目录的存取时间更接近现在的文件或目录;?
-cnewer参考文件或目录查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录;?
-depth:从指定目录下最深层的子目录开始查找;?
-expty:寻找文件大小为0?Byte的文件,或目录下没有任何子目录或文件的空目录;?-exec执行指令:假设find指令的回传值为True,就执行该指令;?
-false:将find指令的回传值皆设为False;?
-fls列表文件:此参数的效果和指定"-ls"参数类似,但会把结果保存为指定的列表文件;?
-follow:排除符号连接;?
-fprint列表文件:此参数的效果和指定"-print"参数类似,但会把结果保存成指定的列表文件;?
-fprint0列表文件:此参数的效果和指定"-print0"参数类似,但会把结果保存成指定的列表文件;?
-fprintf列表文件输出格式:此参数的效果和指定"-printf"参数类似,但会把结果保存成指定的列表文件;?
-fstype文件系统类型:只寻找该文件系统类型下的文件或目录;?-gid群组识别码:查找符合指定之群组识别码的文件或目录;?
-group群组名称:查找符合指定之群组名称的文件或目录;?
-help或——help:在线帮助;
-ilname范本样式:此参数的效果和指定"-lname"参数类似,但忽略字符大小写的差别;?
-iname范本样式:此参数的效果和指定"-name"参数类似,但忽略字符大小写的差别;?-inum:查找符合指定的inode编号的文件或目录;?-ipath范本样式:此参数的效果和指定"-path"参数类似,但忽略字符大小写的差别;?-iregex范本样式:此参数的效果和指定"-regexe"参数类似,但忽略字符大小写的差别;?
-links连接数目:查找符合指定的硬连接数目的文件或目录;?
-iname范本样式:指定字符串作为寻找符号连接的范本样式;?
-ls:假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出;?
-maxdepth目录层级:设置最大目录层级;?
-mindepth目录层级:设置最小目录层级;?
-mmin分钟:查找在指定时间曾被更改过的文件或目录,单位以分钟计算;?
-mount:此参数的效果和指定"-xdev"相同;?
-name范本样式:指定字符串作为寻找文件或目录的范本样式;?
-newer参考文件或目录:查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录;?
-nogroup:找出不属于本地主机群组识别码的文件或目录;?
-noleaf:不去考虑目录至少需拥有两个硬连接存在;?
-nouser:找出不属于本地主机用户识别码的文件或目录;?
-ok执行指令:此参数的效果和指定"-exec"类似,但在执行指令之前会先询问用户,若回答"y"或"Y",则放弃执行命令;?
-path范本样式:指定字符串作为寻找目录的范本样式;?
-perm权限数值:查找符合指定的权限数值的文件或目录;?
-print:假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出.格式为每列一个名称,每个名称前皆有"./"字符串;?
-print0:假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出.格式为全部的名称皆在同一行;?
-printf输出格式:假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出.格式可以自行指定;?
-prune:不寻找字符串作为寻找文件或目录的范本样式;?
-regex范本样式:指定字符串作为寻找文件或目录的范本样式;?
-size文件大小:查找符合指定的文件大小的文件;?
-true:将find指令的回传值皆设为True;?
-typ文件类型:只寻找符合指定的文件类型的文件;?
-uid用户识别码:查找符合指定的用户识别码的文件或目录;?
-used日数:查找文件或目录被更改之后在指定时间曾被存取过的文件或目录,单位以日计算;?
-user拥有者名称:查找符和指定的拥有者名称的文件或目录;?
-version或——version:显示版本信息;?
-xdev:将范围局限在先行的文件系统中;?
-xtype文件类型:此参数的效果和指定"-type"参数类似,差别在于它针对符号连接检查.
参数:起始目录:查找文件的起始目录.
linux grep命令
①作用
Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户.
grep [options]
[options]主要参数:
-c:只输出匹配行的计数.
-I:不区分大 小写(只适用于单字符).
-h:查询多文件时不显示文件名.
-l:查询多文件时只输出包含匹配字符的文件名.
-n:显示匹配行及 行号.
-s:不显示不存在或无匹配文本的错误信息.
-v:显示不包含匹配文本的所有行.
pattern正则表达式主要参数:
\: 忽略正则表达式中特殊字符的原有含义.
^:匹配正则表达式的开始行.
$: 匹配正则表达式的结束行.
\:从匹配正则表达 式的行开始.
\:到匹配正则表达式的行结束.
[ ]:单个字符,如[A]即A符合要求 .
[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 .
.:所有的单个字符.
* :有字符,长度可以为0.
$ grep 'test' d*
显示所有以d开头的文件中包含 test的行.
$ grep 'test' aa bb cc
显示在aa,bb,cc文件中匹配test的行.
$ grep 'w\(es\)t.*\1+ aa
如果west被匹配,则es就被存储到内存中,并标记为1,然后搜索任意个字符(.*),这些字符后面紧跟着 另外一个es(\1),找到就显示该行.如果用egrep或grep -E,就不用"\"号进行转义,直接写成'w(es)t.*\1+就可以了.
假设您正在'/usr/src/Linux/Doc'目录下搜索带字符 串'magic'的文件:
$ grep magic /usr/src/Linux/Doc/*
sysrq.txt:* How do I enable the magic SysRQ key?
sysrq.txt:* How do I use the magic SysRQ key?
其中文件'sysrp.txt'包含该字符串,讨论的是 SysRQ 的功能.
默认情况下,'grep'只搜索当前目录.如果 此目录下有许多子目录,'grep'会以如下形式列出:
grep: sound: Is a directory
这可能会使'grep' 的输出难于阅读.这里有两种解决的办法:
明确要求搜索子目录:grep -r
或忽略子目录:grep -d skip
如果有很多 输出时,您可以通过管道将其转到'less'上阅读:
$ grep magic /usr/src/Linux/Documentation/* | less
这样,您就可以更方便地阅读.
有一点要注意,您必需提供一个文件过滤方式(搜索全部文件的话用 *).如果您忘了,'grep'会一直等着,直到该程序被中断.如果您遇到了这样的情况,按 CTRL c ,然后再试.
下面还有一些有意思的命令行参数:
grep -i pattern files :不区分大小写地搜索.默认情况区分大小写,
grep -l pattern files :只列出匹配的文件名,
grep -L pattern files :列出不匹配的文件名,
grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配'magic',而不是'magical'),
grep -C number pattern files :匹配的上下文分别显示[number]行,
grep -n pattern files 即可显示行号信息
grep -c pattern files 即可查找总行数
这里还有些用于搜索的特殊符号:
\ 和 \ 分别标注单词的开始与结尾.
例如:
grep man * 会匹配 'Batman'、'manic'、'man'等,
grep '\man' * 匹配'manic'和'man',但不是'Batman',
grep '\man\' 只匹配'man',而不是'Batman'或'manic'等其他的字符串.
'^':指匹配的字符串在行首,
'$':指匹配的字符串在行 尾,
Grep 命令 用法大全
①.、 参数:
-I :忽略大小写
-c :打印匹配的行数
-l :从多个文件中查找包含匹配项
-v :查找不包含匹配项的行
-n:打印包含匹配项的行和行标
\ 忽略正则表达式中特殊字符的原有含义
^ 匹配正则表达式的开始行
$ 匹配正则表达式的结束行
\ 从匹配正则表达式的行开始
\ 到匹配正则表达式的行结束
[ ] 单个字符;如[A] 即A符合要求
[ - ] 范围 ;如[A-Z]即A,B,C一直到Z都符合要求
. 所有的单个字符
* 所有字符,长度可以为0
# ps -ef | grep in.telnetd
# more size.txt size文件的内容
# more size.txt | grep '[a-b]' 范围 ;如[A-Z]即A,B,C一直到Z都符合要求
# more size.txt | grep '[a-b]'*
# more size.txt | grep 'b' 单个字符;如[A] 即A符合要求
# more size.txt | grep '[bB]'
# grep 'root' /etc/group
root::0:root
# grep '^root' /etc/group 匹配正则表达式的开始行
# grep 'uucp' /etc/group
# grep '\uucp' /etc/group
# grep 'root$' /etc/group 匹配正则表达式的结束行
# grep '$' /etc/init.d/nfs.server | wc -l
# grep '\$' /etc/init.d/nfs.server | wc –l 忽略正则表达式中特殊字符的原有含义
# grep '\$' /etc/init.d/nfs.server
case "$1" in
/tmp/sharetab.$$
[ "x$fstype" != xnfs ]
echo "$path\t$res\t$fstype\t$opts\t$desc"
/usr/bin/touch -r /etc/dfs/sharetab /tmp/sharetab.$$
/usr/bin/mv -f /tmp/sharetab.$$ /etc/dfs/sharetab
if [ -f /etc/dfs/dfstab ] /usr/bin/egrep -v '^[ ]*(#|$)'
if [ $startnfsd -eq 0 -a -f /etc/rmmount.conf ]
if [ $startnfsd -ne 0 ]; then
elif [ ! -n "$_INIT_RUN_LEVEL" ]; then
while [ $wtime -gt 0 ]; do
wtime=+expr $wtime - 1+
if [ $wtime -eq 0 ]; then
echo "Usage: $0 { start | stop }"
# more size.txt
the test file
their are files
The end
# grep 'the' size.txt
# grep '\the' size.txt
# grep 'the\' size.txt
# grep '\the\' size.txt
# grep '\[Tt]he\' size.txt
==================================================================
①.,简介
g/re/p -- global - regular expression - print.
基本格式
grep pattern [file...]
(1)grep 搜索字符串 [filename]
在文件中搜索所有 pattern 出现的位置, pattern 既可以是要搜索的字符串,也可以是一个正则表达式.
注意:在输入要搜索的字符串时最好使用双引号/而在模式匹配使用正则表达式时,注意使用单引号
-c 只输出匹配行的计数
-i 不区分大小写(用于单字符)
-n 显示匹配的行号
-v 不显示不包含匹配文本的所以有行
-s 不显示错误信息
-E 使用扩展正则表达式
更多的选项请查看:man grep
(1)多个文件查询
grep "sort" *.doc #见文件名的匹配
grep -i "ab" data.doc #输出所有含有ab或Ab的字符串的行
(1)正则表达式的应用 (注意:最好把正则表达式用单引号括起来)
这需要在实践中不断应用和总结,熟练掌握正则表达式.
可以使用国际模式匹配的类名:
[[:upper:]] [A-Z]
[[:lower:]] [a-z]
[[:space:]] 空格或tab
[[:alpha:]] [a-zA-Z]
(1)使用
linux下vim 查找命令:
/text --查找text, 按n查找下一个, N查找上一个
text --查找text(反向查找), 按n查找下一个, N查找上一个
*/# --查找光标当前的单词,相当于/text
:set ignorecase --查找忽略大小写
:set noignorecase --查找不忽略大小写
:nohlsearch --关闭当前的高亮显示,当再次查找时恢复高亮
:set incsearch --逐步搜索模式,对当前键入的字符进行查找,不必等输入完成
:set wrapscan --重新搜索,当搜索到文件头或尾时,返回重新搜索
①.、文件窗口:
:open file --在当前窗口打开新文件
:split file --在新窗口打开文件
:new file --用新窗口打开文件,同 :split file
:bn --切换到下一个文件
:bp --切换到上一个文件
:e
:e \qadrive est.txt --打开远程文件
:split --打开一个新窗口,光标停在顶层的窗口上
:new --打开一个新窗口,光标停在顶层的窗口上
:vsplit --横向打开窗口.
Ctrl+ww --移动到下一个窗口
Ctrl+wj --移动到下方的窗口
Ctrl+wk --移动到上方的窗口
Esc/Ctrl+[ -- 键入命令
:!command --执行shell命令
:suspend/Ctrl+Z --挂起vim,回到shell,fg 返回vim
:!perl -c script.pl --检查perl脚本语法,不用退出vim
:!perl script.pl --执行perl脚本, 不用退出vim
:help --显示帮助文档
:help i --显示i的帮助文档(:特殊键用, -t:启动参数用-)
插入:
i --在当前位置插入
A --在当前行尾插入
I --在当前行首插入
o --在当前行后插入一行
O --在当前行前插入一行
拷贝粘贴剪切:
yy --拷贝当前行
p --在当前光标后粘贴
P --在当前行前粘贴
:1,$ co $ --将整个文件复制一份并添加到文件尾部
v --进入选择模式,相当于在Windows下按住 Shift选择
V --进入选择模式,整行选择
ddp --交换当前行和其下一行
:1,10d --将1-10行剪切
替换:
ra --将当前光标所在字符替换为a
s/old/new/ --用old替换new,替换当前行的第一个匹配
s/old/new/g --用old替换new,替换当前行的所有匹配
%s/old/new/ --用old替换new,替换所有行的第一个匹配
%s/old/new/g --用old替换new,替换所有匹配
ddp --交换光标所在行和下一行
移动:
e --同 w ,光标停在单词尾部
ge --同 e ,光标停在单词尾部
^ --移动到本行第一个非空白字符
0 --移动到本行第0个字符
--同0
gg --移动到文件头(10gg --移动到第10行首)
[[ --同 gg
G --移动到文件尾(10G --移动到第10行尾)
]] --同 G
Fx --同 fx ,反向查找
Ctrl+e --向下滚动一行
Ctrl+y --向上滚动一行
Ctrl+d --向下滚动半屏
Ctrl+u --向上滚动半屏
Ctrl+f --向下滚动一屏
Ctrl+b --向上滚动一屏
撤销:
u --撤销
U --撤销对整行的操作
Ctrl+r --撤销刚才的撤销
删除:
X --删除当前字符的前一个字符, 同 dh
dl --删除当前字符, 同 x
dh --删除前一个字符
dd --删除当前行
dj --删除上一行
dk --删除下一行
①.0d --删除当前行开始的10行.
D --删除当前字符至行尾, 同 d$
kdgg --删除当前行之前所有行(不包括当前行)
:1,10d --删除1-10行
:11,$d --删除11行及以后所有的行
:1,$d --删除所有行
J --删除两行之间的空行, 合并两行
退出
:wq --保存并退出
ZZ --保存并退出
:q! --强制退出并忽略所有更改
:e! --放弃所有修改,并打开原来文件
:close --关闭窗口,最后一个窗口不能使用此命令,可以防止意外退出vim
:q --如果是最后一个被关闭的窗口,那么将退出vim
linux中查找文件位置的命令有很多,常用的有find,locate和whereis三个命令,下面分别介绍它们的用法:
①.、find命令是linux中最强大的查找文件的命令,它的格式为"find? 指定目录 指定条件 指定动作".比如使用find命令搜索在根目录下的所有interfaces文件所在位置,命令格式为"find / -name ?'interfaces'",输入后就会返回搜索的结果了:
以上就是土嘎嘎小编为大家整理的linux检索器命令相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!