我试图将当前目录下的所有文件和所有子目录收集到一个目录中。我正在尝试类似以下内容
find -type f -exec mv {} collection/{} \;
Run Code Online (Sandbox Code Playgroud)
上面的命令不起作用,因为第二个{}给出了完整路径,我如何收集所有文件?
我想找出几个命令的类型。是否可以将管道或xargs搜索结果从Linux 中find的type命令输入到命令中?
例如:
find . -name anacron | type
Run Code Online (Sandbox Code Playgroud)
或者
find . -name anacron | xargs type
Run Code Online (Sandbox Code Playgroud) 我希望我的 bash 仅在找到某些内容时才使用 find 命令打印“找到”。但是使用 && 无济于事:即使什么也没找到,我也会打印“找到”。例子:
$ pwd
/data/data/com.termux/files/home/test/test1/test4
$ ls
xaa xab
$ find . -name xac && echo 'found'
found
$ find . -name xaa && echo 'found'
./xaa
found
Run Code Online (Sandbox Code Playgroud) 我想计算目录中每个扩展名的文件数以及没有扩展名的文件数。
我尝试了几个选项,但还没有找到可行的解决方案:
find "$folder" -type f | sed 's/.*\.//' | sort | uniq -c是一个选项,但如果没有文件扩展名则不起作用。我需要知道有多少文件没有扩展名。
我还尝试了一个 find 循环到一个数组中,然后对结果求和,但此时该代码抛出了一个未声明的变量错误,但仅在循环之外:
declare -a arr
arr=()
echo ${arr[@]}
Run Code Online (Sandbox Code Playgroud)
这将抛出一个未声明的变量,一旦 find 循环完成。
我正在尝试获取在特定时间段之间修改的文件列表,如本答案中所述。
我将日期和时间存储在两个变量 [nn 和 nn1(愚蠢的命名)] 中并尝试使用find命令。我收到以下错误 -
vikram@vikram-Studio-XPS-1645:~$ echo $nn1
10-04-12 23:26:48
vikram@vikram-Studio-XPS-1645:~$ echo $nn
10-05-12 00:26:48
vikram@vikram-Studio-XPS-1645:~$ find . -newermt $nn -and -not -newermt $nn1 -print
find: paths must precede expression: 00:26:48
Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]
vikram@vikram-Studio-XPS-1645:~$
Run Code Online (Sandbox Code Playgroud)
为什么会出现这个错误??
我想将所有*.txt文件从位于给定目录中的所有子目录移动到一个目标目录。
执行以下操作时,它会移动每个文件 - 如何将其减少到所有*.txt文件?
find -type f -print0|xargs -0r mv -it "/path to my folder/destination-directory"
Run Code Online (Sandbox Code Playgroud) 当我find用来查看目录中的所有 pdf 文件时/home,我看到的是access denied. 为了消除它们,我尝试过:
find /home -iname "*.pdf" | grep -v "access denied"
Run Code Online (Sandbox Code Playgroud)
然而,结果是一样的。我怎样才能摆脱这些线?
这些年来,我收集和存储了数十万个文件,个人资料,例如照片、视频和文档。它们中的大多数是按类型、日期和主题组织的……但有些(如 10k 文件)没有组织,并且在大约 2 年前从一个目录移动到另一个目录并重命名了几次。我正在寻找其中一些文件的(路径)(希望我没有意外删除它们)。
文件重命名是否保存在任何日志或元数据中?
有没有办法使用重命名前的名称搜索旧文件?如果是,我使用什么命令或工具?
我知道文件类型、大致尺寸和一些可能的名称,但仍然没有找到任何find命令。