On 2019-03-03 13:33 UTC Junio C Hamano <gitster@xxxxxxxxx> wrote: > test -s <path> makes sure <path> is file; if it is not a file, then > it won't yield true. > On 2019-03-03 13:20 UTC Rohit Ashiwal <rohit.ashiwal265@xxxxxxxxx> wrote: > > test_path_is_file "$1" && > > if ! test -s "$1" According to the conditional if the path is not a file then we will get the error "file does not exist" and then we will shortcircuit without checking the second conditional, on the other hand, if path is a file then we will again check if it has a size greater than zero, then error will be different (if any). Regards Rohit