The UNIX and Linux Forums  


Go Back   A UNIX és Linux Forums > Operációs rendszerek > Linux
.
google unix.com



Linux RedHat, Ubuntu, SuSE, Fedora, Debian, Mandriva, Slackware, Gentoo Linux, PCLinuxOS. Minden Linux kérdések itt!

Több, UNIX és Linux fórum témák Ön által talált Hasznos
Szál Thread Starter Fórum Válaszok Utolsó hozzászólás
Telepítse útmutató: Az Oracle Database 11g Release 1 az Oracle Enterprise Linux 5 iBot Oracle frissítések (RSS) 0 04-06-2008 06:10 AM
Upgrade Guide: Mozgásban az Oracle RAC 11g az Oracle Enterprise Linux iBot Oracle frissítések (RSS) 0 04-06-2008 06:10 AM
Építhet saját Oracle RAC Cluster az Oracle Enterprise Linux és iSCSI iBot Oracle frissítések (RSS) 0 04-06-2008 06:10 AM
Telepítse az Oracle RAC 10g Oracle Enterprise Linux VMware Server iBot Oracle frissítések (RSS) 0 04-06-2008 06:10 AM
Oracle (R) University Elindítja Enterprise Linux képzési és ... - CNNMoney.com iBot UNIX és Linux RSS hírek 0 11-14-2007 10:00 AM

 
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Téma eszközök Keresés a téma Rate Thread Megjelenítési módok
  #1 (permalink)  
Old 03-07-2008
sandiworld sandiworld is offline
Regisztrált felhasználó
  
 

Join Date: Oct 2007
Hozzászólások: 4
vgscan nem termel kimeneti fájl segítségével leírók az Oracle Enterprise Linux.

Írtam egy egyszerű programot, amely létrehoz egy gyermek folyamat végrehajt egy parancsot, és a kimenet lesz irányítva a fájl.

Kérjük, tekintse meg az alábbi kód ->

# include <stdio.h>
# include <stdlib.h>
# include <sys/stat.h>
# include <fcntl.h>

void execute (char ** argv)
(
pid_t pid;
int status;

int fStdOutDesc \u003d open ( "/ tmp / kimenet", O_CREAT | O_RDWR, S_IREAD | S_IWRITE);
int fStdErrDesc \u003d open ( "/ tmp / errfile", O_CREAT | O_RDWR, S_IREAD | S_IWRITE);

printf ( "Out file Leírás dup2% d \ n", fStdOutDesc);
printf ( "Err file Leírás dup2% d \ n", fStdErrDesc);

if ((pid \u003d fork ()) <0) / * villa gyermek folyamat * /
(
printf ( "HIBA: forking gyermek folyamatot nem sikerült ... \ n");
exit (1);
)

else if (pid \u003d\u003d 0) / * a gyermek folyamat: * /
(
dup2 (fStdOutDesc, fileno (stdout));
dup2 (fStdErrDesc, fileno (stderr));

if (execvp (* argv, argv) <0) / * végre a parancsot * /
(
printf ( "ERROR: exec failed ... \ n");
exit (1);
)
)
else / * a szülő folyamat: * /
(
while (wait (& status)! \u003d pid); / * vár befejezése * /
)
)

int main (void)
(
char cmd [1024];
char * argv [64];

printf ( "Adja meg a parancs:");
scanf ( "% s", & cmd); / * munkálatok ls és nem működik a vgscan * /
printf ( "\ n");
argv [0] \u003d cmd;
argv [1] \u003d '\ 0';
execute (argv);
return 0;
)

Futtatását követően a fenti programot, ez akarat gyors egy bemenet (parancs), ha beírja, hogy "ls", a kimenet az "ls" parancs irányítva / tmp / kimenet, míg a beírását követően vgscan, nem lesz semmi sem a / tmp / kimenet vagy a / tmp / errfile.

Ez a probléma különösen a néhány parancsot, mint a vgscan, pvscan, vgdisplay, stb lvdisplay mivel ezeket a parancsokat ad kimenet, ha futott végig a gránát.

Ez a helyzet csak az Oracle Enterprise Linux. Ugyanez a program működik más Linux-verziók.

Minden segítséget illetően ez nagyon hasznos.
 

Könyvjelzõk

Téma eszközök Keresés a téma
Keresés a téma:

Részletes keresés
Megjelenítési módok Rate this thread
Rate this thread:

Posting szabályzat
Ön nem post new threads
Ön nem post válaszok
Ön nem post Csatolmányok
Ön nem szerkeszteni az üzeneteidet

BB kód van Be
Smilies vannak Be
[IMG] kód Ki
HTML kód Ki
Trackbacks vannak Be
Pingbacks vannak Be
Refbacks vannak Be




Minden idő GMT -4. Az idő most 08:00 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Nyelvre lefordítva Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
A UNIX és Linux Fórum Tartalom Copyright © 1993-2009. Minden jog Reserved.Ad menedzsment RedTyger

Content Relevant URLs by vBSEO 3.2.0