Herausforderung
Geben Sie bei einer dreistelligen oktalen Berechtigungsnummer die erteilten Berechtigungen aus.
chmod
Unter UNIX-Betriebssystemen werden die Dateiberechtigungen mit dem chmod
Befehl geändert . Es gibt nur wenige Möglichkeiten, chmod zu verwenden, aber die, auf die wir uns heute konzentrieren werden, ist die Verwendung von oktalen Berechtigungen.
Die drei Ziffern in der Berechtigungsnummer stehen für eine andere Person:
- Die erste Ziffer steht für die Berechtigungen für die Benutzer an
- Die zweite Ziffer gibt die Berechtigungen für das an Gruppe an
- Die letzte Ziffer gibt die Berechtigungen für andere an
Als nächstes repräsentiert jede Ziffer eine Erlaubnis wie unten gezeigt in:
Key: number | permission
7 | Read Write and Execute
6 | Read and Write
5 | Read and Execute
4 | Read only
3 | Write and Execute
2 | Write only
1 | Execute only
0 | None
Eingang
Die Eingabe ist die dreistellige Zahl als Zeichenfolge, zB:
133
oder
007
Dies wird entweder über STDIN oder über Funktionsargumente übergeben.
Ausgabe
Ihre Ausgabe sollte die unterschiedlichen Berechtigungen für jeden Benutzer, die Gruppe und die anderen Benutzer sein. Sie müssen diese Informationen folgendermaßen anzeigen:
User: ddd
Group: ddd
Others: ddd
Wo es drei Leerzeichen danach gibt User
, zwei Leerzeichen danach Group
und ein Leerzeichen danach Others
. Sie ersetzen ddd
durch die Berechtigungsinformationen.
Ihre Ausgabe kann in STDOUT oder als zurückgegebener String erfolgen.
Beispiele
Eingabe: 666
Ausgabe:
User: Read and Write
Group: Read and Write
Others: Read and Write
Eingabe: 042
Ausgabe:
User: None
Group: Read only
Others: Write only
Eingabe: 644
Ausgabe:
User: Read and Write
Group: Read only
Others: Read only
Gewinnen
Der kürzeste Code in Bytes gewinnt.