find命令查找处理空格
(2018-09-12 16:35:17)
					
											标签:
																				
                            杂谈 | 
					分类: linux | 
			问题:登陆一台Linux 需要查找文件要对文件名拼接执行的操作系统命令
							
		
						
		
		
		
		
		例一:
- 首先创建测试的文件
 
1.[wenxiao@ntceshi ~]$ touch
{win.txt,unix.txt,linux.txt,mac.txt}
2.[wenxiao@ntceshi ~]$ touch {"win 
.txt","unix  .txt","linux 
.txt","mac  .txt"}    
3.[wenxiao@ntceshi ~]$ touch
{"新建文本文档.txt","新建文本文档 (2).txt","新建文本文档 (3).txt","新建文本文档
(4).txt"} 
1.中创建了四个普通的文件,文件名不带空格,
2.中创建了四个普通的文件,文件名去拿不都带有空格,
3.创建了windowns四个中文文件名有空格和括号的文件名
- 使用find 处理
 
使用ifnd命令查找这些文件,然后执行ls -l 查看详细信息
示例如下:
find  .
-maxdepth 1 -type f  | xargs ls
-l   
命令解释:在当前目录查找类型为常规文件,不加(-maxdepth 1,此参数仅适用于linux
)此参数默认递归所有目录。
执行如下:
[wenxiao@ntceshi test]$
find  . -maxdepth 1 -type f  |
xargs ls -l   
ls: cannot access ./win: No
such file or directory
ls: cannot access .txt: No such
file or directory
ls: cannot access ./linux: No
such file or directory
ls: cannot access .txt: No such
file or directory
ls: cannot access ./新建文本文档: No
such file or directory
ls: cannot access (4).txt: No
such file or directory
ls: cannot access ./unix: No
such file or directory
ls: cannot access .txt: No such
file or directory
ls: cannot access ./新建文本文档: No
such file or directory
ls: cannot access (2).txt: No
such file or directory
ls: cannot access ./mac: No
such file or directory
ls: cannot access .txt: No such
file or directory
ls: cannot access ./新建文本文档: No
such file or directory
ls: cannot access (3).txt: No
such file or directory
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:19 ./linux001.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./linux.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./mac.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./unix.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./win.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:25 ./新建文本文档.txt
因为空格的原因会导致ls 执行失败
解决办法:
使用 find  . -maxdepth 1 -type
f  -print0  |
xargs  -0 ls -l     
[wenxiao@ntceshi test]$
find  . -maxdepth 1 -type f 
-print0  | xargs  -0 ls
-l     
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:19 ./linux001.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./linux  .txt 
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./linux.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./mac  .txt 
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./mac.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./unix  .txt 
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./unix.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./win  .txt 
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./win.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:25 ./新建文本文档 (2).txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:25 ./新建文本文档 (3).txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:25 ./新建文本文档 (4).txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:25 ./新建文本文档.txt
[wenxiao@ntceshi
test]$ 
或者  find  . -maxdepth 1
-type f -exec ls -l {} \;   
[wenxiao@ntceshi test]$
find  . -maxdepth 1 -type f -exec ls -l {}
\; 
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./win  .txt 
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./mac.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./unix.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./win.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:19 ./linux001.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./linux  .txt 
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./linux.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:25 ./新建文本文档 (4).txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./unix  .txt 
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:25 ./新建文本文档 (2).txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:25 ./新建文本文档.txt
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:20 ./mac  .txt 
-rw-rw-r-- 1 wenxiao wenxiao 0
Sep 12 12:25 ./新建文本文档 (3).txt
[wenxiao@ntceshi
test]$ 
前一篇:oracle外部认证用户
										
					
加载中…