I am trying to write a perl script which will give an interactive session to a user to execute command on the server. I have written a small script to do this :
Code: !/usr/bin/perl -w use strict; use Net::SSH::Perl; my $host = '192.168.1.1'; my $username = 'user'; my $login_passwd = 'test123';
I'm trying to call a system command in perl and am having an issue with it.
Here's an example of a command i'd like to call: Code: sed -i '4 c192.168.1.4 www.something.com' hosts this is the section in my perl script where I create the variable and call it: Code: $doit = `sed -i '$line c$ip $host hosts'`system($doit); The $line, $ip, and $host variables are working fine becasue I can replace that section with "prints" and they come out fine. I imagine the problem is where I am creating the $doit variable.
Is there a way to execute some command and then after the command completes utomatically reboot the system and then after the system reboots execute another command ? For example look at the sequence shown below(1) Execute command-1(2) After the command-1 in (1) is completed,reboot the system (3) Execute command-2(4) After execution of command-2 reboot the sytemIs there a way i can automate this process so that i need not reboot the system manually
I am trying to fix a perl script, and I really suck at perl. But I think this problem will be easy for people who know it.
The problem is, I have an old setup script someone wrote many years ago. It fails if the standard shell is dash and not bash. The only way I've gotten it to work is to point /bin/sh to bash. I looked thru the script and it uses "system" many places, and I think that's the problem.
I searched for it and found this link:url
My plan is to include this function:
Code: sub system_bash { my @args = ( "bash", "-c", shift ); system(@args); } Then I could simply change all calls to system into system_bash and it should work?
The parameter to the system calls is usually some variable. What if the parameter is a list already? Do I need to test for it somehow, and if it's a list, prepend "bash" and "-c" to the list? How do I do that?
In the script there are lots of places like this:
my $error = system($cmd); if ($error) { die/warn "some error message"; }
Shouldn't there be a return in the system_bash function?
I am trying to execute command mactime in order to control changes made to the file system, but I am getting an error. I am running the shell as root, and it is the first time I run the command in this system - Debian Squeeze up to date. The I/O is as follows:
# mactime 3/1/2011 cannot exec /bin/date: No such file or directory cannot exec /bin/hostname: No such file or directory cannot exec /bin/uname -n: No such file or directory Cannot open /var/cache/tct/data/Amnesiac/body: No such file or directory
The first three lines of output are the ones that are worrying at the moment; I am not concerned with the last. Although error messages suggest the programs date, hostname and uname do not exist in /bin directory, they are available as shown by
what is wrong i have a web server setup and working fine running a web store in php i have added a search engine for the web the easiest setup programme is with an extension .pl when i try and execute this it asks me if i want to download it or open it i had this problem with the php script which a reboot sorted out so i have tried rebooting but get the same problem does anybody know how i can get it to execute on my server?
I had a problem on ubuntu when running "sudo apt-get dist-upgrade" and wanted to report how I solved it. Hopefully this helps anybody with similar problems.
I always got the error message:
Code:
The problem is in libxml-sax-perl.postinst which does not seem to be executable.
I did not install any perl packages manually by cpan and found the solution in http://ubuntuforums.org/archive/inde...t-1342009.html where it was only one part of a bigger problem.
I created a backup file (always a good idea) of my libxml-sax-perl.postinst:
Code:
I deleted the old file:
Code:
Created a new file:
Code:
With the following content (copied from the link mentioned above):
I have a big bash script ,its goal is to download movie one by one . But I often get into a problem: if this script is executed in cron,it often does not completely download the movie.I often find the movies it downloaded are several KB while the movie is actually 20MB.So I think it is because it did not wait for finishing one task ,and jump to download another.So I want to know ,is there a way to force the bash script to wait until one movie downloaded completely and then start to download another movie ?
$cmd If this script is executed, an error is generated. The reason written was that "The execution fails because the pipe is not expanded and is passed to date as an argument".What is meant by expansion of pipe. When we execute date | wc on the command line, it goes fine.then | is not treated as an argument. Why?
I have a script which builds a project and then runs junit tests. However, if the build fails, the junit tests fail with the same error message.Therefore the command which runs the junit tests should only be executed if the build was successful.
I want to start my Ubuntu 10.04 and without logging in I need a command started. The command is setxkbmap .... So, I will not put the command in my .profile, nor in my .bashrc, because I am not going to login.
I want to start my Ubuntu 10.04 and without logging in I need a command started. The command is setxkbmap .... So, I will not put the command in my .profile, nor in my .bashrc, because I am not going to login.
I googled around and couldnt find what I was looking for. Maybe I used the wrong search terms, but whatever. I was wondering if there was a possibility to execute a series of terminal commands just by double-clicking an icon. For example, there would be an icon on my desktop, and if I were to doubleclick it, it would execute "cd ~/.wine2" and then "WINEPREFIX="$HOME/.wine2" wine program.exe".
I realise that most of you will probably go "duh, that's simple" or something similar, but I am extremely new to ubuntu, and dont know my way around yet.
I need to execute this command after login: gvfs-mount -d /dev/sda1.It works perfectly from terminal but it doesn't if I add it to "Startup Applications" or to rc.local.Is there another way?
I use two monitors,my problem is that I want to change the setup,so that the other monitor becomes default.There's no problem with my BIOS settings and I have tried every GUI tool that could help me(to my knowledge).Well I've found this URL...that helps a lot but I want to execute the command every time I boot before the splash screen(so that the login screen appears on the right monitor).I've tried rc.local but had no success.Any ideas on how to execute the command at boot time?
Is it possible to allow a group/user to execute a command, where one of the parameters of the command is a group as well? example that does not work as intended:
Code: Cmnd_alias SU=/bin/su -l %group1 This example works sortof, it treats the "%group1" literally. I know I can list out the "/bin/su -l <eachuser>", but as you can imagine that is impractical. In this example, I want people in group2(not shown for brevity sake) to be able to su to someone in group1
Some time ago I installed LAMP in my server, but now I need to execute .php files from the command-line (in order to execute some manteinance scripts for mediawiki). Seems that the PHP files running in the server are run thru some kind of "module" in apache2. Can I tell apache2 to run a .php file in command-line mode using that php module? Or should I install a fresh copy of php-5? Won't that interfere with apache or mangle the system?
i have one executable file (filename : "tet"). i can run this command in other linux os like: "fedora, cent os" using command "./tet", and it's working fine. but this command not working in debian. i don't know how to execute this file.
1. i have tried with 755 and 777 permission 2. i have tried "home/fullpath/tet" 3. i have tried "/tet" 4. i have tried "./home/fullpath/tet"
but above all commands are failed. to run this execute file
I would like to have an user that can execute al command with sudo.I configured sudo with yast2 and in the sudoers file actually there is a line with:USER ALL = (ALL) ALLWhere user is my username.But I can't use some command like ifconfig becouse it say that it can't find the command. I think that this is becouse of path, but shouldn't i get root path using sudo?