标签: find

使用`find`删除

所以,给定三个选项......

  1. find .... -delete
  2. find .... | xargs rm ...
  3. find .... -exec rm ...;

..或其变体,哪个选项更可取?
我猜没有一成不变的答案,具体情况将决定最佳选择(请说出它们的名字!)

干杯。

linux find

7
推荐指数
2
解决办法
901
查看次数

linux上的非递归查找

我正在尝试查找直接位于当前目录内且早于特定年龄的所有目录。诀窍是,我只想考虑当前目录的直接后代的年龄,而不是递归搜索它们。

用法示例用于文件的每日备份 - 每天都会创建一个新目录,但放置在该目录中的文件保留其时间戳并且通常较旧。我希望能够在不删除更新快照中的旧文件的情况下清理旧备份。

看起来find可能无法做到这一点,您推荐什么 unix 工具(或它们的组合)?

linux unix backup bash find

7
推荐指数
1
解决办法
4973
查看次数

文件对于 /dev/null 来说太大了

在测试有问题的 LUN 的读取错误时,我遇到了以下问题:

find /mnt/problem_lun/ -type f -print -exec dd if={} of=/dev/null bs=8k \;
...
/mnt/problem_lun/a_file
dd: writing `/dev/null': File too large
33619977+0 records in
33619976+0 records out
275414843392 bytes (275 GB) copied, 804.171 s, 342 MB/s
Run Code Online (Sandbox Code Playgroud)

IBM 硬件,RHEL 6.6

谁是罪魁祸首,前提是可以读取此特定文件而不会出现任何错误?

linux find dd

7
推荐指数
1
解决办法
547
查看次数

如何计算目录中的所有子文件夹?

如何计算特定文件夹下有多少个文件夹(包括子文件夹)?

linux find directory count

6
推荐指数
1
解决办法
1万
查看次数

为什么这个正则表达式在 linux 上不起作用?

我不能说它适用于 Windows,但根据我的理解,这个正则表达式是正确的,以及我将如何编写它(也许^开头除外)

来自http://www.velocityreviews.com/forums/showpost.php?p=382944&postcount=3

^.+\.((jpg)|(gif)|(exe))$
Run Code Online (Sandbox Code Playgroud)

当我跑

find -regex '^.+\.((jpg)|(gif)|(exe))$'
Run Code Online (Sandbox Code Playgroud)

我写的时候exe不显示

find -regex '^.+\.exe$'
Run Code Online (Sandbox Code Playgroud)

确实如此。为什么find -regex不想使用()或者(()|())?我一直认为这对一切都有效。

linux find regex

6
推荐指数
1
解决办法
4121
查看次数

如何删除具有大量文件的 NFS 文件系统上的目录

一个测试不佳的程序在 NFS 共享上创建了一个包含大量文件的目录,我需要删除这些文件。

ls -ald /home/foo
drwxrwxr-x 2 503 503 317582336 Jul 29 11:38 /home/foo
Run Code Online (Sandbox Code Playgroud)

该目录位于 netapp 类型设备上大约 600GB 的 NFS 安装上。我实际上不知道其中有多少文件,但仅在 10 分钟后创建的类似目录就有 121,000 个文件,因此某处可能有数百万个文件。操作系统是 Linux 2.6 内核。

试图找到一种列出或删除它及其内容的方法。find /home/foo 导致 find 在大约 1 小时后死亡,除了“./”之外没有任何输出

linux nfs find

6
推荐指数
3
解决办法
9760
查看次数

rsync 仅在日期和时间之后创建或修改的文件

目标是仅对在日期之后创建或修改的文件进行 rsync(或使用任何其他提供所需结果的工具)。它应该与包含空格(和/或其他需要转义的字符)的文件名一起使用。

我在 OS X 10.6.5 上成功地使用了这个命令:不过, find . -newermt "2010-11-23 16:52:50" -type f -exec rsync -vuptn '{}' ../rsync_test/ ';'我不认为-newermt在 OS X 之外的其他操作系统上工作。

此命令的问题在于它为每个找到的文件运行一次 rsync,这似乎不是正确的方法。我试图;用 a更改最后一个,+以便它等待整个文件列表,但它会刹车(我确实尝试过"+"\+以及其他逃脱方式)。

背景:我正在尝试在远程位置备份我的文件。这些文件有很多原始格式和其他格式的照片(照片有效。每天大约 30GB),由于上传带宽小(ADSL 很烂),虽然网络同步会花费无法使用的时间。因此,我们的想法是在远程位置拥有大量磁盘空间,并每周一次在小型外部硬盘驱动器上传输新/修改过的文件。然后可以轻松地使用 rsync 在远程位置添加新的/修改过的文件。为此,我需要在一周内在外部硬盘驱动器上同步新的/修改过的文件,因此我总是有每个文件的 2 个副本,要么在远程位置保存一周以上的文件,要么在外部硬盘驱动器上保存新的/修改过的文件自上次运输以来。

我打算让这个命令每 10 分钟 (cron) 运行一次,并使用它上次运行的日期和时间。

你能修复我的命令吗?或者您有更好的解决方案吗?

backup rsync command-line-interface find

6
推荐指数
1
解决办法
3万
查看次数

查找名称小于或大于给定参数的文件

假设在给定的目录中我得到了

tzury@x200:~/Desktop/sandbox$ ls -l
total 20
drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N00.P000
drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N00.P001
drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N00.P002
drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N00.P003
drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N00.P004
drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N01.P000
drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N01.P001
drwxr-xr-x 2 tzury tzury 4096 2011-03-09 10:19 N01.P002
Run Code Online (Sandbox Code Playgroud)

我寻求一种bash方法来获取其名称大于或小于给定参数的文件列表,例如:

$ my_finder lt N00.P003
Run Code Online (Sandbox Code Playgroud)

将返回N00.P000, …

bash find

6
推荐指数
1
解决办法
6719
查看次数

在 Linux 中难以删除文件

互联网上有很多关于此的内容,但大多数示例都是人为的。如何删除真正顽固的文件?例如,

$ find ./ -inum 167794
./àKÈÿÿÿÿ@
$ find ./ -inum 167794 -exec rm \"{}\" \;
rm: cannot lstat `"./\037\340\025K\021\004\310\377\377\377\377@\020\002"': Invalid or incomplete multibyte or wide character
Run Code Online (Sandbox Code Playgroud)

