Topic "RemoveFiles/PutFiles"

Author Message
ferpega
[View user's profile]

Joined: 2017-05-19
Posts: 3
Location: Fernando
Hello

<TL;DR>
RemoveFiles function is reporting it is succed (but the file remains not deleted), but PutFiles is reporting error 11 (File already exists).

It seems WinSCP application is deleting files in a right way.
</TL;DR>

We are using WinSCPNet version: 1.3.7.7441 (last nuget package)

I have this Session and transfer options (on this/failing Dev environment):
Code:
new SessionOptions
            {
                Protocol = Protocol.Sftp,
                GiveUpSecurityAndAcceptAnySshHostKey = true,
                HostName = _configurationRepository.FtpServer,
                UserName = _configurationRepository.FtpLogin,
                Password = _configurationRepository.FtpPassword,
            };
result.AddRawSettings("SFTPMaxVersion", _configurationRepository.FtpSftpMaxProcolVersion);


Code:
new TransferOptions()
            {
                TransferMode = TransferMode.Binary,
                OverwriteMode = OverwriteMode.Overwrite,
                PreserveTimestamp = false,               
            };
result.ResumeSupport.State = TransferResumeSupportState.Off;



We are deleting every file before Put it on the remote server.
* RemoveFiles function is reporting it is succed
* PutFiles function is reporting error 11.

Here you have a complete session. We have the same problem with files with no special characters, ie: ATT00001.txt

Quote:
> 2017-05-19 11:48:49.269 Script: rm -- "/Adjuntos/ATC0000000000000000660/DOC353[1].pdf"
. 2017-05-19 11:48:49.270 Listing directory "/Adjuntos/ATC0000000000000000660".
> 2017-05-19 11:48:49.270 Type: SSH_FXP_OPENDIR, Size: 41, Number: 2827
< 2017-05-19 11:48:49.299 Type: SSH_FXP_HANDLE, Size: 17, Number: 2827
> 2017-05-19 11:48:49.300 Type: SSH_FXP_READDIR, Size: 17, Number: 3084
< 2017-05-19 11:48:49.330 Type: SSH_FXP_NAME, Size: 473, Number: 3084
> 2017-05-19 11:48:49.330 Type: SSH_FXP_READDIR, Size: 17, Number: 3340
< 2017-05-19 11:48:49.354 Type: SSH_FXP_STATUS, Size: 29, Number: 3340
< 2017-05-19 11:48:49.354 Status code: 1
> 2017-05-19 11:48:49.354 Type: SSH_FXP_CLOSE, Size: 17, Number: 3588
. 2017-05-19 11:48:49.354 .;d;0;2017-05-19T09:48:46.000Z;3;"root" [0];"root" [0];rw-r--r--;0
. 2017-05-19 11:48:49.355 ..;d;0;2017-05-19T09:48:46.000Z;3;"root" [0];"root" [0];rw-r--r--;0
. 2017-05-19 11:48:49.355 ATC0000000000000000660.pdf;-;28241;2017-05-19T09:48:46.000Z;3;"root" [0];"root" [0];rwxr--r--;0
. 2017-05-19 11:48:49.355 DOC353[1].pdf;-;70084;2017-05-17T11:03:41.000Z;3;"root" [0];"root" [0];rwxr--r--;0
< 2017-05-19 11:48:49.355 Script: No file matching 'DOC353[1].pdf' found.
> 2017-05-19 11:50:09.941 Script: put -delete -nopermissions -nopreservetime -transfer="binary" -resumesupport="off" -- "C:\Users\ferpega\AppData\Local\Temp\ProjectName\20170517_105926\Adjuntos\ATC0000000000000000660\DOC353[1].pdf" "/Adjuntos/ATC0000000000000000660/DOC353[1].pdf"
. 2017-05-19 11:50:09.941 Copying 1 files/directories to remote directory "/Adjuntos/ATC0000000000000000660/"
. 2017-05-19 11:50:09.941 PrTime: No; PrRO: No; Rght: rw-r--r--; PrR: No (No); FnCs: N; RIC: 0100; Resume: N (102400); CalcS: No; Mask: DOC353[1].pdf
. 2017-05-19 11:50:09.941 TM: B; ClAr: No; RemEOF: No; RemBOM: No; CPS: 0; NewerOnly: No; InclM: ; ResumeL: 0
. 2017-05-19 11:50:09.941 AscM: *.*html; *.htm; *.txt; *.php; *.php3; *.cgi; *.c; *.cpp; *.h; *.pas; *.bas; *.tex; *.pl; *.js; .htaccess; *.xtml; *.css; *.cfg; *.ini; *.sh; *.xml
. 2017-05-19 11:50:09.942 File: 'C:\Users\ferpega\AppData\Local\Temp\ProjectName\20170517_105926\Adjuntos\ATC0000000000000000660\DOC353[1].pdf' [2017-05-19T09:46:56.175Z] [70084]
. 2017-05-19 11:50:09.942 Copying "C:\Users\ferpega\AppData\Local\Temp\ProjectName\20170517_105926\Adjuntos\ATC0000000000000000660\DOC353[1].pdf" to remote directory started.
. 2017-05-19 11:50:09.942 Binary transfer mode selected.
. 2017-05-19 11:50:09.942 Opening remote file.
> 2017-05-19 11:50:09.942 Type: SSH_FXP_OPEN, Size: 71, Number: 3843
< 2017-05-19 11:50:09.942 Type: SSH_FXP_STATUS, Size: 17, Number: 3588
. 2017-05-19 11:50:09.942 Discarding reserved response
< 2017-05-19 11:50:09.969 Type: SSH_FXP_STATUS, Size: 38, Number: 3843
< 2017-05-19 11:50:09.969 Status code: 11, Message: 3843, Server: File alaready exists., Language:
> 2017-05-19 11:50:09.970 Type: SSH_FXP_LSTAT, Size: 55, Number: 4103
< 2017-05-19 11:50:09.997 Type: SSH_FXP_ATTRS, Size: 37, Number: 4103
* 2017-05-19 11:50:09.997 (ETerminal) File already exists.
* 2017-05-19 11:50:09.997 Error code: 11
* 2017-05-19 11:50:09.997 Error message from server: File alaready exists.
. 2017-05-19 11:50:09.997 Asking user:
. 2017-05-19 11:50:09.997 Cannot overwrite remote file '/Adjuntos/ATC0000000000000000660/DOC353[1].pdf'.$$
. 2017-05-19 11:50:09.997
. 2017-05-19 11:50:09.997 Press 'Delete' to delete the file and create new one instead of overwriting it.$$ ("File already exists.
. 2017-05-19 11:50:09.997 Error code: 11
. 2017-05-19 11:50:09.997 Error message from server: File alaready exists.")
< 2017-05-19 11:50:09.997 Script: Cannot overwrite remote file '/Adjuntos/ATC0000000000000000660/DOC353[1].pdf'.
< 2017-05-19 11:50:09.997 Script: File already exists.
< 2017-05-19 11:50:09.997 Error code: 11
< 2017-05-19 11:50:09.997 Error message from server: File alaready exists.
* 2017-05-19 11:50:09.998 (EScpSkipFile) Cannot overwrite remote file '/Adjuntos/ATC0000000000000000660/DOC353[1].pdf'.$$
* 2017-05-19 11:50:09.998
* 2017-05-19 11:50:09.998 Press 'Delete' to delete the file and create new one instead of overwriting it.$$
* 2017-05-19 11:50:09.998 File already exists.
* 2017-05-19 11:50:09.998 Error code: 11
* 2017-05-19 11:50:09.998 Error message from server: File alaready exists.
. 2017-05-19 11:50:09.998 Script: Failed


Thanks in advance.
Advertisements
ferpega
[View user's profile]

Joined: 2017-05-19
Posts: 3
Location: Fernando
Adding a bit more info:

On RemoveFiles Winscp function....
RemovalOperationResult is reporting IsSuccess to true

But there are no items in
* RemovalOperationResult.Removals
nor
* RemovalOperationResult.Failures.

Regards
martin
[View user's profile]
Site Admin
Joined: 2002-12-10
Posts: 26138
Location: Prague, Czechia
The argument of Session.RemoveFiles is a wildcard.
https://winscp.net/eng/docs/library_session_removefiles
https://winscp.net/eng/docs/library_wildcard

The [1] in the filename is a set pattern. No file in the remote folder matches that pattern, hence nothing is removed.

As documented, you should escape the filenames using Session.EscapeFileMask to avoid them being interpreted as wildcard/file mask.
https://winscp.net/eng/docs/library_session_escapefilemask
ferpega
[View user's profile]

Joined: 2017-05-19
Posts: 3
Location: Fernando
That was the trick. Smile

Thank you.
Advertisements

You can post new topics in this forum






Search Site

What is WinSCP?

It is award-winning SFTP client, SCP client, FTPS client and FTP client integrated into one software program for file transfer to FTP server or secure SFTP server. [More]

And it's free!

Donate

About donations

$9   $19   $49   $99

About donations

Recommend

WinSCP Privacy Policy

WinSCP License