如何从UNIX的'ls'输出中检查结果中的每个项目是目录还是文件如何在UNIX中的'ls'输出中检查结果中的每个项目是目录还是文件
我有成千上万的文件和文件夹。所有创建错误,例如
HHYY
KKJH
JGGF
问题是在某些情况下,项目应该是一个实际的文件,而不是foldere。
例
HHYY
KKJH.txt
JGGF
所以我现在需要的所有实际文件移动到新位置,我试图找出文件
如何从UNIX的'ls'输出中检查结果中的每个项目是目录还是文件如何在UNIX中的'ls'输出中检查结果中的每个项目是目录还是文件
我有成千上万的文件和文件夹。所有创建错误,例如
HHYY
KKJH
JGGF
问题是在某些情况下,项目应该是一个实际的文件,而不是foldere。
例
HHYY
KKJH.txt
JGGF
所以我现在需要的所有实际文件移动到新位置,我试图找出文件
for file in *
do
if [ -f "$file" ]
then ...
fi
done
ls -l
有以下一些类型的输出。
drwxr-xr-x 2 root root 4096 oct 9 2011 xml
在上面的行中,第一个字符“d”表示它的一个目录。 如果第一个字符是“l”,则表示它是一个符号链接。
希望这会有所帮助。
谢谢迈克尔。我们正在做一些事情。这里的问题是我需要将文件列为日志文本文件KKJH。现在他们被列为./KKJH。因为每个文件都要存储在一个名称为 – user1526912 2013-03-05 00:27:59
''find'的独特文件夹中,所以我将最终选择一个脚本来执行此操作。 -type f'将递归列出所有普通文件; '找。 -type d'将递归列出所有目录。 – 2013-03-05 01:31:41