小编Pet*_*ter的帖子

javascript数组作为字符串列表(保留引号)

我有一个字符串数组.当我使用.toString()输出它时,引号不会被保留.这使得使用"in"构建mysql查询变得很困难.考虑以下:

SELECT * FROM Table WHERE column IN ('item1','item2','item3','item4')

toString is returning: IN (item1,item2,item3,item4)
Run Code Online (Sandbox Code Playgroud)

必须有一个我在这里忽略的简单修复.

javascript arrays node.js

25
推荐指数
4
解决办法
3万
查看次数

使用netcat将简单的C程序转换为服务器

的一个很酷的功能netcat是它如何将任何命令行程序转换为服务器。例如,在Unix系统上,我们可以通过将date二进制文件传递给来制作一个简单的日期服务器,netcat以便stdout通过套接字发送它:

netcat -l -p 2020 -e date
Run Code Online (Sandbox Code Playgroud)

然后,我们可以通过简单地发出以下命令从另一台机器上调用此服务:

netcat <ip-address> 2020
Run Code Online (Sandbox Code Playgroud)

/bin/sh尽管我知道这是极不推荐的做法,并且对安全性有很大影响,但即使是外壳也可以连接()。

同样,我尝试制作自己的简单C程序,该程序可以从stdin和读取和写入stdout

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

int main(int argc, char const *argv[])
{
    char buffer[20];
    printf("Please enter your name:\n");
    fgets(buffer, 20, stdin);
    printf("Hello there, %s\n", buffer);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

但是,当我从另一个终端调用服务时,没有初始问候。实际上,问候语仅在发送一些信息后才打印。例如:

user@computer:~$ netcat localhost 2020
User
Please enter your name:
Hello there, User
Run Code Online (Sandbox Code Playgroud)

我该怎么做才能使问候语首先通过套接字发送,然后等待输入,然后发送最终消息(就像我直接调用二进制文件一样)?

我知道可能会有更好(甚至更安全)的方法来实现这样的系统,但是我对的功能netcat以及为什么它不起作用感到好奇。

c unix stdio netcat

5
推荐指数
1
解决办法
3376
查看次数

标签 统计

arrays ×1

c ×1

javascript ×1

netcat ×1

node.js ×1

stdio ×1

unix ×1