例子 :
find /sdcard/ \( -iname '*.gif' -o -iname '*.sh' \) -exec ls -l {} \;
-rw-rw---- root sdcard_r 552 2016-01-11 02:31 scr.sh
-rw-rw---- root sdcard_r 12 2017-06-20 09:44 2.gif
会打印没有完整路径的 scr.sh 和 2.gif 吗?如何使用完整路径打印此内容,例如
-rw-rw---- root sdcard_r 552 2016-01-11 02:31 /sdcard/scr.sh
或者其他的东西 ?
答案1
你所拥有的应该有效 - 例如:
Linux(Ubuntu 16.04)
$ find /var/www/html -type f -exec ls -l {} \;
-rw-r--r-- 1 root root 6 Nov 29 2016 /var/www/html/index.html
Linux(CentOS 7)
$ find ~/ -iname '*.txt' -exec ls -l {} \;
-rw-rw-r-- 1 craig craig 0 Jul 18 08:33 /home/craig/1.txt
-rw-rw-r-- 1 craig craig 0 Jul 18 08:33 /home/craig/2.txt
苹果电脑 (10.11.6)
$ find ~/Desktop \( -iname '*.txt' -o -iname '*.localized' \) -exec ls -l {} \;
-rw-r--r-- 1 craig staff 0 13 May 2016 /Users/craig/Desktop/.localized
-rw-r--r-- 1 craig staff 0 18 Jul 09:29 /Users/craig/Desktop/file.txt
答案2
只需使用-ls
子命令即可:
find /sdcard/ \( -iname '*.gif' -o -iname '*.sh' \) -ls
答案3
如果您位于要搜索的目录中,则插入pwd
将使 find 打印完整路径。例如:
cd /sdcard/
find $(pwd) \( -iname '*.gif' -o -iname '*.sh' \)