linux ¼¸ÖÖIPCÀý×Ó×ܽá
1.¹ÜµÀ
1.1ÆÕͨ¹ÜµÀ
#include <unistd.h>
#include <sys/types.h>
#include <stdio.h>
#include <errno.h>
#include <stdlib.h>
int main()
{
int pipe_fd[2];
pid_t pid;
char buf_r[100];
char *p_wbuf;
int r_num;
memset(buf_r, 0, sizeof(buf_r));
if(pipe(pipe_fd) < 0)
{
printf("pipe create error!\n");
return -1;
}
if((pid = fork()) == 0)
{
printf("\n");
close(pipe_fd[1]);
sleep(2);
if((r_num = read(pipe_fd[0], buf_r, 100)) > 0)
{
printf("%d numbers read from the pipe is %s\n", r_num, buf_r);
}
close(pipe_fd[0]);
exit(0);
}
Ïà¹ØÎĵµ£º
²Ù×÷ϵͳ£ºlinux£¨feroda4£©
tcl°æ±¾£ºtclsh8.4
expect£º5.43.0
sshµÇ¼½Å±¾
#!/usr/bin/tclsh8.4
package require Expect
set user "root"
set host "10.2.26.30"
spawn ssh $user@$host
expect {
-re "password: $"   ......
½øÈëviºó ÓÐÁ½ÖÖģʽ
1.±à¼Ä£Ê½
2.ÃüÁîģʽ
½øÈëviºóĬÈÏÊÇÃüÁîģʽ£¬ËùÒÔ²»ÒªÂÒ°´ ¾Í»áµÃµ½ddµÄ¾¯¸æÉù£¬ÒªÊäÈëÎÄ×ֵϰ Çë°´aºói ¾Í¿ÉÒÔ¿ªÊ¼ÊäÈëÎÄ×ÖÀ£¡
ÊäÈë½áÊøºó Çë°´esc¼ü»ØÃüÁîģʽ
ÊäÈëq¾ÍÊÇÍ˳ö
ÊäÈëwq¾ÍÊÇ´æÅ̺óÍ˳ö
ÊäÈëq!·ÅÆú´æÅÌÇ¿ÐÐÍ˳ö
.
Vi µÄʹÓÃ
Vi ÒѾÊÇ Unix ϵͳÖбê×¼µÄÎÄ×Ö±à¼Æ ......
µÚËĽ² Ŀ¼ £¨video07,08,09,10£© Ç¿ÖÆÎ»ÓëðÏÕλ£ºÕë¶Ôu,g,o·Ö±ðÓÐset uid,set gid,¼°sticky¡£
set uid: chmod u+s DirName
set gid: chmod g+s DirName
sticky: chmod o+t DirName
ÀýÈç:ls –l /bin/ping ʹÓÃÁËset uid,±£Ö¤ÈκÎÓû§Ö´ÐÐpingÃüÁîʱ¶¼ÊÇÒÔrootÓû§Éí·Ý. ......
/bin »ù´¡ÏµÍ³ËùÐèÒªµÄÄÇЩÃüÁîλÓÚ´ËĿ¼£¬Ò²ÊÇ×îСϵͳËùÐèÒªµÄÃüÁ±ÈÈç ls¡¢cp¡¢mkdirµÈÃüÁ¹¦ÄܺÍ/usr/binÀàËÆ£¬Õâ¸öĿ¼ÖеÄÎļþ¶¼ÊÇ¿ÉÖ´Ðе쬯ÕͨÓû§¶¼¿ÉÒÔʹÓõÄÃüÁî¡£×öΪ»ù´¡ÏµÍ³ËùÐèÒªµÄ×î»ù´¡µÄÃüÁî¾ÍÊÇ·ÅÔÚÕâÀï¡£ /boot LinuxµÄÄں˼°Òýµ¼ÏµÍ³³ÌÐòËùÐèÒªµÄÎļþ£¬±ÈÈç vmlinuz initr ......