小编kay*_*e99的帖子

使用putty scp从windows到Linux

我正在尝试测试一些我正在编写的C代码.唯一的问题是代码需要在远程机器上执行.我的笔记本电脑很老了,我的无线网卡没有可用于Ubuntu的驱动程序,所以启动进入Linux以避免这个问题不是一个选择.这是我的问题:

我正在使用putty来SSH到远程机器,我正在Notepad ++上编写我的代码.我的文件的位置是: C:\Users\Admin\Desktop\WMU\5260\A2.c

我的问题是,当我使用命令时,scp C:\Users\Admin\Desktop\WMU\5260\A2.c ~ 我得到了错误could not resolve hostname C:. Name or service not known".

我也试过scp Users\Admin\Desktop\WMU\5260\A2.c ~,这给了我错误Cannot stat 'Users\Admin\Desktop\WMU\5260\A2.c': no such file or directory

我做错了什么?

linux windows ssh putty scp

50
推荐指数
3
解决办法
31万
查看次数

使用"break"打破"for"循环被认为是有害的?

几天前我开始了一个快速的开源项目,当一些伙伴查看svn上的代码时,其中一个告诉我breakfor循环中使用语句被认为是有害的,不应该这样做.

但他补充说,我会在Linux内核源代码的循环break内找到几个语句for,但这只是因为只有Linus Torvalds和Chuck Norris被允许使用它而没有其他人.

你怎么看?我看到在使用没有问题break一个内for循环.在我看来,模拟break使用布尔变量或类似的东西的行为增加了许多不必要的开销,并使代码不那么简单.

而且,没有比较的余地goto,因为break不能随意改变程序的流程从一个点到另一个谎言goto.

c++ loops for-loop goto break

22
推荐指数
5
解决办法
6万
查看次数

实现用户登录系统的正确方法

我想创建一个用户登录系统,以便学习.我有几个问题.

我做了一些研究,发现实现用户登录系统的正确方法是在数据库中存储用户名/ id和密码的加密/散列版本.当用户登录时,密码在客户端加密(MD5,SHA-1等)并发送到服务器,并与数据库中的密码进行比较.如果匹配,则用户成功登录.

此实现可防止DBA或程序员在数据库中看到密码的明文.它还可以防止黑客在传输过程中拦截真实密码.

这是我困惑的地方:

  1. 如果黑客知道密码的哈希/加密版本(通过黑客入侵数据库)或DBA,程序员只需简单地读取数据库中的文本即可获得密码的哈希版本.然后,他们可以轻松地创建一个程序,将这个哈希版本的密码发送到服务器,允许他们成功登录.如果他们可以这样做,加密密码似乎不是很有用.我想我在这里误解了一些东西.

  2. 这是(我上面描述的方式)实现用户登录功能的最流行方式吗?它是否遵循当前的最佳做法?我是否必须手动完成所有操作,或者某些数据库是否具有执行相同操作的内置功能?是否有最常用的方法/方法为网站或网络应用程序执行此操作?如果是这样,请向我提供详细信息.

  3. 我以前的公司使用couchDB存储用户登录信息,包括密码.他们没有对加密方面做太多的事情.他们说couchDB会自动加密密码并将其存储在文档中.我不确定这是否安全.如果是这样,那对程序员来说非常方便,因为它节省了大量的工作.

  4. 这种方式(第3点)是否足以保证正常使用?其他数据库系统如mySQL有这种能力可以做同样的事情吗?如果是这样,是否意味着使用mySQL内置方法足够安全?

我不是在寻找一种非常安全的实现用户登录功能的方法.我更愿意为大多数Web应用程序寻找一种流行,易于实现,正确,安全的方法.请给我一些建议.提供的详细信息将非常感谢.

authentication authorization login logonserver password-encryption

15
推荐指数
2
解决办法
1万
查看次数

如何在 gitlab-runner 容器内运行的 docker 中的 docker 中运行 docker-compose?

我在 docker 容器中有一个 gitlab runner,如果我运行像 nginx 这样的图像,运行良好。但是现在我尝试在 gitlab runner 中的 docker (dind) 中运行 docker,我想在 dind 中运行 docker-compose。Docker 信息运行良好,但如果我尝试运行 docker-compose,我会收到一个权限被拒绝的错误。

我将 /usr/local/bin/docker-compose 文件链接到 gitlab runner 容器,并将其输入到 runner config.toml 文件的卷参数中。

如果我尝试运行 sudo,它会以未知的命令错误结束,因此这不是解决方案。

我是否必须更多地链接一些文件,还是链接到许多嵌套容器?

docker gitlab-ci-runner docker-compose

12
推荐指数
2
解决办法
9340
查看次数

使用特定的JSON键值对创建数组

假设我有一个像这样的JSON数组

