Der Befehl mkdir
von Matlab scheint immer die Berechtigungen 755 zu setzen, und die Funktion scheint keine Optionen zu akzeptieren, dies zu ändern.Wie steuern Sie Verzeichnisberechtigungen mit dem mkdir-Befehl von matlab?
Es scheint nicht einmal umask zu respektieren (umask 2 entspricht Berechtigungen 775 oder rwxrwxr-x).
>> !umask
2
>> mkdir /tmp/test
>> ls -l /tmp/
drwxr-xr-x 2 username groupname 6 Mar 30 10:51 test/
Wenn ich erstellen Sie einfach ein Verzeichnis, dann fileattrib
verwenden, nachdem die Tatsache, relativ trivial ist, aber wenn ich ein Unterverzeichnis zum Beispiel erstellen /tmp/test1/test2
dann erstellt matlabs mkdir standardmäßig alle nicht vorhandenen übergeordneten Verzeichnisse. (Als wäre das Flag -p
für die Unix-Version von mkdir gesetzt worden.) Wenn ich nur die Berechtigungen für die neuen Verzeichnisse festlegen möchte, scheint es nicht einfach zu sein zu sagen, welche Teile des Baums neu sind und welche sind alt.
Für den Datensatz verwende ich R2014b auf Linux.
Ich wünschte, es gibt ein 'Sudo' in Matlab 2016b. – GameOfThrows
kann man nicht einfach direkt den UNIX Befehl benutzen: '>>! Mkdir -p/tmp/test1/test2'? – Amro
@Amro Ja, das ist eine gute Idee. Ich könnte es so machen. Zwei Gründe, nicht zu: 1) Ich nehme an, dass Portabilität zu Windows brechen würde 2) Matlab * sollte * eine Möglichkeit haben, diese Arbeit zu machen – craq