问题描述
- 出先段错误,好像是vfprintf的问题
-
#include
#include
int main(char ip[20]){
FILE* fp=NULL;
fp=fopen("passwd.txt","r");
char buff[200];
int i;
for(i=0;;i++){
memset(buff,0,sizeof(buff));
if(fp==NULL)
break;
fgets(buff,10,fp);
printf("%s",buff);
char shell[200];
sprintf(shell,"/home/hht/workspeace/work1/ssh.sh%s%s",ip,buff);
system("shell");
}
}至于shell那段,我完全不会,在现摸索现用,不知道对不对
abcdefg
段错误 (核心已转储)我向让这个程序把passwd里面的一行一行密码抓出来,然后输进脚本里,让脚本用C语言的IP和密码来SSH
解决方案
http://outofmemory.cn/code-snippet/3254/c-usage-libssh2-yuancheng-execution-command
http://blog.csdn.net/wyc6668205/article/details/9179197
解决方案二:
#!/usr/bin/expect -f
set passwd $2
#密码
set host $1
#目标主机地址
set name root
#用户名
spawn ssh $host -l $name
expect "root@$host’s password:"
send "$passwdr"
send"unamen"
expect"LINUX"
send_user"success"
这是ssh.sh的代码,套进来的不知道对不对
时间: 2024-09-12 10:34:22