¿Alguien sabe cómo eliminar un archivo de un servidor SFTP utilizando SharpSSH de Tamir Gal? Pude lograr otra funcionalidad, pero eliminación. Gracias por adelantado.Cómo eliminar un archivo de un servidor SFTP de forma programada utilizando SharpSSH?
Respuesta
Para lograr esto, deberá modificar el conjunto SharpSSH para exponer la funcionalidad que necesita.
obtener el código fuente y $ abierta \ SharpSSH-1.1.1.13.src \ SharpSSH \ Sftp.cs
Inserte el siguiente líneas de código antes del final de la clase:
public void Delete(string path)
{
SftpChannel.rm(path);
}
recompilación y hacer referencia a la DLL recompilada en su proyecto. Ahora podrá eliminar archivos en el servidor SFTP.
¡Gracias! Tropezó con esto y funciona perfectamente. Solo otro consejo rápido para cualquiera que quiera compilar esto por sí mismo, es útil usar el siguiente comando ILMerge posterior a la compilación para terminar con un conjunto útil llamado SharpSSH.dll: 'ilmerge/target: library/out:" $ (TargetDir) SharpSSH.dll "/ v2" $ (TargetDir) Tamir.SharpSSH.dll "" $ (TargetDir) DiffieHellman.dll "" $ (TargetDir) Org.Mentalis.Security.dll "' – mattmc3
Me ayudó también. ¡¡Muchas gracias!! – Vbp
bien también se puede utilizar SshExec clase y luego ejecutar el comando "rm" utilizando el método de "EjecutarComando". De esta forma, no tendrás que recompilar y construir un nuevo dll.
¡Gracias! Esto me salvó de modificar la biblioteca. –
clase El SshExec no funcionó para mí, pero un poco de magia Reflexión trabajó:
var prop = sftp.GetType().GetProperty("SftpChannel", BindingFlags.NonPublic | BindingFlags.Instance);
var methodInfo = prop.GetGetMethod(true);
var sftpChannel = methodInfo.Invoke(sftp, null);
((ChannelSftp) sftpChannel).rm(ftpPath);
Usando DLL de Tamir sugeriría a eliminar utilizando el código de abajo. De esta forma, no necesita modificar el dll de Tamir, mientras que el código siguiente puede escribirse en su clase.
string fromFile = "https://stackoverflow.com/a/b/MyFile.txt"
SshExec se = new SshExec(host, username, password);
se.Connect(port);
se.RunCommand("rm " + fromFile);
- 1. Transmitiendo un archivo desde SharpSSH
- 2. Listado de directorios de Sharpssh
- 3. ¿Cómo descargar un archivo de SFTP usando PHP?
- 4. Redimensionar de forma programada DataGridView para eliminar barras de desplazamiento
- 5. ¿Cómo cargo un archivo a un servidor SFTP en C#/.NET?
- 6. cómo eliminar un archivo del servidor ftp usando java?
- 7. biblioteca de servidor Java SFTP?
- 8. Crear NSScrollView de forma programada en un NSView - Cocoa
- 9. Incorporar recursos de forma programada en un ensamblado .NET
- 10. Dirección del servidor público de prueba SFTP
- 11. Cómo cargar un archivo al servidor utilizando Yesod
- 12. Usando .NET 2.0, ¿cómo puedo FTP a un servidor, obtener un archivo y eliminar el archivo?
- 13. cómo eliminar un archivo?
- 14. Recuperar de forma programada la lista de aplicaciones instaladas que admiten un tipo de archivo dado
- 15. Agregando de forma programada nodos secundarios a un jstree
- 16. Agregando elementos de forma programada a un diseño relativo
- 17. Eliminación de un archivo de servidor
- 18. ¿Puede tener usuarios virtuales que usen un servidor SFTP?
- 19. Nuevas características de agrupación de ASP.NET: ¿cómo puedo actualizar de forma programada un determinado paquete?
- 20. Eliminar un mapa/forma de Google maps
- 21. ¿Cuál es la forma correcta de eliminar elementos de un mapa modificable scala utilizando un predicado
- 22. Copiando un archivo en sftp con biblioteca jsch
- 23. Cómo acceder y descargar un archivo desde un servidor utilizando HTML 5
- 24. ¿Cómo copio un archivo de un servidor a otro?
- 25. Cómo forzar a eliminar un archivo?
- 26. ¿Compila Java de forma programada con JavaCompiler?
- 27. Cómo eliminar un archivo con Visual C++?
- 28. API de Google Analytics: obtenga de forma programada vistas de página en el lado del servidor
- 29. Cómo firmar un archivo JAR utilizando un archivo .PFX
- 30. Usando Apache Mina como un Servidor SFTP Simulado/en Memoria para Prueba de Unidad
Un largo seguimiento tardío para esta pregunta. Añadí esto en unas pocas actualizaciones que hice en https://bitbucket.org/mattgwagner/sharpssh para evitar volver a compilar la biblioteca usted mismo. – MattGWagner