fastcwd.pl

来自「视频监控网络部分的协议ddns,的模块的实现代码,请大家大胆指正.」· PL 代码 · 共 44 行

PL
44
字号
# By John Bazik## This library is no longer being maintained, and is included for backward# compatibility with Perl 4 programs which may require it.## In particular, this should not be used as an example of modern Perl# programming techniques.## Suggested alternative: Cwd## Usage: $cwd = &fastcwd;## This is a faster version of getcwd.  It's also more dangerous because# you might chdir out of a directory that you can't chdir back into.sub fastcwd {	local($odev, $oino, $cdev, $cino, $tdev, $tino);	local(@path, $path);	local(*DIR);	($cdev, $cino) = stat('.');	for (;;) {		($odev, $oino) = ($cdev, $cino);		chdir('..');		($cdev, $cino) = stat('.');		last if $odev == $cdev && $oino == $cino;		opendir(DIR, '.');		for (;;) {			$_ = readdir(DIR);			next if $_ eq '.';			next if $_ eq '..';			last unless $_;			($tdev, $tino) = lstat($_);			last unless $tdev != $odev || $tino != $oino;		}		closedir(DIR);		unshift(@path, $_);	}	chdir($path = '/' . join('/', @path));	$path;}1;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?