Plink传递参数

时间:2013-01-15 08:20:39

标签: c linux ssh plink

plink user@10.220.60.xx -t '/home/user/test/testpgm'

我可以使用上面的plink cmd在windows机器上运行以下程序驻留在Linux机器上。

#include<stdio.h>
int main(int argc,char *argv[])
{
   int i;
   char buf[30];
   printf("Test Pgm \n");
   printf("No of Arguments=%d\n",argc);
   printf("Enter a string:");
   fflush(stdout);
   gets(buf);
   printf("Input str:%s \n",buf);

   return 0;
}

gcc test.c -o testpgm

问题:如何将命令行参数传递给此函数? 我试过了

plink user@10.220.60.xx -t '/home/user/test/testpgm arg1'

bash: /home/user/test/testpgm arg1: No such file or directory

2 个答案:

答案 0 :(得分:5)

shell将引号内的字符串视为单个单词,这意味着plink尝试执行程序/home/user/test/testpgm arg1。显然这不起作用。

您需要做的很简单:略过引号!

$ plink user@10.220.60.xx -t /home/user/test/testpgm arg1

答案 1 :(得分:0)

我试过

plink user@10.220.60.xx /home/user/test/testpgm arg1

工作正常。