linux模糊命令 linux 模糊查找命令

linux命令可以模糊匹配打包吗可以,比如tar -cvf backup.tar.gzbackup/*
当然更复杂的操作需要配合多个命令 。
linux常用命令linux常用命令有pwd命令、cd命令、ls命令、cat命令、grep命令、touch命令、cp命令、mv命令、rm命令、rmdir命令等 。
linux常用命令:
1、 pwd命令
该命令的英文解释为print working directory(打印工作目录) 。输入pwd命令,Linux会输出当前目录 。
2、 cd命令
cd命令用来改变所在目录 。
cd / 转到根目录中
cd ~ 转到/home/user用户目录下
cd /usr 转到根目录下的usr目录中-------------绝对路径
cd test 转到当前目录下的test子目录中-------相对路径
3、 ls命令
ls命令用来查看目录的内容 。选项 含义 -a 列举目录中的全部文件,包括隐藏文件 -l 列举目录中的细节,包括权限、所有者、组群、大小、创建日期、文件是否是链接等 -f 列举的文件显示文件类型 -r 逆向 , 从后向前地列举目录中内容 -R 递归,该选项递归地列举当前目录下所有子目录内的内容 -s 大小 , 按文件大小排序 -h 以人类可读的方式显示文件的大小,如用K、M、G作单位 ls -l examples.doc 列举文件examples.doc的所有信息
4、 cat命令
cat命令可以用来合并文件,也可以用来在屏幕上显示整个文件的内容 。
cat snow.txt 该命令显示文件snow.txt的内容,ctrl D退出cat 。
5、 grep命令
grep命令的最大功能是在一堆文件中查找一个特定的字符串 。
grep money test.txt
以上命令在test.txt中查找money这个字符串 , grep查找是区分大小写的 。
6 、touch命令
touch命令用来创建新文件 , 他可以创建一个空白的文件,可以在其中添加文本和数据 。
touch newfile 该命令创建一个名为newfile的空白文件 。
7 、cp命令
cp命令用来拷贝文件,要复制文件,输入命令:
cp
cp t.txt Document/t 该命令将把文件t.txt复制到Document目录下,并命名为t 。选项 含义 -i 互动:如果文件将覆盖目标中的文件,他会提示确认 -r 递归:这个选项会复制整个目录树、子目录以及其他 -v 详细:显示文件的复制进度
8 、mv命令
mv命令用来移动文件 。选项 说明 -i 互动:如果选择的文件会覆盖目标中的文件,他会提示确认 -f 强制:它会超越互动模式,不提示地移动文件,属于很危险的选项 -v 详细:显示文件的移动进度
mv t.txt Document 把文件t.txt 移动到目录Document中 。
9 、rm命令
rm命令用来删除文件 。选项 说明 -i 互动:提示确认删除 -f 强制:代替互动模式,不提示确认删除 -v 详细:显示文件的删除进度 -r 递归:将删除某个目录以及其中所有的文件和子目录
rm t.txt 该命令删除文件t.txt
10、 rmdir命令
rmdir命令用来删除目录 。
如何在linux系统下使用 find 命令* 通过文件名查找:
这个方法说起来就和在WINDOWS下查找文件一样容易理解了 。如果你把这个文件放在单个的文件夹里面 , 只要使用常见的“ls"命令就能方便的查找出来 , 那么使用“find”命令来查找它就不能给你留下深刻的印象 , 毕竟“find”命令的强大功能不止这个 。如果知道了某个文件的文件名 , 而不知道这个文件放 到哪个文件夹,甚至是层层套嵌的文件夹里 。举例说明,假设你忘记了httpd.conf这个文件在系统的哪个目录下,甚至在系统的某个地方也不知道,则这 是可以使用如下命令:
find / -name httpd.conf
这个命令语法看起来很容易就明白了,就是直接在find后面写上 -name , 表明要求系统按照文件名查找 , 最后写上httpd.conf这个目标文件名即可 。稍等一会系统会在计算机屏幕上显示出查找结果列表:
etc/httpd/conf/httpd.conf
这就是httpd.conf这个文件在Linux系统中的完整路径 。查找成功 。
如果输入以上查找命令后系统并没有显示出结果,那么不要以为系统没有执行find/ -name httpd.conf命令,而可能是你的系统中没有安装Apache服务器 , 这时只要你安装了Apache Web服务器,然后再使用find / -name httpd.conf就能找到这个配置文件了 。
* 无错误查找技巧:
在 Linux系统中“find”命令是大多数系统用户都可以使用的命令 , 并不是ROOT系统管理员的专利 。但是普通用户使用“find”命令时也有可能遇到 这样的问题,那就是Linux系统中系统管理员ROOT可以把某些文件目录设置成禁止访问模式 。这样普通用户就没有权限用“find”命令来查询这些目录 或者文件 。当普通用户使用“find”命令来查询这些文件目录是,往往会出现"Permissiondenied."(禁止访问)字样 。系统将无法查询到 你想要的文件 。为了避免这样的错误,我们可是使用转移错误提示的方法尝试着查找文件,输入
find / -name access_log 2/dev/null
这个方法是把查找错误提示转移到特定的目录中去 。系统执行这个命令后,遇到错误的信息就直接输送到stderrstream 2 中,access_log 2就是表明系统将把错误信息输送到stderrstream 2中,/dev/null是一个特殊的文件,表明空的或者错误的信息 , 这样查询到的错误信息将被转移了,不会再显示了 。(这个地方没弄明白)
在 Linux系统查找文件也会遇到这样一个实际问题 。如果我们在整个硬盘,这个系统中查找某个文件就要花费相当长的一段时间,特别是大型Linux系统和容 量较大的硬盘,文件放在套嵌很深的目录中的时候 。如果我们知道了这个文件存放在某个大的目录中,那么只要在这个目录中往下找就能节省很多时间了 。使用 find /etc -name httpd.conf 就可以解决这个问题 。上面的命令就是表示在etc目录中查询httpd.conf这个文件 。这里再说明一下“/ ”这个函数符号的含义,如果输入 “find/ ”就是表示要求Linux系统在整个ROOT目录下查找文件,也就是在整个硬盘上查找文件 , 而“find/etc”就是只在 etc目录下查找文件 。因为“find/etc”表示只在etc目录下查找文件,所以查找的速度就相应要快很多了 。
* 根据部分文件名查找方法:
这个方法和在WINDOWS中查找已知的文件名方法是一样的 。不过在Linux中根据部分文件名查找文件的方法要比在WINDOWS中的同类查找方法要强 大得多 。例如我们知道某个文件包含有srm这3个字母,那么要找到系统中所有包含有这3个字母的文件是可以实现的,输入:
find /etc -name '*srm*'
这个命令表明了Linux系统将在/etc整个目录中查找所有的包含有srm这3个字母的文件,比如 absrmyz , tibc.srm等等符合条件的文件都能显示出来 。如果你还知道这个文件是由srm 这3个字母打头的,那么我们还可以省略最前面的星号,命令如下:
find/etc -name 'srm*'.只有像srmyz 这样的文件才被查找出来,象absrmyz或者 absrm这样的文件都不符合要求,不被显示,这样查找文件的效率和可靠性就大大增强了 。
* 根据文件的特征查询方法:
如果只知道某个文件的大小 , 修改日期等特征也可以使用“find”命令查找出来,这和WINDOWS系统中的"搜索"功能是基本相同的 。在微软的"搜索 "中WINDOWS中的"搜索助理"使得搜索文件和文件夹、打印机、用户以及网络中的其他计算机更加容易 。它甚至使在Internet 上搜索更加容易 。"搜索助理"还包括一个索引服务,该服务维护了计算机中所有文件的索引,使得搜索速度更快 。使用"搜索助理"时,用户可以指定多个搜索标准 。例如 , 用户可以按名称、类型及大小搜索文件和文件夹 。用户甚至可以搜索包含特定文本的文件 。如果用户正使用 Active Directory,这时还可以搜索带有特定名称或位置的打印机 。
例如我们知道一个Linux文件大小为1,500 bytes , 那么我们可是使用如下命令来查询find / -size 1500c,字符 c 表明这个要查找的文件的大小是以bytes为单位 。如果我们连这个文件的具体大小都不知道,那么在Linux中还可以进行模糊查找方式来解决 。例如我们输 入find/ -size10000000c 这个命令,则标明我们指定系统在根目录中查找出大于10000000字节的文件并显示出来 。命令中的" "是表示要求系统只列出大于指定大小的文件,而使 用"-"则表示要求系统列出小于指定大小的文件 。下面的列表就是在Linux使用不同"find"命令后系统所要作出的查找动作,从中我们很容易看出在 Linux中使用"find"命令的方式是很多的,"find"命令查找文件只要灵活应用,丝毫不必在WINDOWS中查找能力差 。
find / -amin -10 # 查找在系统中最后10分钟访问的文件
find / -atime -2 # 查找在系统中最后48小时访问的文件
find / -empty # 查找在系统中为空的文件或者文件夹
find / -group cat # 查找在系统中属于 groupcat的文件
find / -mmin -5 # 查找在系统中最后5分钟里修改过的文件
find / -mtime -1 #查找在系统中最后24小时里修改过的文件
find / -nouser #查找在系统中属于作废用户的文件
find / -user fred #查找在系统中属于FRED这个用户的文件
下面的列表就是对find命令所可以指定文件的特征进行查找的部分条件 。在这里并没有列举所有的查找条件,参考有关Linux有关书籍可以知道所有 find命令的查找函数 。
-amin n
查找系统中最后N分钟访问的文件
-atime n
查找系统中最后n*24小时访问的文件
-cmin n
查找系统中最后N分钟被改变状态的文件
-ctime n
查找系统中最后n*24小时被改变状态的文件
-empty
查找系统中空白的文件,或空白的文件目录,或目录中没有子目录的文件夹
-false
查找系统中总是错误的文件
-fstype type
查找系统中存在于指定文件系统的文件,例如:ext2 .
-gid n
查找系统中文件数字组 ID 为 n的文件
-group gname
查找系统中文件属于gnam文件组,并且指定组和ID的文件
* Find命令的控制选项说明:
Find命令也提供给用户一些特有的选项来控制查找操作 。下表就是我们总结出的最基本,最常用的find命令的控制选项及其用法 。
选项 用途描述
-daystart 测试系统从今天开始24小时以内的文件,用法类似-amin
-depth 使用深度级别的查找过程方式,在某层指定目录中优先查找文件内容
-follow 遵循通配符链接方式查找; 另外 , 也可忽略通配符链接方式查询
-help 显示命令摘要
-maxdepth levels
在某个层次的目录中按照递减方法查找
-mount
不在文件系统目录中查找,用法类似 -xdev.
-noleaf 禁止在非UNUX文件系统,MS-DOS系统,CD-ROM文件系统中进行最优化查找
-version 打印版本数字
注:使用-follow选项后,find命令则遵循通配符链接方式进行查找,除非你指定这个选项,否则一般情况下find命令将忽略通配符链接方式进行文件查找 。
Linux命令命令格式: 命令 [-选项] [参数]
如:ls -la /usr
**说明:**
大部分命令遵从该格式
多个选项时,可以一起写 eg:ls –l –a à ls –la
简化选项与完整选项(注:并非所有选项都可使用完整选项)eg:ls –all à ls –a
作用:切换用户身份
语法:su [选项] 用户名
-c 仅执行一次命令,而不切换用户身份
$ su – root
env
$ su – root –c “useradd longjing”
文件或目录的CRUD
英文:change directory命令路径:内部命令执行权限:所有用户
作用: 切换目录
语法:cd [目录]/ 切换到根目录
.. 回到上一级目录
. 当前目录
~ 当前用户的宿主目录(eg:# cd ~用户名 进入某个用户的家目录)
英文:list 命令路径:/bin/ls 执行权限:所有用户
作用:显示目录文件
语法:ls [-alrRd] [文件或目录]
-a all 显示所有文件,注意隐藏文件,特殊目录.和..
-l(long) 显示详细信息
-R(recursive)递归显示当前目录下所有目录
-r (reverse) 逆序排序
-t(time)按修改时间排序(降序)
英文:print working directory 命令路径:/bin/pwd 执行权限:所有用户
作用:显示当前工作目录
语法:pwd [-LP]
-L 显示链接路径,当前路径,默认
-P 物理路径
eg:# cd /etc/init.d
英文:make directories 命令路径:/bin/mkdir 执行权限:所有用户
作用:创建新目录
语法:mkdir [-p] 目录名
-p 父目录不存在情况下先生成父目录 (parents)
eg: mkdir linux/test 如果目录linux不存在,则报错,使用参数-p即可自动创建父目录 。
命令路径:/bin/touch 执行权限:所有用户
作用:创建空文件或更新已存在文件的时间
语法:touch 文件名
eg:toucha.txtb.txttouch {a.txt,b.txt}同时创建多个文件
创建带空格的文件 eg:touch "program files" 在查询和删除时也必须带双引号
注意:生产环境中,文件名,一定不要加空格
英文:copy 命令路径:/bin/cp 执行权限:所有用户
作用:复制文件或目录
语法:cp [–rp] 源文件或目录 目的目录
-r -R recursive 递归处理,复制目录
-p 保留文件属性 (原文件的时间不变)
eg:
1 , 相对路径 cp –R /etc/* . cp –R ../aaa ../../test/
2,,绝对路径 cp –R/ ect/service /root/test/aa/bb
英文:move 命令路径:/bin/mv 执行权限:所有用户
作用:移动文件或目录、文件或目录改名
语法:mv 源文件或目录 目的目录
英文:remove 命令路径:/bin/rm 执行权限:所有用户
作用:删除文件
语法: rm [-rf] 文件或目录
-r(recursive)删除目录 , 同时删除该目录下的所有文件
-f(force) 强制删除文件或目录 即使原档案属性设为唯读,亦直接删除,无需逐一确认
注意:工作中,谨慎使用rm –rf 命令 。
扩展点 :删除乱码文件
一些文件乱码后使用rm -rf 依然无法删除
此时,使用ll -i 查找到文件的inode节点
然后使用find . -inum 查找到的inode编号-exec rm {} -rf ;
就能顺利删除了
英文:concatenate 命令路径:/bin/cat 执行权限:所有用户
作用:显示文件内容
语法:cat [-n] [文件名]
-n 显示行号
eg:cat /etc/services
命令路径:/bin/more 执行权限:所有用户
作用:分页显示文件内容
语法:more [文件名]
空格或f显示下一页
Enter键显示下一行
q或Q退出
命令路径:/usr/bin/head 执行权限:所有用户
作用:查看文件前几行(默认10行)
语法:head [文件名]
-n 指定行数
eg:head -20 /etc/services head –n 3 /etc/services
命令路径:/usr/bin/tail 执行权限:所有用户
作用:查看文件的后几行
语法:tail [文件名]
-n 指定行数
-f (follow) 动态显示文件内容
获取一个大文件的部分文件,可使用head或tail命令
head -n 100 /etc/services config.log
英文: link命令路径:/bin/ln 执行权限:所有用户
作用:产生链接文件
语法:
ln -s[源文件][目标文件] 创建软链接源文件 使用 绝对路径
ln [源文件][目标文件] 创建硬链接
eg:ln -s /etc/service./service.soft
创建文件/etc/service的软链接service.soft
eg:/etc/service/service.hard
创建文件/etc/service的硬链接/service.hard
软连接类似于windows下的快捷方式
软连接文件格式:
lrwxrwxrwx. 1 root root 13 Jul 20 07:50 service - /etc/services
1 硬链接数量,如果该文件没有硬链接,就只有本身一个硬链接 。
13链接文件的长度
格式解析(特征):
1, 软连接的文件类型是 l(软连接),软连接文件的权限 都是 lrwxrwxrwx
2,-箭头指向到源文件
真正的权限取决于对源文件的权限
时间值为创建软连接的时间
软连接可以跨文件系统生成
硬链接特征
1,相当于 cp -p同步更新
2 , 通过i节点识别,与源文件有相同的inode节点
3,硬链接不能跨分区,ln /home/test/issuels /boot/test (错误)
4,不能针对目录使用 ln /tmp/ aa.hard (无法将目录/tmp 生成硬链接)
删除软连接
rm -rf symbolic_name
英文:manual命令路径:/usr/bin/man 执行权限:所有用户
作用:获取命令或配置文件的帮助信息
语法:man [命令/配置文件]
eg:man lsmanservices
(查看配置文件时,不需要配置文件的绝对路径,只需要文件名即可)
调用的是more命令来浏览帮助文档,按空格翻下一页,按回车翻下一行 , 按q退出 。
使用/加上关键的参数可直接定位搜索,n查找下一个 , shift n查找上一个
eg: /-l 直接查看-l的介绍
扩展:man的级别(帮助文档的类型, 了解1 5即可)
man man-pages 查看每一种类型代表的含义 man文档的类型(1~9)
1是命令,5是配置文件 man优先显示命令,可指定帮助类型
eg:man 5 passwd (5代表配置文件级别)
[图片上传失败...(image-6718d2-1624438708895)]
help查看shell内置命令的帮助信息
eg:help cd
内置命令,使用whereis,which,man都不能查看
type 命令 查看内部命令还是外部命令
命令名 --help 列举该命令的常用选项
eg: cp --help
命令路径:/bin/find 执行权限:所有用户
作用:查找文件或目录
语法:find [搜索路径] [匹配条件]
如果没有指定搜索路径,默认从当前目录查找
find命令选项
-name按名称查找精准查找
eg:find/etc-name“init” 在目录/etc中查找文件init
-iname按名称查找
find查找中的字符匹配:
*:匹配所有
?:匹配单个字符
eg:find/etc-name“init???”在目录/etc中查找以init开头的,且后面有三位的文件
模糊匹配的条件,建议使用单引号或双引号括起来 。如果*被转义,可使用 单双引号括住查询条件,或者使用* 。
eg: # find . –name *g
-size****按文件大小查找
以block为单位 , 一个block是512B, 1K=2block大于 -小于 不写是等于
eg:find /etc -size -204800在etc目录下找出大于100MB的文件
100MB=102400KB=204800block
**-type **按文件类型查找
f 二进制文件l 软连接文件 d 目录 c 字符文件
eg:find /dev -type c
find****查找的基本原则 :
占用最少的系统资源,即查询范围最小,查询条件最精准
eg:
如果明确知道查找的文件在哪一个目录,就直接对指定目录查找,不查找根目录/
命令路径:/bin/grep 执行权限:所有用户
作用:在文件中搜寻字串匹配的行并输出
语法:grep [-cinv] '搜寻字符串' filename
选项与参数:
-c :输出匹配行的次数(是以行为单位 , 不是以出现次数为单位)
-i :忽略大小写 , 所以大小写视为相同
-n :显示匹配行及行号
-v :反向选择,显示不包含匹配文本的所有行 。
eg:grep ftp/etc/services
eg:#grep -v ^# /etc/inittab 去掉文件行首的#号
eg:# grep -n “init”/etc/inittab 显示在inittab文件中,init匹配行及行号
eg:# grep -c“init”/etc/inittab 显示在inittab文件中,init匹配了多少次
命令路径:/usr/bin/which 执行权限:所有用户
作用: 显示系统命令所在目录(绝对路径及别名)
which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果 。也就是说,使用which命令,就可以看到某个系统命令是否存在 , 以及执行的到底是哪一个位置的命令
alias ls='ls --color=auto'
/bin/ls
/usr/bin/which: no zs in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/ch/bin)
命令路径:/usr/bin/whereis 执行权限:所有用户
作用:**搜索命令所在目录 配置文件所在目录 及帮助文档路径**
eg: which passwd和 whereispasswd
eg:查看/etc/passwd配置文件的帮助,就用 man 5 passwd
英文:GNU zip命令路径:/bin/gzip 执行权限:所有用户
作用:压缩(解压)文件,压缩文件后缀为.gz
gzip只能压缩文件,不能压缩目录;不保留原文件
语法:gzip 文件
-d将压缩文件解压(decompress)
解压使用gzip –d或者 gunzip
命令路径:/usr/bin/bzip2 执行权限:所有用户
作用: 压缩(解压)文件,压缩文件后缀为.bz2
语法:bzip2 [-k] [文件]
-k:产生压缩文件后保留原文件(压缩比高)
-d 解压缩的参数(decompress)
解压使用bzip2 –d或者 bunzip2
命令路径:/usr/bin/zip 执行权限:所有用户
作用: 压缩(解压)文件,压缩文件后缀为.zip
语法:zip 选项[-r][压缩后文件名称] [文件或目录]
-r压缩目录
eg:zip services.zip /etc/services压缩文件;
zip -r test.zip/test压缩目录
如果不加-r选项,压缩后的文件没有数据 。
解压使用unzip
命令路径:/bin/tar 执行权限:所有用户
作用:文件、目录打(解)包
语法:tar [-zcf] 压缩后文件名文件或目录
-c 建立一个压缩文件的参数指令(create),后缀是.tar
-x 解开一个压缩文件的参数指令(extract)
-z 以gzip命令压缩/解压缩
-j以bzip2命令压缩/解压缩
-v 压缩的过程中显示文件(verbose)
-f file 指定文件名,必选项
1,单独的打包,解包tar –cf tar –xf
2,打包之后 , 进行压缩 gzip bzip2
3,一步到位 tar –zcvf tar -zxvf
tar -cf-xf 单独 压缩解压缩
tar-z 以gzip打包目录并压缩 文件格式.tar.gz(.tgz)
tar-j 以bzip2打包目录并压缩 文件格式.tar.bz2
eg:tar -zcvf dir1.tar.gzdir1 使用gzip将目录dir1压缩成一个打包并压缩文件dir1.tar.gz
eg: tar -cvf bak.tar.将当前目录的文件打包为bak.tar
eg: tar -xvf bak.tar 解压
eg: tar -zcvf bak.tar.gzbak.tar 或 gzipbak.tar使用gzip将打包文件bak.tar压缩为bak.tar.gz
eg: tar -jcvf bak.tar.bz2bak.tar或 bzip2 bak.tar 使用bzip2将打包文件bak.tar压缩为bak.tar.bz2
eg: tar -rvf bak.tar /etc/password 将/etc/password追加文件到bak.tar中(r)
eg:tar -cjvf test.tar.bz2test生成test.tar.bz2的压缩文件
eg:tar -xjf test.tar.bz2解压
最常用:targzip
tar –zcvf 压缩
tar –zxvf 解压
补充:
1,文件路径 , 压缩包带文件路径
2,源文件是保留的,不会被删除
**shutdown**[选项] 时间
选项: -c: 取消前一个关机命令
-h:关机
-r:重启
eg:
shutdown -hnow立即关机 shutdown-h20:30 定时关机
其他关机命令 haltpoweroffinit 0
其他重启命令
**reboot**重启系统 reboot -h now立即重启
init 6
注意:生产环境中 , 关机命令和重启命令谨慎执行 。
善于查看man help等帮助文档
利用好Tab键自动补全
掌握好一些快捷键
ctrlc(停止当前进程)
ctrlz挂起当前进程,放后台
ctrlr(查看命令历史) history
ctrll(清屏,与clear命令作用相同)
方向箭头上 下 可以查看执行过的命令
ctrla 行首 ctrle 行尾
ctrlk 清除 ctrlw 清除单词
vim/vi是Unix / Linux上最常用的文本编辑器而且功能非常强大 。
只有命令,没有菜单 。
《大碗》编辑器版
周围的同事不是用VI就是Emacs , 你要是用UltraEdit都不好意思跟人家打招呼...什么插件呀、语法高亮呀、拼写检查呀,能给它开的都给它开着,就是一个字:酷!你说这么牛X的一东西,怎么着学会也得小半年吧 。半年?。咳朊哦荚蹲拍兀∧苎Щ嵋贫獗昃筒淮砹? ,你还别说耗不起,就这还是左右移动?。。?
:
[图片上传失败...(image-a08366-1624438708894)]
命令模式:又称一般模式
编辑模式:又称底行模式,命令行模式
|
命令
|
作用
|
|
a
|
在光标后附加文本
|
|
A(shifta)
|
在本行行末附加文本行尾
|
|
i
|
在光标前插入文本
|
|
I(shift i)
|
在本行开始插入文本 行首
|
|
o
|
在光标下插入新行
|
|
O(shift o)
|
在光标上插入新行
|
|
命令
|
作用
|
|
:set nu
|
设置行号
|
|
:set nonu
|
取消行号
|
|
gg
G
|
到第一行
到最后一行
|
|
nG
|
到第n行
|
|
:n
|
到第n行
|
|
命令
|
作用
|
|
:w
|
保存修改
|
|
:w new_filename
|
另存为指定文件
|
|
:wa.txt
|
内容追加到a.txt文件中 文件需存在
|
|
:wq
|
保存修改并退出
|
|
shift zz(ZZ)
|
快捷键,保存修改并退出
|
|
:q!
|
不保存修改退出
|
|
:wq!
|
保存修改并退出(文件所有者可忽略文件的只读属性)
|
不保存并退出:
1, 有修改,但是修改后的内容是不保存的
2,有突发情况 , 导致窗口退出 。修改文件之后,直接删除同名的.swp文件
|
命令
|
作用
|
|
x
|
删除光标所在处字符 nx 删除光标所在处后n个字符
|
|
dd
|
删除光标所在行,ndd删除n行
|
|
:n1,n2d
|
删除指定范围的行(eg :1,3d 删除了123这三行)
|
|
dG
|
删除光标所在行到末尾的内容
|
|
D
|
删除从光标所在处到行尾
|
|
命令
|
作用
|
|
yy、Y
|
复制当前行
|
|
nyy、nY
|
复制当前行以下n行
|
|
dd
|
剪切当前行
|
|
ndd
|
剪切当前行以下n行
|
|
p、P
|
粘贴在当前光标所在行下或行上
|
|
命令
|
作用
|
|
r
|
取代光标所在处字符
|
|
R(shiftr)
|
从光标所在处开始替换字符,按Esc结束
|
|
u
|
undo,取消上一步操作
|
|
ctrl r
|
redo,返回到undo之前
|
|
命令
|
作用
|
|
/string
|
向后搜索指定字符串 搜索时忽略大小写 :set ic
|
|
?string
|
向前搜索指定字符串
|
|
n
|
搜索字符串的下一个出现位置,与搜索顺序相同
|
|
N(Shiftn)
|
搜索字符串的上一个出现位置,与搜索顺序相反
|
|
:%s/old/new/g
|
全文替换指定字符串
|
|
:n1,n2s/old/new/g
|
在一定范围内替换指定字符串
|
% 指全文,s 指开始,g 指全局替换
【linux模糊命令 linux 模糊查找命令】 eg: :41,44/yang/lee/c 从41行到44行,把yang替换为lee,询问是否替换
eg: :41,44/yang/lee/g 同上 , 不询问,直接替换
使用替换命令来添加删除注释
:% s/^/#/g 来在全部内容的行首添加 # 号注释
:1,10 s/^/#/g 在1~10 行首添加 # 号注释
vi里面怎么查命令??
:!which cp
vi里面怎么导入命令的结果?
:r !which cp
v可视字符模式
V****(shift v)可视行模式,选择多行操作
**ctrl v **可视块模式(列模式) , 操作列
I或者O进入插入模式 。
1 , 图形化界面
2 , setup 命令虚拟界面
3 , 修改配置文件(以网络方式为NAT示例)
vi /etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.2.129
NETMASK=255.255.255.0
GATEWAY=192.168.2. 2#网段2任意,IP地址2固定,网段为vmnet8的设置的IP网段
DNS1=114.114.114.114
DNS2=8.8.8.8
重启网络生效:
service network restart
命令路径:/bin/ping 执行权限:所有用户
作用:测试网络的连通性
语法:ping 选项 IP地址
-c 指定发送次数
ping 命令使用的是icmp协议,不占用端口
eg: # ping -c 3 127.0.0.1
英文:interface configure 命令路径:/sbin/ifconfig 执行权限:root
作用:查看和设置网卡网络配置
语法:ifconfig [-a] [网卡设备标识]
-a:显示所有网卡信息
ifconfig [网卡设备标识] IP地址修改ip地址
英文:network statistics 命令路径:/bin/netstat 执行权限:所有用户
作用:主要用于检测主机的网络配置和状况
-aall显示所有连接和监听端口
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 使用数字方式显示地址和端口号
-l (listening) 显示监控中的服务器的socket
eg:# netstat -tlnu查看本机监听的端口
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
协议 待收数据包待发送数据包 本地ip地址:端口 远程IP地址:端口
netstat –antpl
临时生效:
hostname 主机名
[图片上传失败...(image-ceed36-1624438708893)]
永久生效:修改配置文件
vi /etc/sysconfig/network
[图片上传失败...(image-2b9d9e-1624438708893)]
修改主机名和ip地址之间的映射关系
vi /etc/hosts
192.168.2.120 node-1.edu.cn node-1
可配置别名
[图片上传失败...(image-ec86cf-1624438708893)]
进程和程序的区别:
1、程序是静态概念,本身作为一种软件资源长期保存;而进程是程序的执行过程,它是动态概念,有一定的生命期,是动态产生和消亡的 。
2、程序和进程无一一对应关系 。一个程序可以由多个进程共用;另一方面,一个进程在活动中有可顺序地执行若干个程序 。
进程和线程的区别:
进程: 就是正在执行的程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源 。
线程: 轻量级的进程;进程有独立的地址空间,线程没有;线程不能独立存在,它由进程创建;相对讲 , 线程耗费的cpu和内存要小于进程 。
进程管理的作用?
判断服务器的健康状态
查看系统所有的进程
杀死进程
作用:查看系统中的进程信息
语法:ps [-auxle]
常用选项
查看系统中所有进程
ps应用实例 # ps -u or ps -l查看隶属于自己进程详细信息
作用: 查看当前进程树
语法:pstree [选项]
-p 显示进程PID
-u 显示进程的所属用户
作用:查看系统健康状态
显示当前系统中耗费资源最多的进程,以及系统的一些负载情况 。
语法:top [选项]
-d 秒数,指定几秒刷新一次,默认3秒(动态显示)
作用:关闭进程
语法:kill [-选项] pId
kill -9 进程号(强行关闭) 常用
kill -1 进程号(重启进程)
添加用户
语法:useradd [选项] 用户名
修改密码命令
语法:passwd [选项] [用户名]
用户密码:生产环境中,用户密码长度8位以上 , 设置大小写加数字加特殊字符,要定期更换密码 。
ys^h_L9t
删除用户
-r 删除账号时同时删除宿主目录(remove)
作用:用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息 。看剩余空间
语法:df [-hkam] [挂载点]
-h(human-readable)根据磁盘空间和使用情况 以易读的方式显示 KB,MB,GB等 -k以KB 为单位显示各分区的信息,默认
-M 以MB为单位显示信息 -a显示所有分区包括大小为0 的分区
作用:用于查看文件或目录的大?。ù排淌褂每占洌?
语法:du [-abhs] [文件名目录]
-a 显示子文件的大小
-h以易读的方式显示 KB,MB,GB等
-s summarize 统计总占有量
eg:
du -a(all) /home显示/home 目录下每个子文件的大小,默认单位为kb
du -b /home以bytes为单位显示/home 目录下各个子目录的大小
du -h /home 以K,M,G为单位显示/home 文件夹下各个子目录的大小
du -sh /home以常用单位(K,M,G)为单位显示/home 目录的总大小 -s summarize
df命令和du命令的区别:
df命令是从文件系统考虑的,不仅考虑文件占用的空间,还要统计被命令或者程序占用的空间 。
du命令面向文件,只计算文件或目录占用的空间 。
作用:查看内存及交换空间使用状态
语法: free [-kmg]
选项:
-k:以KB为单位显示,默认就是以KB为单位显示
-m:以MB为单位显示
-g:以GB为单位显示
清理缓存命令:
echo 1/proc/sys/vm/drop_caches
Linux里面find 模糊查找中间包含data的名字文件夹命令是什么?题主你好,
解题思路: 使用-type d指定我们要查找的是文件夹, 而不是文件啥的; 再就是使用通佩符来匹配中间是data的名称: -name "*data*"
命令如下:
find / -type d -name "*data*"
-----
上面命令是从根目录开始找的, 下面给题主举个例子,在当前目录下查找中间是data的文件夹:
从上图可以看出,当前文件夹中adatab是文件夹, cdatad是文件,按照上面说的规则,最终查找的结果只有adatab,说明是正确的, 因为cdatad虽然也符合名称的规则,但它的类型是文件而非文件夹,因此结果不包含cdatad.
希望可以帮到题主, 欢迎追问
linux命令体验 在 linux 中,最最重要的就是命令,这就包含了 2 个过程,输入和输出
真正学习命令行之前,你先要掌握几个十分有用、必需掌握的小技巧:
使用 Tab 键来进行命令补全, Tab 键一般是在字母 Q 旁边 , 这个技巧给你带来的最大的好处就是当你忘记某个命令的全称时可以只输入它的开头的一部分,然后按下 Tab 键就可以得到提示或者帮助完成 。
当然不止补全命令 , 补全目录、补全命令参数都是没问题的 。
想想你有没有遇到过这种情况,当你在 Linux 命令行中无意输入了一个不知道的命令,或者错误地使用了一个命令,导致在终端里出现了你无法预料的情况,比如,屏幕上只有光标在闪烁却无法继续输入命令,或者不停地输出一大堆你不想要的结果 。你想要立即停止并恢复到你可控的状态,那该怎么办呢?这时候你就可以使用 Ctrl c 键来强行终止当前程序(你可以放心它并不会使终端退出) 。
尝试输入以下命令:
然后你会发现你接下来的输入都没有任何反应了 , 只是将你输入的东西显示出来,现在你可以使用 Ctrl c ,来中断这个你目前可能还不知道是什么的程序(在后续课程中我们会具体解释这个 tail 命令是什么) 。
又或者输入:
显然这不是你想的结果 , 可以使用 Ctrl c 结束 。
虽然这个按着很方便,但不要随便按,因为有时候,当你看到终端没有任何反应或提示,也不能接受你的输入时 , 可能只是运行的程序需要你耐心等一下,就不要急着按 Ctrl c 了 。
很简单,你可以使用键盘上的方向上键 ↑ , 恢复你之前输入过的命令,你一试便知 。
通配符是一种特殊语句,主要有星号(*)和问号(?),用来对字符串进行模糊匹配(比如文件名、参数名) 。当查找文件夹时 , 可以使用它来代替一个或多个真正字符;当不知道真正字符或者懒得输入完整名字时,常常使用通配符代替一个或多个真正字符 。
终端里面输入的通配符是由 Shell 处理的 , 不是由所涉及的命令语句处理的,它只会出现在命令的“参数值”里(它不能出现在命令名称里, 命令不记得,那就用 Tab 补全) 。当 Shell 在“参数值”中遇到了通配符时,Shell 会将其当作路径或文件名在磁盘上搜寻可能的匹配:若符合要求的匹配存在 , 则进行代换(路径扩展);否则就将该通配符作为一个普通字符传递给“命令” , 然后再由命令进行处理 。总之 , 通配符实际上就是一种 Shell 实现的路径扩展功能 。在通配符被处理后,Shell 会先完成该命令的重组,然后继续处理重组后的命令,直至执行该命令 。
首先回到用户家目录:
然后使用 touch 命令创建 2 个文件,后缀都为 txt:
可以给文件随意命名,假如过了很长时间,你已经忘了这两个文件的文件名 , 现在你想在一大堆文件中找到这两个文件 , 就可以使用通配符:
在创建文件的时候,如果需要一次性创建多个文件,比如: “love_1_linux.txt,love_2_linux.txt,... love_10_linux.txt”。在 Linux 中十分方便:
Shell 常用通配符:
在 Linux 环境中,如果你遇到困难,可以使用 man 命令 , 它是 Manual pages 的缩写 。
Manual pages 是 UNIX 或类 UNIX 操作系统中在线软件文档的一种普遍的形式, 内容包括计算机程序(包括库和系统调用)、正式的标准和惯例,甚至是抽象的概念 。用户可以通过执行 man 命令调用手册页 。
你可以使用如下方式来获得某个命令的说明和使用方式的详细介绍:
比如你想查看 man 命令本身的使用方式,你可以输入:
通常情况下,man 手册里面的内容都是英文的,这就要求你有一定的英文基础 。man 手册的内容很多 , 涉及了 Linux 使用过程中的方方面面 。为了便于查找,man 手册被进行了分册(分区段)处理,在 Research UNIX、BSD、OS X 和 Linux 中,手册通常被分为 8 个区段,安排如下:
要查看相应区段的内容 , 就在 man 后面加上相应区段的数字即可,如:
会显示第一区段中的 ls 命令 man 页面 。
所有的手册页遵循一个常见的布局,为了通过简单的 ASCII 文本展示而被优化,而这种情况下可能没有任何形式的高亮或字体控制 。一般包括以下部分内容:
NAME(名称)
SYNOPSIS(概要)
DESCRIPTION(说明)
EXAMPLES(示例)
SEE ALSO(参见)
也可能存在其它部分内容,但这些部分没有得到跨手册页的标准化 。常见的例子包括:OPTIONS(选项),EXIT STATUS(退出状态),ENVIRONMENT(环境) , BUGS(程序漏洞),FILES(文件),AUTHOR(作者),REPORTING BUGS(已知漏洞),HISTORY(历史)和 COPYRIGHT(版权) 。
通常 man 手册中的内容很多,你可能不太容易找到你想要的结果 , 不过幸运的是你可以在 man 中使用搜索 /你要搜索的关键字,查找完毕后你可以使用 n 键切换到下一个关键字所在处,shift n 为上一个关键字所在处 。使用 Space (空格键)翻页,Enter (回车键)向下滚动一行 , 或者使用 k , j (vim 编辑器的移动键)进行向前向后滚动一行 。按下 h 键为显示使用帮助(因为 man 使用 less 作为阅读器,实为 less 工具的帮助),按下 q 退出 。
想要获得更详细的帮助,你还可以使用 info 命令,不过通常使用 man 就足够了 。如果你知道某个命令的作用,只是想快速查看一些它的某个具体参数的作用,那么你可以使用 --help 参数,大部分命令都会带有这个参数,如:
linux模糊命令的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux 模糊查找命令、linux模糊命令的信息别忘了在本站进行查找喔 。

    推荐阅读