#! /usr/bin/perl
use strict;
use warnings;

=head1
print "\n---------------------------------test_---------------------------\n";
if(!open LOG, ">> Z/logfile"){
    die "can't create logfile: $!";
}
print "\n---------------------------------test_---------------------------\n";
=cut

=head1
print "\n---------------------------------1st_use_FD_read_/etc/passwd_---------------------------\n";
unless(open PASSWD, "/etc/passwd"){
  die "How did you get logged in? ($!)";
}
while(<PASSWD>) {
    chomp;
    print $_;
    print "\n";
}
print "-----over----\n---------------------------------1st_use_FD_read_/etc/passwd_---------------------------\n";
close PASSWD;
=cut1

=head1
print "\n---------------------------------write_2_file_---------------------------\n";
unless(open MYLOG, ">> logfile"){
    die "err open logfile: $!";
}
my $done = 1;
my $total = 3;
print MYLOG "Captain's log, stardate 3.14159\n";
printf STDERR "%d percent compete.\n", $done/$total *100;
printf (STDERR "%d percent compete.\n", $done/$total *100);
printf STDERR ("%d percent compete.\n", $done/$total *100);
select MYLOG;
printf ("%d percent compete.\n", $done/$total *100);
select STDOUT;
print "\n---------------------------------write_2_file_---------------------------\n";
close MYLOG;
=cut

=head1
print "\n---------------------------------flush_buffer_---------------------------\n";
unless(open MYLOG, ">> logfile"){
    die "err open logfile: $!";
}
$| = 1;
print MYLOG "flush buffer immediately after write.\n";
close MYLOG;
print "\n---------------------------------flush_buffer_---------------------------\n";
=cut

=head1
print "\n---------------------------------redirect_STDERR_---------------------------\n";
unless(open STDERR, ">> mySTDERR"){
    die "err open STDERR (>> mySTDERR): $!";
}
printf (STDERR "%d percent compete.\n", 1/3 *100);
print "\n---------------------------------redirect_STDERR_---------------------------\n";
=cut

print "\n---------------------------------_---------------------------\n";

#you should always check the return value of open, since the rest of the
#program is relying upon its success.

文件描述符 文件操作 <> open 文件句柄的更多相关文章

  1. [转帖]linux文件描述符文件/etc/security/limits.conf

    linux文件描述符文件/etc/security/limits.conf https://blog.csdn.net/fanren224/article/details/79971359 需要多学习 ...

  2. linux系统编程之文件与IO(八):文件描述符相关操作-dup,dup2,fcntl

    本节目标: 1,文件共享 打开文件内核数据结构 一个进程两次打开同一个文件 两个进程打开同一个文件 2,复制文件描述符(dup.dup2.fcntl) 一,文件共享 1,一个进程打开两个文件内核数据结 ...

  3. 文件描述符FD的含义/文件句柄

    使用sudo lsof -nP -iTCP -sTCP:LISTEN查看占用端口的程序;因为 lsof 需要访问核心内存和各种文件,所以必须以 root 用户的身份运行它才能够充分地发挥其功能 概念 ...

  4. exec操作文件描述符

    exec命令可以用来替代当前shell:换句话说,并没有启动子shell.使用这一命令时任何环境都将被清除,并重新启动一个shell. 它的一半形式为: exec command 其中,command ...

  5. Linux文件描述符与打开文件之间的区别(转载)

    转载请说明出处:http://blog.csdn.net/cywosp/article/details/38965239   1. 概述     在Linux系统中一切皆可以看成是文件,文件又可分为: ...

  6. linux文件描述符--转载

    转自:http://blog.csdn.net/cywosp/article/details/38965239 1. 概述     在Linux系统中一切皆可以看成是文件,文件又可分为:普通文件.目录 ...

  7. Linux中的文件描述符与打开文件之间的关系

    Linux中的文件描述符与打开文件之间的关系 导读 内核(kernel)利用文件描述符(file descriptor)来访问文件.文件描述符是非负整数.打开现存文件或新建文件时,内核会返回一个文件描 ...

  8. Linux中的文件描述符与打开文件之间的关系------------每天进步一点点系列

    http://blog.csdn.net/cywosp/article/details/38965239 1. 概述     在Linux系统中一切皆可以看成是文件,文件又可分为:普通文件.目录文件. ...

  9. (转)Linux中的文件描述符

    本文转自:http://blog.csdn.net/cywosp/article/details/38965239 作者:cywosp 1. 概述 在Linux系统中一切皆可以看成是文件,文件又可分为 ...

随机推荐

  1. Ubuntu Bochs boot.asm 测试

    /********************************************************************* * Ubuntu Bochs boot.asm 测试 * ...

  2. I.MX6 mkuserimg.sh hacking

    /*********************************************************************** * I.MX6 mkuserimg.sh hackin ...

  3. bzoj 4543 HOTEL 加强版

    题目大意: 求树上取三个点这三个点两两距离相等的方案数 思路: 远古时候的$n^2$做法是换根 但那样无法继续优化了 学习了一波长链剖分 考虑如何在一棵树上进行dp 设$f[i][j]$表示以$i$为 ...

  4. 【转】js中15个常用的正则表达式+正则集合

    1 用户名正则 //用户名正则,4到16位(字母,数字,下划线,减号) var uPattern = /^[a-zA-Z0-9_-]{4,16}$/; //输出 true console.log(uP ...

  5. gunicorn部署Flask服务

    作为一个Python选手,工作中需要的一些服务接口一般会用Flask来开发. Flask非常容易上手,它自带的app.run(host="0.0.0.0", port=7001)用 ...

  6. hdu5396(区间DP)

    题目意思: 给定一个表达式,运算符没有优先级,求不同顺序计算,所有可能的得到的结果之和. 由于运算符没有优先级,所以有多种顺序去计算,设d[i][j]表示[i,j]区间表达式通过不同顺序计算,所以可能 ...

  7. bzoj 5277: [Usaco2018 Open]Out of Sorts【冒泡排序瞎搞】

    首先考虑快排的递归什么时候停下,显然是当前段只剩下一个数了,也就是一个数两边出现分隔符 然后再考虑计算冒泡长度这个操作,因为有分割,所以我们可以把这些放到一起冒泡,这和递归每个区间冒泡是等价的 所以答 ...

  8. 洛谷 P2770 航空路线问题【最大费用最大流】

    记得cnt=1!!因为是无向图所以可以把回来的路看成另一条向东的路.字符串用map处理即可.拆点限制流量,除了1和n是(i,i+n,2)表示可以经过两次,其他点都拆成(i,i+n,1),费用设为1,原 ...

  9. zoj 2587 Unique Attack【最小割】

    拆点拆魔怔了 直接按照原图建就行,这里有个小技巧就是双向边的话不用按着板子建(u,v,c)(v,u,0)(v,u,c)(u,v,0),直接建(u,v,c)(v,u,c)会快十倍!800ms->8 ...

  10. 安装privoxy后curl 操作

    如果讲privoxy服务关掉 sudo /etc/init.d/privoxy restart 这时候发现 curl www.baidu.com 也没法正常工作,直接显示的是无法连接到相应端口还是 主 ...