I'm hoping to use the `Write-Verbose` commandlet in scripts and functions. It works as expected in script (.ps1) files, but not in module (.psm1) files--the commandlet is ignored in modules.

Running the following script:

```
PS> .\scaffold.ps1 -verbose

```

Produces:

```
VERBOSE: starting foo
path: c:\bar.txt
[missing entry here - 'verbose path: c:\bar.txt']
VERBOSE: ending foo

```

scaffold.ps1:

```
[cmdletbinding()]
param()

import-module Common -force

write-verbose "starting foo"

foo "c:\bar.txt"

write-verbose "ending foo"

```

Common.psm1:

```
function foo {

  [cmdletbinding()]
  Param(
    [string]$path
  )

  write-host "path: $path"
  write-verbose "verbose path: $path"

}

```

I haven't associated a manifest (.psd1) with the module (.psm1) at this point.

Is there a module-specific syntax that I need to use?

\*\* edit \*\*

What I need is a way to determine if the `-verbose` flag has been set on the .PS1 file so I can pass it to the .PSM1 file.

scaffold.ps1:

```
[cmdletbinding()]
param()

import-module Common -force

write-verbose "starting foo"

foo "c:\bar.txt" $verbose_flag # pass verbose setting to module based on what was set on the script itself

write-verbose "ending foo"

```