linux中find与rm实现查找并删除目录或文件linux操作系统

时间:2023-01-24 07:49:54 其他范文 收藏本文 下载本文

linux中find与rm实现查找并删除目录或文件linux操作系统(锦集8篇)由网友“轻柒”投稿提供,下面小编给大家整理过的linux中find与rm实现查找并删除目录或文件linux操作系统,供大家阅读参考。

linux中find与rm实现查找并删除目录或文件linux操作系统

篇1:linux中find与rm实现查找并删除目录或文件linux操作系统

在linux中find是查找搜索文件而rm是删除文件,下面我们来看一篇linux中find与rm实现查找并删除目录或文件的实例,希望文章对大家会有所帮助,

删除指定目录下指定文件

find 要查找的目录名 -name .svn |xargs rm -rf

删除指定名称的文件或文件夹: find -type d | grep .svn$ | xargs rm -r

分析:

find -type d | grep .svn$ 通过此命令查找文件夹 过滤正则表达式中的目录

| xargs rm -r 执行删除指令

删除目录下所有exe文件

find . -name '*.exe' -type f -print -exec rm -rf {} ;

(1) “.”   表示从当前目录开始递归查找

(2) “ -name '*.exe' “根据名称来查找,要查找所有以.exe结尾的文件夹或者文件

(3) ” -type f “查找的类型为文件

(4) ”-print“ 输出查找的文件目录名

(5) 最主要的是是-exec了,-exec选项后边跟着一个所要执行的命令,表示将find出来的文件或目录执行该命令,

exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{},一个空格和一个,最后是一个分号

篇2:linux中RM命令删除目录与非空目录 linux操作系统

在linux中删除目录的方法有几个不同的命令,如rmdir这个只能删除空目录,如果想删除非空目录我们需要使用白领命令来实现,下面我来给大家介绍介绍,

rm命令

在linux中创建文件很容易,系统中随时会有文件变得过时且毫无用处。用户可以用rm命令将其删除。该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。

rm命令的一般形式为:

rm [选项] 文件…

如果没有使用- r选项,则rm不会删除目录。

该命令的各选项含义如下:

- f 忽略不存在的文件,从不给出提示。

- r 指示rm将参数中列出的全部目录和子目录均递归地删除。

- i 进行交互式删除。

使用rm命令要格外小心。因为一旦一个文件被删除,它是不能被恢复的。例如,用户在输入cp,mv或其他命令时,不小心误输入了rm命令,当用户按了回车键并认识到自己的错误时,已经太晚了,文件已经没有了。为了防止此种情况的发生,可以使用rm命令中的 i选项来确认要删除的每个文件。如果用户输入y,文件将被删除。如果输入任何其他东西,文件将被保留。在下一个例子中,用户要删除文件test和 example。然后会被要求对每个文件进行确认。用户最终决定删除example文件,保留test文件。

代码如下复制代码$ rm – ii test example

某目录下文件较多,考虑一次性全部删除。

代码如下复制代码

[root@hx relate]# rm * -f

rm: invalid option -- ?

Try `rm ./-昆明中国_relate.txt' to remove the file `-300245303367326320271372_relate.txt'.

Try `rm --help' for more information.

这个文件删除不掉?

rm --help看了下帮助

代码如下复制代码

By default, rm does not remove directories. Use the --recursive (-r or -R)

option to remove each listed directory, too, along with all of its contents.

To remove a file whose name starts with a `-', for example `-foo',

use one of these commands:

rm -- -foo

rm ./-foo

根据提示:

代码如下复制代码

[root@hx relate]# rm ./-昆明中国_relate.txt

