x=$(find . -name "*.txt")
echo $x
Run Code Online (Sandbox Code Playgroud)
如果我在Bash shell中运行上面的代码,我得到的是一个包含多个文件名的字符串,用空格分隔,而不是列表.
当然,我可以进一步将它们分开来获取列表,但我确信有更好的方法可以做到这一点.
那么循环find执行命令结果的最佳方法是什么?
我正在使用Visual Studio 2010,当我执行"在文件中查找"时,结果将返回到"查找结果1"窗口,该窗口停靠在我的代码编辑器窗口下方.
之前,我会在"查找结果"窗口中双击其中一个结果,我单击的文件将在代码编辑器面板中打开.
问题是现在,当我点击其中一个结果时,它会在与查找结果窗口相同的面板中打开,该窗口恰好比代码编辑器窗口小得多.
有谁知道如何制作它,以便当我双击搜索结果时,它们会再次在代码编辑器窗口中打开?
谢谢!
replace find visual-studio-2010 visual-studio visual-studio-2012
find . -type d
Run Code Online (Sandbox Code Playgroud)
可用于查找某些起点下方的所有目录.但它.也会返回当前目录(),这可能是不受欢迎的.如何排除它?
我需要从目录(gif,png,jpg,jpeg)中找到所有图像文件.
find /path/to/ -name "*.jpg" > log
Run Code Online (Sandbox Code Playgroud)
如何修改此字符串以查找不仅仅是.jpg文件?
有没有办法find执行我在shell中定义的函数?例如:
dosomething () {
echo "doing something with $1"
}
find . -exec dosomething {} \;
Run Code Online (Sandbox Code Playgroud)
结果是:
find: dosomething: No such file or directory
Run Code Online (Sandbox Code Playgroud)
有没有办法让find的-exec看dosomething?
在bash中我想为.php|.html|.js包含不区分大小写的字符串的每个类型的文件返回文件名(以及文件的路径)"document.cookie" | "setcookie"
我该怎么办?
我有一个大约有100000个文件的目录,我想对所有以指定字符串开头的文件执行某些功能,这可能会匹配成千上万的文件.
我试过了
ls mystring*
Run Code Online (Sandbox Code Playgroud)
但是这会返回bash错误'Too many arguments'.我的下一个计划是使用
find ./mystring* -type f
Run Code Online (Sandbox Code Playgroud)
但这有同样的问题.
代码需要看起来像
for FILE in `find ./mystring* -type f`
do
#Some function on the file
done
Run Code Online (Sandbox Code Playgroud)
谢谢,Rik
为什么使用之间的输出存在差异
find . -exec ls '{}' \+
Run Code Online (Sandbox Code Playgroud)
和
find . -exec ls '{}' \;
Run Code Online (Sandbox Code Playgroud)
我有:
$ find . -exec ls \{\} \+
./file1 ./file2
.:
file1 file2 testdir1
./testdir1:
testdir2
./testdir1/testdir2:
$ find . -exec ls \{\} \;
file1 file2 testdir1
testdir2
./file2
./file1
Run Code Online (Sandbox Code Playgroud) 我怎样写一个bash脚本,通过每一个目录使用一个parent_directory内执行一个命令在每个目录.
目录结构如下:
parent_directory(名称可以是任何内容 - 不遵循模式)
- 001(目录名称遵循此模式)
- 0001.txt(文件名遵循此模式)
- 0002.txt
- 0003.txt
- 002
- 0001.txt
- 0002.txt
- 0003.txt
- 0004.txt
- 003
- 0001.txt
目录数量未知.
我正在尝试删除超过15天的sql文件的命令.
查找部分正在工作但不是rm.
rm -f | find -L /usr/www2/bar/htdocs/foo/rsync/httpdocs/db_backups -type f \( -name '*.sql' \) -mtime +15
Run Code Online (Sandbox Code Playgroud)
它会列出我想删除的文件列表,但不会删除它们.路径是正确的.
usage: rm [-f | -i] [-dIPRrvW] file ...
unlink file
/usr/www2/bar/htdocs/foo/rsync/httpdocs/db_backups/20120601.backup.sql
...
/usr/www2/bar/htdocs/foo/rsync/httpdocs/db_backups/20120610.backup.sql
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?