oct EXPR
oct Interprets EXPR as an octal string and returns the corresponding
value. An octal string consists of octal digits and, as of Perl
5.33.5, an optional "0o" or "o" prefix. Each octal digit may be
preceded by a single underscore, which will be ignored. (If EXPR
happens to start off with "0x" or "x", interprets it as a hex
string. If EXPR starts off with "0b" or "b", it is interpreted
as a binary string. Leading whitespace is ignored in all three
cases.) The following will handle decimal, binary, octal, and
hex in standard Perl notation:
$val = oct($val) if $val =~ /^0/;
If EXPR is omitted, uses $_. To go the other way (produce a
number in octal), use "sprintf" or "printf":
my $dec_perms = (stat("filename"))[2] & 07777;
my $oct_perm_str = sprintf "%o", $perms;
The "oct" function is commonly used when a string such as 644
needs to be converted into a file mode, for example. Although
Perl automatically converts strings into numbers as needed, this
automatic conversion assumes base 10.
Leading white space is ignored without warning, as too are any
trailing non-digits, such as a decimal point ("oct" only handles
non-negative integers, not negative integers or floating point).
Generated by phpman v3.7.12 Author: Che Dong Under GNU General Public License
2026-06-13 14:41 @216.73.216.28
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)