rm: remove regular file `./-300245303367326320271372_relate.txt'? y

把这个文件删除了,

附:批量删除某目录下的空文件(0字节的文件)

代码如下复制代码find . -name ”*“ -type f -size 0c | xargs -n 1 rm -f

修改对应的 -size 参数,可以删除指定大小的文件,例如要删除1k大小的文件:

代码如下复制代码

find . -name ”*“ -type f -size 1024c | xargs -n 1 rm -f

但注意不要用 -size 1k,这个得到的是占用空间1k,不是文件大小1k的

如果只要删除文件夹或者名字连接等,可以相应的改 -type 参数,具体细节见 man find。

RM与RMDIR的区别是rm可以删除非空目录 ,非空目录用rmdir是删除不了的,rm -rf 非空目录名 即可

篇3:linux 删除文件和目录与恢复详解linux操作系统

前面你已经学习了使用 touch 命令来创建文件,以及使用 mkdir 命令来创建目录 tigger。

现在,你需要学习如何删除文件和目录。 使用 rm 命令来删除文件和目录是一个直截了当的过程。详情请参阅 rm 的说明书页。删除文件和目录的选项包括:

» -i — 互动。提示你确认删除。这个选项可以帮助你避免误删文件。

» -f — 强制。代替互动模式,不提示地删除文件。除非你知道自己在干什么,使用这个选项通常不是明智之举。

» -v — 详细。显示文件的删除进度。

» -r — 递归。将会删除某个目录及其中所有的文件和子目录。

要使用 rm 命令来删除文件 piglet.txt,键入:

rm piglet.txt

警告

一旦文件或目录使用 rm 命令删除后,它就一去不复返了。

使用 -i(互动)选项会再给你一次机会来决定你是否真的想删除该文件。

rm -i piglet.txt

rm: 是否删除一般文件‘piglet.txt’?

你还可以使用通配符“*”来删除文件,不过,你必须谨慎而为,因为它很容易删除你并不想删除的文件。

要使用通配符来删除文件,可以键入:

rm pig*

上面的命令会删除目录中所有起首为 pig 字母的文件。

你还可以使用 rm 命令来删除多个文件。 例如:

rm piglet.txt sneakers.txt

你可以使用 rmdir 来删除目录( 如:rmdir foo),但是目录必须是空目录。要使用 rm 来删除目录,你必须指定 -r 选项。

譬如,如果你想递归地删除目录 tigger,你可以键入:

rm -r tigger

如果你想组合选项,例如强制一种递归的删除,你可以键入:

rm -rf tigger

另一个比使用 rm 更安全的删除目录的命令是 rmdir 命令。这个命令不允许你使用递归删除,因此不能删除包含文件的目录。

警告

rm 命令可以删除你的整个文件系统!如果你登录为根用户,然后键入这个简单命令: rm -rf /,你的麻烦就大了;这个命令会递归地删除你的系统上的一切。

阅读 rmdir 的说明书页( man rmdir)来获取关于这个命令的详细信息

Linux 文件误删除恢复操作

一、用运SecureCRT远程对操作系统上,查看一下当前系统版本号,及文件系统格式

二、为方便本次实验,我们新创建一文件,

三、执行删除操作,

四、运用,系统自还工具debugfs来修复

五、打开,刚刚被删除文件所在的分区

六、用ls 加-d参数显示刚刚删除文件所在的目录

七、显示有尖括号的就是我们要找的文件Inode 号 执行logdump –I <393289>

八,执行完命令后,显示了一屏信息,我们需要的是下面这一行,并且要记住,后面的值

九,退出debugfs

十,执行如下命令

十一,以上结果表示恢复成功我们看下/tmp目录下到底有没有

十二,tmp目录下有我们显示一下,

linux下删除乱码文件

根据inode 来修改或删除linux 下乱码的文件

1. 创建测试文件:

touch 1?.txt

2. 查询inode :

[oracle@test]$ ll -i

total 14694452

17956913 -rw-r--r-- 1 oracle oinstall         0 Jan 18 20:24 1?.txt

3. 修改测试文件名:

find . -inum 17956913 -exec mv {} file.txt ;

4. 检查修改结果

[oracle@test]$ ll

total 14694452

....

-rw-r--r-- 1 oracle oinstall         0 Jan 18 20:24 file.txt

记录:删除乱码的文件可使用 find . -inum 17956913 -exec rm {} ;

篇4:Linux中RM快速删除大量文件/文件夹方法linux操作系统

删除文件直接使用rm就可以删除文件了,删除目录了可以使用rm来删除,下面我们一起来看看Linux中RM快速删除大量文件/文件夹方法.

昨天遇到一个问题,在Linux中有一个文件夹里面含有大量的Cache文件(夹),数量级可能在百万级别,使用rm -rf ./* 删除时间慢到不可接受,Google了一下,查到了一种方法,试用了下确实比单纯使用rm快了一个数量级,

方法见下:

1)首先建立一个空白文件夹。

mkdir /tmp/www.111cn.net

2)之后使用以下语句即可快速的删除文件。

rsync --delete-before -d /tmp/www.111cn.net/ /the/folder/you/want/delete/

原文中说不要忘记文件夹后的“/”

3)一杯咖啡过后,就Ok了。

篇5:linux中find grep perl配合实现查找替换内容linux操作系统

在linux中查找文件,替换都是使用命令模式来执行,下面我来介绍在linux中find grep perl配合实现查找替换内容,有需要的朋友可参考,

可以用find配合sed或者perl来完成

查找当前目录下,把

代码如下复制代码

替换成

代码如下复制代码

find ./ -type f -exec sed -i ”s//

content=“text/html; charset=utf-8” />/g“ {} ;

上边是在linux,好像centos也可以,但是FreeBSD上不行,懒得查语法了,

搞了个find+perl的版本

把abc换成def

代码如下复制代码find ./ -type f | xargs perl -pi -e ”s/abc/def/g“

FreeBSD不行,可能是shell不对。切换到bash,没报错了

上面只是简单的介绍,如果更复杂的大家可自行百度搜索。

篇6:linux中.* 匹配文件与目录注意事项linux操作系统

在我的本地home目录下,为了修改所有隐藏文件的属性,使用了.*来匹配执行chown -R,结果导致了整个/home目录以及下面所有其它用户目录的属性都被修改了,最直接的后果就是导致所有其他的用户都无法登陆服务器了,因为我们采用了SSH Key。

而问题的根本原因在于,使用.*在Linux下匹配文件和目录时,上级目录作为..会被匹配到。

而即使是这样,那也不会导致问题吧?但事实上并非如此,因为.*并不只会匹配当前的上级目录..,经过测试它还会依次匹配到上级的上级目录../..,

正所谓无图无真相,下面是我的相关操作步骤,可以清楚的看到使用.*之后,直接修改了上级..与上级的上级../..目录属性。

因此,正确的做法,应该使用正则表达式 .[^.]* 来精确匹配当前目录下的隐藏文件。

最后,我想试一下rm和mv会造成什么样严重的后果,却发现执行rm和mv在匹配.*时都会保护 . 与 ..,并不会造成问题。

篇7:linux中文件与文件目录管理命令linux操作系统

在linux中文件的所有权标志是用户ID(UID),chown命令更改某个文件或目录的所有权。例如,超级用户把自己的一个文件拷贝给用户xu,为了让用户xu能够存取这个文件,超级用户(root)应该把这个文件的属主设为xu,否则,用户xu无法存取这个文件。

chown命令的语法格式是:

chown [选项]用户或组文件1[文件2...]

用户可以是用户名或用户ID。文件是以空格分开的要改变权限的文件列表,可以用通配符表示文件名。如果改变了文件或目录的所有权,原文件主将不再拥有该文件或目录的权限。系统管理员经常使用chown命令,在将文件拷贝到另一个用户的目录下以后,让用户拥有使用该文件的权限。

在Linux下,每个文件又同时属于一个用户组。当你创建一个文件或目录,系统会赋予它一个用户组关系,用户组的所有成员都可以使用此文件或目录。文件用户组关系的标志是GID。文件的GID只能由文件主或超级用户(root)来修改。chgrp命令可以改变文件的GID,其语法格式为:

chgrp [选项] group文件名

其中group是用户组ID。文件名是以空格分开的要改变属组的文件列表,它支持通配符。

Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作。访问权限规定三种不同类型的用户:文件主(owner)、同组用户(group)、可以访问系统的其他用户(others)。

访问权限规定三种访问文件或目录的方式:读(r)、写(w)、可执行或查找(x)。

当用ls -l命令或l命令显示文件或目录的详细信息时,最左边的一列为文件的访问权限。其中各位的含义如下:

*文件访问权限

读权限(r)表示只允许指定用户读其内容,而禁止对其做任何的更改操作。将所访问的文件的内容作为输入的命令都需要有读的权限。例如:cat、more等;写权限(w)表示允许指定用户打开并修改文件。例如命令vi、cp等;执行权限(x)允许指定用户将该文件作为一个程序执行。

*目录访问权限

在ls命令后加上-d选项,可以了解目录文件的使用权限:

ls -d

读权限(r)可以列出存储在该目录下的文件,即读目录内容列表。这一权限允许shell使用文件扩展名字符列出相匹配的文件名;写权限(w)表示允许你从目录中删除或添加新的文件,通常只有目录主才有写权限;执行权限(x)允许你在目录中查找,并能用cd命令将工作目录改到该目录。

cat 命令主要作用可归为四种:

1.用来显示文件内容,主要用于读取信息量比较少的文件

命令形式:cat filename

例如:

cat /data/www/robots.txt 查看 /data/www/robots.txt 文件的详细内容

cat -n *.php 把当前目录下的所有的 php 文件都显示出来(按顺序显示)

cat -n /data/www/robots.txt 查看 /data/www/robots.txt 文件的详细内容并加上行号

2.创建文件(只能创建新文件,不能编辑已有文件)

命令形式:cat >filename

例如:

cat >/data/www/robots.txt 创建 /data/www/robots.txt 文件

cat /data/www/index.php >/data/abc/index.php 把 /data/www/index.php 这个文件的内容输入到 /data/www/index.php 这个文件里面去

cat -n /www/index.php >/abc/index.php 把 /www/index.php 这个文件的内容加上行号输入到 /www/index.php 这个文件里面去

3.将几个文件合并为一个文件

命令形式:cat file1 file2 >file

例如:

cat -b /www/index.php /www/about.php >>/www/abc.php 把 /www/index.php 和 /www/about.php 的档案内容加上行号(忽略空白行)后将内容输入到 /www/abc.php 这个文件里(注意这里 abc.php 是原本不存在的)

cat /data/www/*.php >index.php 将 /data/www/*.php 目录下的所有 php 文件合并为 index.php(注意这里 index.php 是 *.php 里面的一个文件)

4.清空文档内容:

例如:

cat /dev/null >/data/robots.txt 此为清空 /data/robots.txt 文件的内容

另外一些关于 cat 命令的技巧,

cat /proc/cpuinfo 显示CPU info的信息

cat /proc/interrupts 显示中断

cat /proc/meminfo 校验内存使用

cat /proc/swaps 显示哪些swap被使用

cat /proc/version 显示内核的版本

cat /proc/net/dev 显示网络适配器及统计

cat /proc/mounts 显示已加载的文件系统

篇8:linux中删除复制移动文件rm,mv,cp命令详解linux操作系统

在linux中对文件的复制删除移动分别会使用到rm,mv,cp三个命令,下面我来给大家介绍一下rm,mv,cp命令对文件的常规操作吧,

先看实例

删除复制移动文件命令

Linux代码

rm -rf /file

-r:递归处理参数

-f:强制删除所有文件

Linux代码

cp /test1/file1 /test3/file2

将file1复制到test3下,并改名为file2

Linux代码

cp -a test test1

将test目录下的所有子目录复制到test1下

Linux代码

mv /test1/file1 /test2/test2

将file1移动到test2下,并改名为test2

cp命令

该命令d功能匙将给出d文件或目录拷贝到另一文件或目录中,同MSDOS下dcopy命令一样,功能十分强大。

语法: cp [选项] 源文件或目录 目标文件或目录

说明:该命令把指定d源文件复制到目标文件或把多个源文件复制到目标目录中。

该命令d各选项含义如下:

- a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项d组合。

- d 拷贝时保留链接。

- f 删除已经存在d目标文件而不提示。

- i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,匙交互式拷贝。

- p 此时cp除复制源文件d内容外,还将把其修改时间和访问权限也复制到新文件中。

- r 若给出d源文件匙一目录文件,此时cp将递归复制该目录下所有d子目录和文件。此时目标文件必须为一个目录名。

- l 不作拷贝,只匙链接文件。

mv 命令

功能说明:移动或更名现有的文件或目录。

语 法:mv [-bfiuv][--help][--version][-S <附加字尾>][-V <方法>][源文件或目录][目标文件或目录]

补充说明:mv可移动文件或目录,或是更改文件或目录的名称,

参 数:

-b或--backup 若需覆盖文件,则覆盖前先行备份。

-f或--force 若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文 件或目录。

-i或--interactive 覆盖前先行询问用户。

-S<附加字尾>或

--suffix=<附加字尾> 与-b参数一并使用,可指定备份文件的所要附加的字尾。

-u或--update 在移动或更改文件名时,若目标文件已存在,且其文件日期比源文件新,则不覆盖目标文件。

-v或--verbose 执行时显示详细的信息。

-V=<方法>或

--version-control=<方法> 与-b参数一并使用,可指定备份的方法。

--help 显示帮助。

--version 显示版本信息。

名称:rm

使用权限:所有使用者

使用方式:rm [options] name...

说明:删除档案及目录。

参数:?

-i 删除前逐一询问确认。

-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。

-r 将目录及以下之档案亦逐一删除。

范例:

删除所有C语言程式档;删除前逐一询问确认 :

rm -i *.c

将 Finished 子目录及子目录中所有档案删除 :

rm -r Finished

功能说明:删除文件或目录。

语 法:rm [-dfirv][--help][--version][文件或目录...]

补充说明:执行rm指令可删除文件或目录,如欲删除目录必须加上参数”-r",否则预设仅会删除文件。

参 数:

-d或--directory 直接把欲删除的目录的硬连接数据删成0,删除该目录。

-f或--force 强制删除文件或目录。

-i或--interactive 删除既有文件或目录之前先询问用户。

-r或-R或--recursive 递归处理,将指定目录下的所有文件及子目录一并处理。

-v或--verbose 显示指令执行过程。

--help 在线帮助。

--version 显示版本信息。

学习心得如何总结

3DSMAX学习心得总结

linux中清理/var/log/clientmqueue目录文件linux操作系统

Linux下查看文件和文件夹大小命令linux操作系统

Linux mv与cp命令实现文件与目录移动linux操作系统

linux中./configure命令参数解析linux操作系统

名字带“\”文件夹的创建与删除

shell问答16:批量修改文件名后缀Unix系统

linux 操作技巧(二)Linux

php实习报告

linux中find与rm实现查找并删除目录或文件linux操作系统
《linux中find与rm实现查找并删除目录或文件linux操作系统.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

【linux中find与rm实现查找并删除目录或文件linux操作系统(锦集8篇)】相关文章:

Linux删除文件及大量文件删除方法linux操作系统2022-11-04

Linux常用命令及与vi、gdb这两个命令的运用2022-10-05

Linux配置MySQL数据库详解linux操作系统2022-11-22

如何让系统自动备份网站数据经验2022-10-30

Shell中的变量使用小结2022-07-08

Linux不完全手册2023-08-05

一个中国黑客公开信2023-09-08

小站长浅谈网站自动采集与的利弊2023-08-24

教你用Linux完成Oracle自动物理备份2023-06-07

Office中复制移动删除文档2023-10-06