Plink传递参数

m4n*_*n07 3 c linux ssh plink

plink user@10.220.60.xx -t '/home/user/test/testpgm'
Run Code Online (Sandbox Code Playgroud)

我可以使用上面的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
Run Code Online (Sandbox Code Playgroud)

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

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

bash: /home/user/test/testpgm arg1: No such file or directory
Run Code Online (Sandbox Code Playgroud)

Som*_*ude 5

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

你要做的很简单:省略引号!

$ plink user@10.220.60.xx -t /home/user/test/testpgm arg1
Run Code Online (Sandbox Code Playgroud)