Use the Shell to judge
#!/bin/sh
mypath= "/var/log/httpd/"
myfile= "/var/log/httpd/access.log"
<pre name= "code" class= "CPP "Style=" Color:rgb (51, 51, 51); font-size:14px; line-height:24px; " ><span style= "Font-family:arial, ' Courier New ', Courier, Arial, monospace, ' Microsoft Yahei '; White-space:pre-wrap; " The >#-x parameter determines whether the $mypath exists and has executable permissions </span>
if [!-X "$myPath"]; Then mkdir "$myPath" FI # Here's the-D parameter to determine if $mypath exists if [!-D "$myPath"]; Then mkdir "$myPath" FI # Here's the-f parameter to determine if $myfile exists if [!-F "$myFile"]; Then touch "$myFile" Fi # Other parameters-n,-n is to determine if a variable has a value if [!-n "$myVar"]; Then echo "$myVar is empty" Exit 0 Fi # Two variables determine if equal if ["$var 1" = "$var 2"]; Then echo ' $var 1 eq $var 2 ' else echo ' $var 1 not EQ $var 2 ' fi-f and-e differences Conditional Logic on files-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 have its setgid (2) bit set. -G file exists and have the same group ID as this process. -K file exists and have 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 have 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. Is the difference between-s or with-F is very big.