Convert or print integers in octal format, with as many digits as are needed to display the largest, using leading zeroes as necessary.
as.octmode(x) ## S3 method for class 'octmode' as.character(x, ...) ## S3 method for class 'octmode' format(x, width = NULL, ...) ## S3 method for class 'octmode' print(x, ...)
An object, for the methods inheriting from class
further arguments passed to or from other methods.
"octmode" consists of integer vectors with that class
attribute, used merely to ensure that they are printed in octal
notation, specifically for Unix-like file permissions such as
755. Subsetting (
[) works too.
width = NULL (the default), the output is padded with
leading zeroes to the smallest width needed for all the non-missing
as.octmode can convert integers (of type
"double") and character vectors whose elements contain only
0-7 (or are
NA) to class
There is a
! method and methods for
these recycle their arguments to the length of the longer and then
apply the operators bitwise to each element.
These are auxiliary functions for
sprintf for other options in
converting integers to octal,
strtoi to convert octal
strings to integers.
(on <- as.octmode(c(16, 32, 127:129))) # "020" "040" "177" "200" "201" unclass(on[3:4]) # subsetting ## manipulate file modes fmode <- as.octmode("170") (fmode | "644") & "755" umask <- Sys.umask(NA) # depends on platform c(fmode, "666", "755") & !umask
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.