
我正在使用bash 4.1.5(1)-release(i486-pc-linux-gnu),并且在Google上做了一些关于glob和extglob表达式的一些问题,似乎我应该使用的语法是
$ls **.pdf
因为没有任何文件匹配当前文件夹中的模式* .pdf ./;它似乎要读取**为*:
ls: cannot access **.pdf: No such file or directory
在其他地方有pdf,在1到5深的子文件夹(特别是每个子文件夹1深)中,其中一些可以通过检查
$ls */*.pdf
因此,ls似乎正常工作.它的手册看起来不是很有帮助,因为我可以看到这可能是使用我们使用-R标志来调用ls的,这在上述任何情况下都不能解决问题.
我尝试使用extglob模式(确保使用shopt打开它们).我可以用ls * / *?(.)pdf看到我的深度1文件,但我看不到有ls.*(/ *)pdf或ls.*(/ *).pdf的内容有pdf的子目录
我已经阅读别的地方(在git仓库中引用.gitignore文件),**模式对所有人都不起作用.
这可能会影响我,我该如何补救(理想情况下没有超级用户权限)?可能(或一些相关问题)也会影响extglob功能?
解决方法 你可能想考虑发现find . -name '*.pdf' -exec ls -l {} \; 要么
find . -name '*.pdf' -ls
在哪里是您当前的工作目录. glob功能带有4.0 bash. glob扩展名是不可移植的,换句话说.
总结以上是内存溢出为你收集整理的使用ls来查找与某种模式匹配的所有文件全部内容,希望文章能够帮你解决使用ls来查找与某种模式匹配的所有文件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)