How do I create a directory or file with 777 permission and a specific username and group
Offen
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- C#
- Sterne
- 4.4k
- Forks
- 993
- Ø Merge
- 9 T. 21 Std.
- Gemergte PRs (30 T.)
- 1
Beschreibung
How do I create a directory with 777 permission and a specific username and group
...
using (SftpClient sftp = new SftpClient(ipSftpServer, portSftpServer, userSftp, passSftp))
{
sftp.Connect();
CreateServerDirectoryIfItDoesntExist(destSftpPath, sftp);
memoryStream.Seek(0, SeekOrigin.Begin);
sftp.UploadFile(memoryStream, destSftpPath, delegate (ulong d)
{
if (uploadCallback != null)
{
uploadCallback((long)d, bytesTotal);
}
});
// chown -R dcm4chee-arc:dcm4chee-arc .
//change user and group dcm4chee-arc dcm4chee-arc
sftp.ChangePermissions(destSftpPath, 777);
Console.WriteLine($"end of file copy");
sftp.Disconnect();
}
...
private static void CreateServerDirectoryIfItDoesntExist(string serverDestinationPath, SftpClient sftpClient)
{
string[] directories = serverDestinationPath.Split('/');
Array.Resize(ref directories, directories.Length - 1);
for (int i = 0; i < directories.Length; i++)
{
if (i > 0)
{
string dirName = string.Join("/", directories, 0, i + 1);
if (!sftpClient.Exists(dirName))
{
sftpClient.CreateDirectory(dirName);
// chown -R dcm4chee-arc:dcm4chee-arc .
//example user and group: dcm4chee-arc dcm4chee-arc
//How do I create a directory with 777 permission and a specific username and group
sftpClient.ChangePermissions(dirName, 777);
}
}
}
}
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit den im Issue gezeigten Aufrufen SftpClient.CreateDirectory, UploadFile und ChangePermissions und prüfe die SSH.NET-API-Dokumentation auf Unterstützung für Besitz und Berechtigungen. Erledigt ist dies, wenn festgestellt wurde, ob das angeforderte Verhalten für Verzeichnis- und Dateibesitz unterstützt wird, und eine eindeutige Antwort zur Verwendung oder zu den Einschränkungen vorliegt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- csharp
- Bereich
- networking
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100