Looks good. Thanks for the info. However, I'm not the admin on the server where I do my work is it possible store the pm file locally and perl recognize it? Sorry, but I'm pretty new to perl.
Installation of Perl modules requires lot more work than just dumping pm files into a directory.
Thankfully, complete Perl installations provide the CPAN module that takes care of:
- connecting to the CPAN module repository to fetch the latest module version
- resolving all dependencies, and installing required modules (for example, DBD::Oracle module requires DBI module; so CPAN will install DBI before DBD::Oracle)
- running tests added by the module author
- installing manual pages that come with the module
and so on...
So the first thing you may want to check is if you can use the CPAN module. The Perl script "cpan" is the command-line interface to the CPAN module; so see if these commands work on your *nix box -
("cpanp" or CPANPLUS is a more intuitive and user-friendly alternative to CPAN.)
It is recommended to run these commands as root, failing which your SysAdmin would've (or should've) given you access.
In order to install Perl modules in your local directory, set the PERL5LIB environment variable so that it points to your directory of choice.
If you cannot use cpan, then you are on a path that even seasoned Perl programmers fear to tread.
I know the root login/password for a machines, and I want to automate some commands like this from each:
ssh root@remoteHost1 "tail /var/log/messages"
ssh root@remoteHost2 "tail /var/log/messages"
ssh root@remoteHost3 "tail /var/log/messages"
ssh root@remoteHost4 "tail /var/log/messages"
ssh... (2 Replies)
We have a Solaris 10 server that we're migrating an old Cadre Teamwork application to. We find that when users on Sun workstations use ssh -X <username>@<new server> and run Teamwork on this new server it is fine.
When cygwin users and linux users run ssh -X to get to this new platform they... (0 Replies)
Hey,
I'm trying to build customized behavior in a bash script for when it is run within an ssh session. This is how I'm finding out if the current session is ssh:
USER=`whoami` ... (3 Replies)
I am using Net::SSH::Expect to connect to the device(iLO) with SSH. After the $ssh->login() I'm able to view the prompt, but not able to send any coommands.
With the putty I can connect to the device and execute the commands without any issues.
Here is the sample script
my $ssh =... (0 Replies)
Hello,
When I connect to a HP-UX 11.23 and/or 11.31 after a time without activity, the session hang.
There is not TMOUT stablished, and the session NOT finish, always keep hang after about 20min of inactivity period.
Anyone knows if this problem is related to HP-UX or network... (1 Reply)
Our network administrators implemented some sort of check to kill idle sessions and now burden is on us to run some sort of keep alive. Client based keep alive doesn't do a very good job. I have same issue with ssh. Does solution 2 provided above apply for ssh sessions also? (1 Reply)
Hi,
I want to execute some script on the remote session and transfer the processed file on remote machine to local machine.
I tried with ssh-keygen and ssh-copy-id but seems that this has been disable on the remote machines,
Is there any possiblity that I can save the remote username and... (7 Replies)
I ran a job using SSH and then used screen command followed by space bar. Then I ran the job. But after some hours, the internet connection was lost.This had happened to me before. I used to run the whole job again. Today I came across the fact that I could restart the jobs without having to do it... (2 Replies)
Hi ,
I am running a script on multiple servers.When I run that script on one server,I want to exit from that server and want to go to next server.PFB script:
Suppose there are 3 servers:server1,server2,server3.I am currently in server1.
for h in {2..3}
do
ssh username@server$h <<EOF
... (4 Replies)
Hello guys,
You are my last hope. I googled for hours and tried so many things but I can't find a way to fix my problem.
So there we go:
I open a SSH tunnel to my linux vps.
My client sends every 5-minutes a keepalive package and I also set the "ClientAliveInterval" value to 300 in the... (8 Replies)
Discussion started by: iamanewb
8 Replies
LEARN ABOUT SUSE
cpan
CPAN(1) Perl Programmers Reference Guide CPAN(1)NAME
cpan - easily interact with CPAN from the command line
SYNOPSIS
# with arguments and no switches, installs specified modules
cpan module_name [ module_name ... ]
# with switches, installs modules with extra behavior
cpan [-cfgimt] module_name [ module_name ... ]
# with just the dot, install from the distribution in the
# current directory
cpan .
# without arguments, starts CPAN.pm shell
cpan
# dump the configuration
cpan -J
# load a different configuration to install Module::Foo
cpan -j some/other/file Module::Foo
# without arguments, but some switches
cpan [-ahrvACDlLO]
DESCRIPTION
This script provides a command interface (not a shell) to CPAN. At the moment it uses CPAN.pm to do the work, but it is not a one-shot
command runner for CPAN.pm.
Options
-a Creates a CPAN.pm autobundle with CPAN::Shell->autobundle.
-A module [ module ... ]
Shows the primary maintainers for the specified modules.
-c module
Runs a `make clean` in the specified module's directories.
-C module [ module ... ]
Show the Changes files for the specified modules
-D module [ module ... ]
Show the module details. This prints one line for each out-of-date module (meaning, modules locally installed but have newer versions
on CPAN). Each line has three columns: module name, local version, and CPAN version.
-f Force the specified action, when it normally would have failed. Use this to install a module even if its tests fail. When you use this
option, -i is not optional for installing a module when you need to force it:
% cpan -f -i Module::Foo
-F Turn off CPAN.pm's attempts to lock anything. You should be careful with this since you might end up with multiple scripts trying to
muck in the same directory. This isn't so much of a concern if you're loading a special config with "-j", and that config sets up its
own work directories.
-g module [ module ... ]
Downloads to the current directory the latest distribution of the module.
-G module [ module ... ]
UNIMPLEMENTED
Download to the current directory the latest distribution of the modules, unpack each distribution, and create a git repository for
each distribution.
If you want this feature, check out Yanick Champoux's "Git::CPAN::Patch" distribution.
-h Print a help message and exit. When you specify "-h", it ignores all of the other options and arguments.
-i Install the specified modules.
-j Config.pm
Load the file that has the CPAN configuration data. This should have the same format as the standard CPAN/Config.pm file, which defines
$CPAN::Config as an anonymous hash.
-J Dump the configuration in the same format that CPAN.pm uses. This is useful for checking the configuration as well as using the dump as
a starting point for a new, custom configuration.
-L author [ author ... ]
List the modules by the specified authors.
-m Make the specified modules.
-O Show the out-of-date modules.
-t Run a `make test` on the specified modules.
-r Recompiles dynamically loaded modules with CPAN::Shell->recompile.
-v Print the script version and CPAN.pm version then exit.
Examples
# print a help message
cpan -h
# print the version numbers
cpan -v
# create an autobundle
cpan -a
# recompile modules
cpan -r
# install modules ( sole -i is optional )
cpan -i Netscape::Booksmarks Business::ISBN
# force install modules ( must use -i )
cpan -fi CGI::Minimal URI
EXIT VALUES
The script exits with zero if it thinks that everything worked, or a positive number if it thinks that something failed. Note, however,
that in some cases it has to divine a failure by the output of things it does not control. For now, the exit codes are vague:
1 An unknown error
2 The was an external problem
4 There was an internal problem with the script
8 A module failed to install
TO DO
* one shot configuration values from the command line
BUGS
* none noted
SEE ALSO
Most behaviour, including environment variables and configuration, comes directly from CPAN.pm.
SOURCE AVAILABILITY
This code is in Github:
git://github.com/briandfoy/cpan_script.git
CREDITS
Japheth Cleaver added the bits to allow a forced install (-f).
Jim Brandt suggest and provided the initial implementation for the up-to-date and Changes features.
Adam Kennedy pointed out that exit() causes problems on Windows where this script ends up with a .bat extension
AUTHOR
brian d foy, "<bdfoy@cpan.org>"
COPYRIGHT
Copyright (c) 2001-2009, brian d foy, All Rights Reserved.
You may redistribute this under the same terms as Perl itself.
perl v5.12.1 2010-07-01 CPAN(1)