Rohit Ashiwal <rohit.ashiwal265@xxxxxxxxx> writes: > Just to be clear of what caused the error: > 1. Path not being file, or > 2. File not being empty > I am checking for both. test -s <path> makes sure <path> is file; if it is not a file, then it won't yield true. So why do you need to say test_path_is_file yourself, if you are asking "test -s"?