---
page_title: fileexists function reference
description: The `fileexists` function determines whether a file exists at a given path. Learn how to use the `fileexists` function in Packer templates.
---

# `fileexists` Function

`fileexists` determines whether a file exists at a given path.

```hcl
fileexists(path)
```

Functions are evaluated during configuration parsing rather than at apply time,
so this function can only be used with files that are already present on disk
before Packer takes any actions.

This function works only with regular files. If used with a directory, FIFO,
or other special mode, it will return an error.

## Examples

```shell-session
> fileexists("${path.folder}/hello.txt")
true
```

```hcl
fileexists("custom-section.sh") ? file("custom-section.sh") : local.default_content
```

## Related Functions

- [`file`](/packer/docs/templates/hcl_templates/functions/file/file) reads the contents
  of a file at a given path.
