大家好, 我举例子还说明我的问题吧, --A.pl-- #! /usr/bin/perl -w use strict; my %hash=("hello","world","my","name","is","john"); my @list=("perl","B.pl",\%hash);#也就是为了能在A.pl中调用B.pl并把A中的hash传递给B。 system(@list); --B.pl-- #!/usr/bin/perl -w use strict; my $A=$argv[0]; print keys %$A; 结果:按理应该能输出 hello my is 的呀, 可是结果是:Can't use string ("HASH(0x1829de4)")...
by whfwind - Perl - 2009-08-31 09:31:49 阅读(1400) 回复(6)
我写了一个shell程序test.sh,如下: #!/usr/bin/csh print "$argv[0]\n"; 然后我执行./test.sh hello,结果显示: argv: 没有定义的变量 请问:shell程序不能像perl那样调用命令行参数吗? 谢谢!
感谢各位高手:) 麻烦大家帮忙看看,谢谢~~ #!/usr/bin/perl -w #LastUpdated:2006-06-13 #这是一个日志分割程序,实现功能如下示例: # rotate the named log file and archive $howmany old versions. eg, # rotate("foo",3); # will move foo -> foo.0 -> foo.1 -> foo.2 -> foo.3 # and remove old foo.3, then create empty foo. #程序执行的格式: ./logrotate.pl -r 3 logfile 其中,3为保留日志的个数,在后面也做for循环...
我写了一个shell程序test.sh,如下: #!/usr/bin/csh print "$argv[0]\n"; 然后我执行./test.sh hello,结果显示: argv: 没有定义的变量 请问:shell程序不能像perl那样调用命令行参数吗? 谢谢!
各位兄弟,我有一个perl程序,名字是test.pl,用来打开一个文件的,但是,同时想传递一些参数给程序。但是有如下问题: 我的用法如下: zcat /home/test/test.gz | test.pl -c 这样用的时候程序老是要把-c当成一个文件去打开。 因此报无法打开文件的错误. 但是正常情况下 test.pl -c就可以. 请问要实现管道传递,同时又传递参数该如何修正命令呢? 多谢各位,多谢.
@argv中存放命令行接过来的参数 不改变@argv的话 @argv = @argv <>从@argv 中读取 不知道对不对 1.[7] 写一个程序,类似于cat,但保持输出的顺序关系。(某些系统的名字可能是tac。)如果运行此程序:./tac fred barney betty, 输出将是文件betty 的内容,从最后一行到第一行,然后是barney, 最后是fred, 同样是从最后一行到第一行。(注意 使用./确保调用的是你自己的程序,而非系统提供的) #!/usr/bin/perl -w #perpose: lik...
请帮忙解释一下它们之间的关系及区别,谢谢! @argv是传递的脚本的命令行参数。 [ 本帖最后由 gaoquanlong 于 2008-9-18 17:21 编辑 ]