码
#!/usr/bin/perl -I/root/Lib/
use Data::Dumper;
print Dumper \@INC;
Run Code Online (Sandbox Code Playgroud)
上面的代码文件名是test.pl,权限是755.
当我使用/ usr/bin/perl test.pl运行程序时,@ INC的输出最后包含"/ root/Lib".就像推进@INC一样.
/ usr/bin/perl test.pl输出
$VAR1 = [
'/etc/perl',
'/usr/local/lib/perl/5.10.0',
'/usr/local/share/perl/5.10.0',
'/usr/lib/perl5',
'/usr/share/perl5',
'/usr/lib/perl/5.10',
'/usr/share/perl/5.10',
'/usr/local/lib/site_perl',
'.',
'/root/Lib/'
];
Run Code Online (Sandbox Code Playgroud)
但是当我使用./test.pl运行程序时,@ INC的输出包含"/ root/Lib /"包含第一个也包含结尾.这就像不移动和推动.
./test.pl输出
$VAR1 = [
'/root/Lib/',
'/etc/perl',
'/usr/local/lib/perl/5.10.0',
'/usr/local/share/perl/5.10.0',
'/usr/lib/perl5',
'/usr/share/perl5',
'/usr/lib/perl/5.10',
'/usr/share/perl/5.10',
'/usr/local/lib/site_perl',
'.',
'/root/Lib/'
];
Run Code Online (Sandbox Code Playgroud)
所以我想知道./test.pl和/ usr/bin/perl test.pl之间有什么区别?
我想要一个Perl正则表达式,它将匹配字符串中的重复单词.
鉴于以下输入:
$str = "Thus joyful Troy Troy maintained the the watch of night..."
Run Code Online (Sandbox Code Playgroud)
我想要以下输出:
Thus joyful [Troy Troy] maintained [the the] watch of night...
我写了两个程序.一个程序将内容同时写入文本文件.另一个程序同时读取该内容.
但是这两个程序应该同时运行.对我来说,程序是正确写入文件.但是另一个程序没有读取文件.
我知道一旦写入过程完成,只有数据将存储在硬盘中.然后另一个进程可以读取数据.
但我希望在单个文件中同时读写不同的进程.我怎样才能做到这一点?
请帮我.以下代码在文件中写入内容
sub generate_random_string
{
my $length_of_randomstring=shift;# the length of
# the random string to generate
my @chars=('a'..'z','A'..'Z','0'..'9','_');
my $random_string;
foreach (1..$length_of_randomstring)
{
# rand @chars will generate a random
# number between 0 and scalar @chars
$random_string.=$chars[rand @chars];
}
return $random_string;
}
#Generate the random string
open (FH,">>file.txt")or die "Can't Open";
while(1)
{
my $random_string=&generate_random_string(20);
sleep(1);
#print $random_string."\n";
print FH $random_string."\n";
}
Run Code Online (Sandbox Code Playgroud)
以下代码是读取内容的.这是另一个过程
open (FH,"<file.txt") or die "Can't Open";
print "Open the file Successfully\n\n";
while(<FH>)
{ …
Run Code Online (Sandbox Code Playgroud) 我在Linux Debian机器上运行CUPS.使用CUPS我将打印请求发送到Windows XP机器.我启用了445和139端口,我可以连接Windows机器.打印机已连接到Windows计算机.
我正在使用以下命令发送打印请求
lp -E -d < Printer Name > file name.
Run Code Online (Sandbox Code Playgroud)
发送后我使用以下命令检查打印机状态
lpstat -p < Printer Name >
Run Code Online (Sandbox Code Playgroud)
我执行上述消息时收到以下错误消息.
unable to connect to cifs host will retry in 60 seconds..
Run Code Online (Sandbox Code Playgroud)
当我签入日志时,我收到以下错误消息.
session setup failed: NT_STATUS_LOGON_FAILURE and NT_STATUS_BAD_NETWORK_NAME
Run Code Online (Sandbox Code Playgroud)
DeviceURI如下所示/etc/cups/printers.conf
smb://username:password@IP Address of windows Machine/printer_Name
Run Code Online (Sandbox Code Playgroud)
如果密码有"@"符号,请告诉我们,如何在DeviceURI中用实际语法指定"@"(用户:密码 @IP )
我想为每次执行scp命令获取警报消息.如果有人使用scp命令访问我的文件,那么我必须收到一封邮件.我怎样才能做到这一点.请帮我.
我的输入文件内容是
欢迎
欢迎1
欢迎2
我的脚本是
for groupline in `cat file`
do
echo $groupline;
done
Run Code Online (Sandbox Code Playgroud)
我得到了以下输出。
欢迎 欢迎1 欢迎2
为什么不打印空行。我要原因
我如何在Perl中使用宏,就像我在C中一样?
例:
#define value 100
print value;
Run Code Online (Sandbox Code Playgroud)
我希望输出为100.
我想在主窗口中添加滚动条.如何在主窗口中添加滚动条.请帮我.
我想将文件从一个主机获取到另一个主机.我们可以使用NET :: FTP模块获取文件.在该模块中,我们可以使用该get
方法来获取文件.但我想要文件内容而不是文件.我知道使用该read
方法我们可以读取文件内容.但是如何调用该read
函数以及如何获取文件内容?
我安装了虚拟盒子.所以我已经在虚拟机中安装了debian OS.在那个debian操作系统中,我试图安装Asterisk.那个星号也成功安装了.但是,如果我调用在extensions.conf文件中注册的注册号码,安装星号后,那个时间星号不能正常工作.在那个extensions.conf文件中,我使用了AGI.
我们是否可以在Virtualbox中运行Asterisk.但是如果我们在单独的机器上安装星号,如果我们在extensions.conf文件中使用AGI它就可以了.有什么问题,为什么它没有在虚拟机中运行?