-a file exists.
-b file exists and is a block special file.
-c file exists and is a character special file.
-d file exists and is a directory.
-e file exists (just the same as -a).
-f file exists and is a regular file.
-g file exists and has its setgid(2) bit set.
-G file exists and has the same group ID as this process.
-k file exists and has its sticky bit set.
-L file exists and is a symbolic link.
-n string length is not zero.
-o Named option is set on.
-O file exists and is owned by the user ID of this process.
-p file exists and is a first in, first out (FIFO) special file or
named pipe.
-r file exists and is readable by the current process.
-s file exists and has a size greater than zero.
-S file exists and is a socket.
-t file descriptor number fildes is open and associated with a
terminal device.
-u file exists and has its setuid(2) bit set.
-w file exists and is writable by the current process.
-x file exists and is executable by the current process.
-b file exists and is a block special file.
-c file exists and is a character special file.
-d file exists and is a directory.
-e file exists (just the same as -a).
-f file exists and is a regular file.
-g file exists and has its setgid(2) bit set.
-G file exists and has the same group ID as this process.
-k file exists and has its sticky bit set.
-L file exists and is a symbolic link.
-n string length is not zero.
-o Named option is set on.
-O file exists and is owned by the user ID of this process.
-p file exists and is a first in, first out (FIFO) special file or
named pipe.
-r file exists and is readable by the current process.
-s file exists and has a size greater than zero.
-S file exists and is a socket.
-t file descriptor number fildes is open and associated with a
terminal device.
-u file exists and has its setuid(2) bit set.
-w file exists and is writable by the current process.
-x file exists and is executable by the current process.
-z string length is zero.
是用
-s 还是用 -f 这个区别是很大的!
如果需要判断文件存在并且文件大小大于0 ,直接用参数-s即可,不需要在用awk和ls等来得到文件大小。
如果只判断文件是否存在,则用参数 -f 即可。
2个文件如果相同diff回返回0 即命令执行成功 如果文件不相同 则返回1
那么直接
if diff fiel1 fiel2
then
2个文件相同哦,在这里要要干嘛就干嘛
else
2个文件不相同哦,你爱干嘛就干嘛
fi
本文深入探讨了Linux环境下文件属性的多种检查方式,包括如何通过命令行工具如`-s`, `-f`, `-x`等快速判断文件状态,并详细解释了这些属性在实际操作中的应用。此外,文章还介绍了如何使用`diff`命令来比较两个文件的差异,以及在文件比较后的处理逻辑。旨在帮助开发者和系统管理员高效地管理和操作文件。
1858

被折叠的 条评论
为什么被折叠?



