#! /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. VS2013文件同步插件开发

    一.插件功能描述 插件监控一个xml文件,当该文档有添加新元素在保存的时候将新增的元素同步到指定的目录下. 二.模板的选择 由于该功能是跟代码编辑有关的,要监控文档的保存事件,所以要在文档打开的时候就 ...

  2. 【转】浏览器中输入url后发生了什么

    原文地址:http://www.jianshu.com/p/c1dfc6caa520 在学习前端的过程中经常看到这样一个问题:当你在浏览器中输入url后发生了什么?下面是个人学习过程中的总结,供个人复 ...

  3. vs2010 每行代码显示虚线

    快捷键:Ctrl+R,W或Ctrl+E,S,即可去除 或者是编辑菜单——高级——查看空白 VS12010代码编辑器横向滚动条 工具----选项-----文本编辑器---所有语言---右侧 自动换行去掉

  4. 我理解的 js 异步成长总结

    本文是自己的理解,如果有错误的地方,还请各路大神指出 首先说下我最常用的 Promise getHandlePickupQrPromise() { // 定义返回 Promise对象 // Promi ...

  5. golang——关于for循环的学习

    1.for循环的用法 (1)常规用法 func main() { slice := []int{1, 2, 3, 4, 5, 6} //方式1 for i := 0; i < len(slice ...

  6. java 学习书籍

    <Effective java> <深入理解java虚拟机> <Java并发编程实践> <Java Performance> <java解惑> ...

  7. Hello!六月

    把这里当做记事本应该没人介意吧: 太忙了!六月! ACM: 背包九讲

  8. 配置Ubuntu16.04第03步:安装搜狗输入法

    1.进入搜狗官网:https://pinyin.sogou.com/linux/ ,下载搜狗输入法安装包 2.使用dpkg命令安装Deb包: sudo dpkg -i sogoupinyin_2.0. ...

  9. static属性

    static 属于全局,也就是类的属性 和方法,换句话说 一个类,不管有多少个实例,却只有一个全局变量 用static修饰的属性和方法称为静态属性和方法 需要注意的是 静态属性和方法属于类方法,加载类 ...

  10. css的过渡背景色

    css3新增的渐变背景色属性用法 原博客地址:http://caibaojian.com/css3-background-gradient.html