- value
- The unix permission representation of a Mono.Unix.Native.FilePermissions value.
The converted Mono.Unix.Native.FilePermissions.
A "Unix permission string" is the 9 or 10 character string commonly seen in the output of ls -l, e.g. "-rwxr-x---".
This method makes it easier to create a Mono.Unix.Native.FilePermissions value, allowing the use of common Unix permission notation.
Both 9 and 10 character representations are decoded, the difference being the file type.
C# Example
using System;
using Mono.Unix.Native;
class Test
{
public static void Main(string[] args)
{
// All statement pairs are equivalent.
// Note: 9 character string -- file type not set
FilePermissions simple1 = NativeConvert.FromUnixPermissionString ("rw-r--r--");
FilePermissions annoying1 =
FilePermissions.S_IRUSR | FilePermissions.S_IWUSR |
FilePermissions.S_IRGRP |
FilePermissions.S_IROTH;
// Note: 10 character string -- regular file specified
FilePermissions simple2 = NativeConvert.FromUnixPermissionString ("----------");
FilePermissions annoying2 = FilePermissions.S_IFREG;
// Note: 10 character string -- directory with all access permissions specified
FilePermissions simple3 = NativeConvert.FromUnixPermissionString ("drwxrwxrwx");
FilePermissions annoying3 = FilePermissions.S_IFDIR |
FilePermissions.ACCESSPERMS;
}
}