Issue with Select-String

This topic contains 0 replies, has 1 voice, and was last updated by  Forums Archives 5 years, 11 months ago.

  • Author
    Posts
  • #5278

    by JonBryce at 2012-11-14 12:08:01

    How do. Just had an issue here in production with a script of mine that uses 'Select-String'.

    What happens is...
    – the script uses PSFTP to send some files from here to a remote directory. It scrolls output to a txt file
    – I use 'Select-String' within the txt file output to see if the file transfer worked: something like...

    $TMP_FOLDER = "C:\Temper\TEMP"

    if ( Select-String -pattern '/users/transfers/FILE1.TRANSTMP -> /users/transfers/FILE1.TRN' -path $TMP_FOLDER\XFER_TODAY.txt -list -quiet )
    {
    write-Output "Found it"
    }
    else
    {
    write-Output "Missing"
    }

    (I've changed file names to protect the innocent...). This worked fine in my testing, and in prod for three days. Today it failed to find the text. But when I grab the XFER_TODAY.txt file and run the same logic, it works fine.

    So – anything funny with Select-String? Or maybe my PSFTP had the file locked exclusive and 'Select-String' failed to go through the lock?

    Thoughts welcome – and thanks!

    by nohandle at 2012-11-14 14:02:57

    Hi,
    it is hard to say what exactly went wrong.
    You should implement some logging and exception handling to be aware of any errors.

    btw: the patttern is regex and . has some special meaning in regex. not really a problem in this case but you should use -simpleMatch operator.

    by JonBryce at 2013-01-28 10:58:49

    Thanks Jakub – I'll put in the '-simplematch'. I already have logging and exception – but I'll see what else I can do.

    Regards

You must be logged in to reply to this topic.