linux-12月一些Dome

1.替换文本中关键字

#include <stdlib.h>
#include <stdio.h>

int main()
{
   system("cat /mnt/hgfs/share/pi/1.txt");
   system("sed -i 's#qwe.hex#/home/pi/4G/qwe.hex#g' /mnt/hgfs/share/pi/1.txt");
   system("cat /mnt/hgfs/share/pi/1.txt");

   return 0;
}

2.获取文本中字符串,并进行替换

#include<stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <string.h>

int main(){
	char Down_state[]="XX.XX_00000";
	const char *pathname = "/mnt/hgfs/Workspace/4G/Down_state.txt";

	int fd = open(pathname,O_RDONLY);

	read(fd,Down_state,128);

	*(Down_state+6)='a';
	*(Down_state+7)='C';

	
	printf("read from file:\n%s\n",Down_state);


	close(fd);

	return 0;
}

3.system执行系统命令时可以自由键入参数


#include <stdlib.h>
#include <stdio.h>

//int main()
int main(int argc,char *argv[])
{

	//main函数传参 给system赋值
	//system()函数里的参数不可以直接是变量
	//使用sprintf先格式化到一个字符串数组中,然后传入system
	char fuse_cmd[100];//
	sprintf(fuse_cmd,"python /home/pi/fuse/my_start.py m64 %s > fuse_state.txt",argv[1]);
	system(fuse_cmd);

   return 0;
}

4.检查网络是否通畅

#include<stdio.h>
#include <unistd.h>

int go_ping(char *svrip)
{
        int i = 0;
        while(i < 3)
        {
                pid_t pid;
                if ((pid = vfork()) < 0) 
                {
                        printf("vfork error");
                        exit(1);
                } 
                else if (pid == 0) 
                {
                        if ( execlp("ping", "ping","-c", "1",svrip, (char*)0) < 0)
                        {
                                printf("execlp error\n");
                                exit(1);
                        }
                }

                int stat;
                waitpid(pid, &stat, 0);

                if (stat == 0)
                {
                        return 0;
                }
                sleep(3);
                i++;
        }
        return -1;
}

int main(void)
{
    int ret = go_ping("www.baidu.com");
    printf("+++++++++++++ret:%d\n",ret);
    if(ret == 0)
    {
        printf("connnect success\n");
    }
    else if(ret == -1)
    {
        printf("connnect failed\n");
    }


}

5.将终端的显示信息全部输出到txt

#include <stdlib.h>
#include <stdio.h>

int main()
{
	system("script -c \"pwd\" \"1111\"");

   return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值