Please format your code as code using the code tag button right above the edit windows of the post editor. You can edit your already existing post and fix this.
If you mean some file on your system that you want to use on a remote host, then it has to be scoped. See the documentation.
you could use local variables in remote PowerShell sessions by passing arguments to the remote scriptblock and capturing them inside the scriptblock with either the $args automatic variable or param() blocks. But since Windows PowerShell v3, we can use the scope modifier $using to change the scope of local variables. This makes them work in the remote session very easily without passing any arguments and capturing the arguments or parameters.
You can use them with Invoke-Command and New-PSSession:
SHORT DESCRIPTION
Explains how to use local and remote variables in remote commands.
LONG DESCRIPTION
You can use variables in commands that you run on remote computers. Simply assign a value to the variable and then use the variable in place of the value.
By default, the variables in remote commands are assumed to be defined in the session in which the command runs. You can also use variables that are defined in the local session, but you must identify them as local variables in the command.
USING LOCAL VARIABLES
You can also use local variables in remote commands, but you must indicate that the variable is defined in the local session.
Beginning in Windows PowerShell 3.0, you can use the Using scope modifier to identify a local variable in a remote command.
The syntax of Using is as follows:
$Using:<VariableName>
In the following example, the $ps variable is created in the local session, but is used in the session in which the command runs. The Using scope modifier identifies $ps as a local variable.
If I understood what you’re trying to do you don’t need a proces block. Invoke-Command should be able do deal with multiple sessions by itself. The script block inside Invoke-Command runs on the remote machine. Therefor the path inside this script block points to the remote machines path. You can populate the content of the IPList file outside the script block and use the variable inside. This should work actually