bash find rm

6
推荐指数
2
解决办法
643
查看次数

在 Linux 环境中查找 libmysqlclient.so.X 文件的位置

我正在整理一个需要知道 libmysqlclient.so.[15|16|18] .so 文件的脚本。它通常位于 /usr/lib/ 、 /usr/lib64/ 或上述目录的 mysql/ 子目录中。

我已经尝试了几件事。首先,有时可以在 /etc/ld.so.conf.d/mysql* 中的 mysql 文件中找到该位置,但在许多服务器上并非如此。

另一种可能性是在上述目录中搜索这些文件。我会知道正在使用哪个版本的 MySQL,所以我可以搜索正确的 .so 文件,但不幸的是,很多人似乎安装了多个 .so 文件。例如两者都可能存在:

  • /usr/lib/libmysqlclient.so.15

  • /usr/lib64/libmysqlclient.so.15

在这种情况下,我不确定正在使用哪个 .so 文件。

有没有办法告诉正确的 libmysqlclient.so 安装在哪里?

mysql linux ubuntu find centos

6
推荐指数
1
解决办法
1万
查看次数

标签 统计

find ×10

linux ×7

bash ×3

backup ×2

centos ×1

command-line-interface ×1

count ×1

dd ×1

directory ×1

mysql ×1

nfs ×1

regex ×1

rm ×1

rsync ×1

ubuntu ×1

unix ×1