这是一个 shell 脚本,我如何在 Perl 中完成同样的事情?
prfile=~/sqllib/db2profile
profile()
{
if [ -f $prfile ] && [ "$prfile" != "" ];
then
. $prfile
else
read -p "Enter a valid Profile : " prfile
profile
fi
}
profile
在这里它检查配置文件,如果找到它会执行它,. $prfile
否则它会再次询问用户正确的配置文件
更新
#!/usr/bin/perl
use strict;
use warnings;
my $profile = "$ENV{'HOME'}/sqllib/db2proile";
# default profile
while (not -e $profile) { # until we find an existing file
print "Enter a valid profile: ";
chomp($profile = <>); # read a new profile
}
qx(. $profile);
这行得通。我希望主目录是动态的而不是硬编码的,因为它们因不同的机器而异。我只是想用 Perl 来完成我用 shell 所取得的成就。