On Monday, February 9, 2015 1:59 PM, Andreas Schwab <[email protected]>
wrote:
>> According this documentation `help test`, I am expecting it should return
>> false on anything other than a regular file,
>>
>> -f FILE True if file exists and is a regular file.
>>
>>
>> but why it returned true on a symlink to a regular file?
> (bash) Bash Conditional Expressions::
Unless otherwise specified, primaries that operate on files follow
symbolic links and operate on the target of the link, rather than the
link itself.
> Andreas.
Then the builtin test help need a documentation fix, right?
For some purpose, I need to make sure the file is regular (like for creating
archives); will have to do something like this?
[ -f tmp/sym-link ] && {
[ -h tmp/sym-link ] && echo do something to break the symlink
}
do something to break link