📄 perl11.htm
字号:
<tr>
<td>解说</td>
<td>改变文件的属主,有三个参数:<br>
1、userid:新属主的(数字)ID号<br>
2、groupid:新的组(数字)ID号,-1为保留原组<br>
3、filelist:欲改变属主的文件列表</td>
</tr>
</table>
<p></p>
<p>
<table border=1 cellspacing=1>
<tr>
<td>函数名</td>
<td>umask</td>
</tr>
<tr>
<td>调用语法</td>
<td>oldmaskval = umask (maskval);</td>
</tr>
<tr>
<td>解说</td>
<td>设置文件访问权限掩码,返回值为当前掩码。</td>
</tr>
</table>
<p></p>
<a name=3.4>4、其它属性函数</a><br>
<p>
<table border=1 cellspacing=1>
<tr>
<td>函数名</td>
<td>truncate</td>
</tr>
<tr>
<td>调用语法</td>
<td>truncate (filename, length);</td>
</tr>
<tr>
<td>解说</td>
<td>将文件的长度减少到length字节。如果文件长度已经小于length,则不做任何事。其中filename可以为文件名,也可以为文件变量</td>
</tr>
</table>
<p></p>
<p>
<table border=1 cellspacing=1>
<tr>
<td>函数名</td>
<td>stat</td>
</tr>
<tr>
<td>调用语法</td>
<td>stat (file);</td>
</tr>
<tr>
<td>解说</td>
<td>获取文件状态。参数file可为文件名也可为文件变量。返回列表元素依次为:<br>
<li>文件所在设备</li>
<li>内部参考号(inode)</li>
<li>访问权限</li>
<li>硬链接数</li>
<li>属主的(数字)ID</li>
<li>所属组的(数字)ID</li>
<li>设备类型(如果file是设备的话)</li>
<li>文件大小(字节数)</li>
<li>最后访问时间</li>
<li>最后修改时间</li>
最后改变状态时间
<li>I/O操作最佳块大小</li>
<li>分配给该文件的块数</li>
</td>
</tr>
</table>
<p></p>
<p>
<table border=1 cellspacing=1>
<tr>
<td>函数名</td>
<td>lstat</td>
</tr>
<tr>
<td>调用语法</td>
<td>lstat (file);</td>
</tr>
<tr>
<td>解说</td>
<td>与stat类似,区别是将file看作是符号链接。</td>
</tr>
</table>
<p></p>
<p>
<table border=1 cellspacing=1>
<tr>
<td>函数名</td>
<td>time</td>
</tr>
<tr>
<td>调用语法</td>
<td>currtime = time();</td>
</tr>
<tr>
<td>解说</td>
<td>返回从1970年1月1日起累计秒数。</td>
</tr>
</table>
<p></p>
<p>
<table border=1 cellspacing=1>
<tr>
<td>函数名</td>
<td>gmtime</td>
</tr>
<tr>
<td>调用语法</td>
<td>timelist = gmtime (timeval);</td>
</tr>
<tr>
<td>解说</td>
<td>将由time, stat 或 -A 和 -M 文件测试操作符返回的时间转换成格林威治时间。返回列表元素依次为:<br>
<li>秒</li>
<li>分钟</li>
<li>小时,0~23</li>
<li>日期</li>
<li>月份,0~11(一月~十二月)</li>
<li>年份</li>
<li>星期,0~6(周日~周六)</li>
<li>一年中的日期,0~364</li>
<li>是否夏令时的标志</li>
<br>
详见UNIX的gmtime帮助。</td>
</tr>
</table>
<p></p>
<p>
<table border=1 cellspacing=1>
<tr>
<td>函数名</td>
<td>localtime</td>
</tr>
<tr>
<td>调用语法</td>
<td>timelist = localtime (timeval);</td>
</tr>
<tr>
<td>解说</td>
<td>与gmtime类似,区别为将时间值转换为本地时间。</td>
</tr>
</table>
<p></p>
<p>
<table border=1 cellspacing=1>
<tr>
<td>函数名</td>
<td>utime</td>
</tr>
<tr>
<td>调用语法</td>
<td>utime (acctime, modtime, filelist);</td>
</tr>
<tr>
<td>解说</td>
<td>改变文件的最后访问时间和最后更改时间。例如:<br>
$acctime = -A "file1";<br>
$modtime = -M "file1";<br>
@filelist = ("file2", "file3");<br>
utime ($acctime, $modtime, @filelist);</td>
</tr>
</table>
<p></p>
<p>
<table border=1 cellspacing=1>
<tr>
<td>函数名</td>
<td>fileno</td>
</tr>
<tr>
<td>调用语法</td>
<td>filedesc = fileno (filevar);</td>
</tr>
<tr>
<td>解说</td>
<td>返回文件的内部UNIX文件描述。参数filevar为文件变量。</td>
</tr>
</table>
<p></p>
<p>
<table border=1 cellspacing=1>
<tr>
<td>函数名</td>
<td>fcntl<br>
flock</td>
</tr>
<tr>
<td>调用语法</td>
<td>fcntl (filevar, fcntlrtn, value);<br>
flock (filevar, flockop);</td>
</tr>
<tr>
<td>解说</td>
<td>详见同名UNIX函数帮助。</td>
</tr>
</table>
<p></p>
<a name=4>四、使用DBM文件</a><br>
Perl中可用关联数组来访问DBM文件,所用函数为dbmopen和dbmclose,在Perl5中,已用tie和untie代替。
<p>
<table border=1 cellspacing=1>
<tr>
<td>函数名</td>
<td>dbmopen</td>
</tr>
<tr>
<td>调用语法</td>
<td>dbmopen (array, dbmfilename, permissions);</td>
</tr>
<tr>
<td>解说</td>
<td>将关联数组与DBM文件相关联。参数为:<br>
1、array:所用关联数组<br>
2、dbmfilename:将打开的DBM文件名<br>
3、访问权限,详见mkdir</td>
</tr>
</table>
<p></p>
<p>
<table border=1 cellspacing=1>
<tr>
<td>函数名</td>
<td>dbmclose</td>
</tr>
<tr>
<td>调用语法</td>
<td>dbmclose (array);</td>
</tr>
<tr>
<td>解说</td>
<td>关闭DBM文件,拆除关联数组与之的关系。</td>
</tr>
</table>
<p></p>
<font color="red">`反短斜线<br>
把"/bin/sh"的命令行用反短斜线(backquote `)括起来,产生一个新进程,并等待命令结束。<br>
$now="the time is now".`date`;<br>
@who=`who`; #获取多行结果<br>
</font><br>
<p align=center><a href=perl10.htm>上一章</a> <a href=perl12.htm>下一章</a>
<a href=index.htm>目录</a></p>
<p align=center> </p>
<!-- #EndEditable --></td>
</tr>
</table>
</td></tr></table></body><!-- #EndTemplate --></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -