博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
查询用户信息
阅读量:6151 次
发布时间:2019-06-21

本文共 1152 字,大约阅读时间需要 3 分钟。

#!/usr/bin/perl -w
#Author:Hahazhu
#DATE:04/29/2008 11:02
#Role:view user information based on user name.
#USAGE:programe root
use strict;
my %search_name = ();
my @names;
my $i;
sub true_examples{
   print "USAGE:Program arg1\n";
   exit 1;
}
open(F,"/etc/passwd");
while(<F>){
  my ($name,$f1,$f2,$f3,$group,$home,$bash)=split(/\:/,$_);
  push( @names,$name);
  Create_Entries($name,$group,$home,$bash);
}
close F;
sub  Create_Entries{
     my($name,$group,$home,$bash)=@_;
     my $rl=[$group,$home,$bash];
     push (@{$search_name{$name}},$rl);
}
my  ;
if( $numargs != 1 ){
  &true_examples;
}
my $input_name = $ARGV[0];
print_search_name($input_name);
sub print_search_name{
  my ($input_name)=@_;
  foreach(@names){
     if($_ eq $input_name){
         print $input_name." information:\n";
         print "\tGroup:$search_name{$input_name}[0][0]\n";
         print "\tHome:$search_name{$input_name}[0][1]\n";
         print "\tBash:$search_name{$input_name}[0][2]";
         exit 0;
     }
     else
         { $i = 0 }
  }
  if ( $i == 0 ){
      print "\tERROR:ARG Error!\n";
      print "True ARG:\n";
      &print_arg;
      print "\n";
 }
}
sub print_arg{
  foreach(@names){
     print "\t".$_." ";
  }
}
本文转自hahazhu0634 51CTO博客,原文链接:http://blog.51cto.com/5ydycm/113491,如需转载请自行联系原作者
你可能感兴趣的文章
eclipse启动无响应,老是加载不了revert resources,或停留在Loading workbench状态
查看>>
1. Git-2.12.0-64-bit .exe下载
查看>>
怎样关闭“粘滞键”?
查看>>
[转]React 教程
查看>>
拓扑排序介绍
查看>>
eclipse打开工作空间(workspace)没有任务反应
查看>>
使用Sybmol模块来构建神经网络
查看>>
字符串去分割符号
查看>>
WPF中,多key值绑定问题,一个key绑定一个界面上的对象
查看>>
UML类图简明教程
查看>>
java反编译工具(Java Decompiler)
查看>>
Android开发之自定义对话框
查看>>
微信Access Token 缓存方法
查看>>
Eclipsed的SVN插件不能识别之前工作空间的项目
查看>>
Linux 查看iptables状态-重启
查看>>
amazeui学习笔记一(开始使用2)--布局示例layouts
查看>>
c#中lock的使用(用于预约超出限额的流程)
查看>>
ODI基于源表时间戳字段获取增量数据
查看>>
并发容器之CopyOnWriteArrayList(转载)
查看>>
什么是AAC音频格式 AAC-LC 和 AAC-HE的区别是什么
查看>>