[{"name":"Lenovo Thinkpad 41A4298","website":"google"},
{"name":"Lenovo Thinkpad 41A2222","website":"google"},
{"name":"Lenovo Thinkpad 41Awww33","website":"yahoo"},
{"name":"Lenovo Thinkpad 41A424448","website":"google"},
{"name":"Lenovo Thinkpad 41A429rr8","website":"ebay"},
{"name":"Lenovo Thinkpad 41A429ff8","website":"ebay"},
{"name":"Lenovo Thinkpad 41A429ss8","website":"rediff"},
{"name":"Lenovo Thinkpad 41A429sg8","website":"yahoo"}]
Run Code Online (Sandbox Code Playgroud)

我想获得一个值等于的所有names 的数组.websitegoogle

首先,过滤JSON阵列为只包含其中的条目website就是google,我有这样的:

var data_filter = data.filter( element => element.website =="google");
console.log(data_filter);
Run Code Online (Sandbox Code Playgroud)

得出以下结果:

[{"name":"Lenovo Thinkpad 41A4298","website":"google"},
    {"name":"Lenovo Thinkpad 41A2222","website":"google"},
    {"name":"Lenovo Thinkpad 41A424448","website":"google"}]
Run Code Online (Sandbox Code Playgroud)

接下来我需要做什么来获得name一个单独的数组.我试过这样做:

let new_array = [];
  new_array.push(data_filter.body.name)
Run Code Online (Sandbox Code Playgroud)

这给了我一个未定义的错误name.我也尝试过:

new_array.push(data_filter.name)
  new_array.push(data_filter.body[0].name)
Run Code Online (Sandbox Code Playgroud)

但这些方法都不起作用.我在这里错过了什么?

仅供参考 - JSON数据和过滤方法在此SO 帖子中提及- OP和答案.

javascript arrays json

7
推荐指数
1
解决办法
725
查看次数

更新表中的项目时,DynamoDB 如何消耗容量?

最近我正在使用 DynamoDB 构建一些 API。

在一个名为planet的表中,有一个属性是List of Maps(Array of Objects)的形式。基本上,属性看起来像这样。我将其称为buildingMap,因为它是许多建筑物的地图。

[
  {
    id: 'some id',
    status: 'processing',
    ...
  },
  {
    id: 'other id',
    status: 'done',
    ...
  }
]
Run Code Online (Sandbox Code Playgroud)

事情是,最初,我指出索引并直接更新数组中的该对象,就像使用这种 UpdateExpression 一样。

REMOVE buildingMap[2]

或像这样的 UpdateExpression

SET buildingMap[0].#status = :status

我认为这将使 DynamoDB 消耗的容量比我取出整个buildingMap,重写它,然后将整个buildingMap放回去要少

像这样

// Get the item using DynamoDB.DocumentClient
const planet = await docClient.get({
  TableName: 'Planet',
  Key: { planetId: 'xxxxx' }
}).promise()

// Modify the buildingMap attribute
let buildingMap = planet.Item.buildingMap
buildingMap.splice(0, 1) // …
Run Code Online (Sandbox Code Playgroud)

api amazon-web-services node.js amazon-dynamodb

3
推荐指数
1
解决办法
2033
查看次数

Ruby:在上个月重复了几天

我需要能够循环上个月的所有日子,并在解析的日子里做些什么.这是我到目前为止:

def dateTest

    d = Date.parse(Time.now.to_s)

    from_date = Date.new(d.year, d.month - 1, 1)
    to_date = Date.new(d.year, d.month, -1)

    from_date..to_date.each do |day|
        #Do stuff with day
    end

end
Run Code Online (Sandbox Code Playgroud)

我的问题是,我似乎无法to_date与上个月的最后一天相提并论.我已经阅读了很多类似的问题,但是大多数问题似乎都更倾向于Rails,在这种情况下这对我没有帮助.

ruby date

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

如何在SQL Server 2008中将列与where子句一起使用distinct?

我想获得特定列的不同值,但如果选择了3列以上,则不能正确管理duplicity.

查询是:

SELECT DISTINCT 
  ShoppingSessionId, userid 
FROM 
  dbo.tbl_ShoppingCart 
GROUP BY 
  ShoppingSessionId, userid 
HAVING
  userid = 7
Run Code Online (Sandbox Code Playgroud)

此查询产生正确的结果,但如果我们添加另一列,则结果是错误的.

请帮助我,因为我想使用ShoppingSessionIdas作为一个独特的,除非我想使用表中的所有列,包括使用该where子句.

我怎样才能做到这一点?

distinct where-clause sql-server-2008

0
推荐指数
1
解决办法
4933
查看次数

没有xml的HiddenHttpMethodFilter配置

如何在Spring MVC中实现HiddenHttpMethodFilter而无需在web.xml中添加条目?

java spring-mvc

0
推荐指数
1
解决办法
1905
查看次数