簡體   English   中英

C 代碼 - 使用數組中的字符串將其作為 shell 腳本的參數傳遞

[英]C Code - Using a string from an array to pass it as an argument for a shell script

我一直在嘗試創建一個簡單的 C 代碼來發送密碼作為 shell 腳本的參數,我需要防止有人運行“字符串”命令並輕松獲取我的密碼。 是的,知道這並不完全安全,但至少可以防止任何傻瓜輕松獲得此密碼。 下面你可以看到我的代碼,但它抱怨數組:(我不知道如何將數組的全部內容作為參數傳遞給 shellscript.sh

#include <stdio.h>

int main() { 
  char array[] = {'P', 'A', 'S', 'S', 'W', 'O', 'R', 'D'}; 
  char cmd[1024] = {0};
  char cmd2[1024] = {0};
  char *base = "bash shellscript.sh ";
  sprintf(cmd, "%s", base);
  sprintf(cmd2, "%s %s", cmd, array[]); 

  system(cmd2);
}

我能夠修復它:) 這是新代碼。

#include <stdio.h>

int main () {
char s3[] = {'P', 'A', 'S', 'S', 'W', 'O', 'R', 'D', '\0'};
char *command = "bash cc.sh";
char *exec;
sprintf(exec,"%s %s",command, s3);
system(exec);
return 0;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM