小编Bon*_*io2的帖子

出于安全目的,在bash中清理用户输入

如何在bash脚本中清理用户输入,以便我可以将其作为参数传递给另一个shell程序?我想阻止以下情况:

INPUT="filename;rm -rf /"
ls $INPUT
Run Code Online (Sandbox Code Playgroud)

我认为它应该足以用双引号括起用户输入,如下所示:

ls "$INPUT"
Run Code Online (Sandbox Code Playgroud)

但如果有双引号$INPUT怎么办?

或者bash已经处理过这个问题了吗?

bash input sanitize

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

如何在笑话和酶中为 useState Hook 设置初始状态?

目前我使用带有反应钩子的功能组件。但我无法useState完全测试钩子。考虑这样一个场景,在useEffect钩子中,我正在执行 API 调用并在useState. 对于玩笑/酶,我模拟了要测试的数据,但我无法useState在玩笑中设置初始状态值。

const [state, setState] = useState([]);

我想在玩笑中将初始状态设置为对象数组。我找不到任何类似于类组件的 setState 函数。

javascript reactjs enzyme react-hooks react-hooks-testing-library

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

if(listStr.size == 0){与if(listStr.isEmpty()){

List<String> listStr = new ArrayList<String>();

if(listStr.size == 0){

}
Run Code Online (Sandbox Code Playgroud)

if(listStr.isEmpty()){

}
Run Code Online (Sandbox Code Playgroud)

在我看来,使用的一个好处listStr.isEmpty()是它不检查列表的大小,然后将其与零进行比较,它只是检查列表是否为空.是否还有其他优点,我经常看到if(listStr.size == 0)而不是if(listStr.isEmpty())代码库?有没有理由以这种方式检查我不知道?

java

27
推荐指数
3
解决办法
2万
查看次数

如何在pandas中将第一列和第一行设置为索引?

当我读取CSV时,我可以说pd.read_csv('my.csv', index_col=3)它将第三列设置为索引.

如果我在内存中有一个pandas数据帧,我怎么能这样做呢?我怎么能说第一行也作为索引呢?第一列和第一列是字符串,矩阵的其余部分是整数.

python python-3.x pandas

24
推荐指数
3
解决办法
5万
查看次数

form_for - Ruby on Rails

我不明白form_for.

我尝试实现本教程,但我不理解视图代码.
此外,我不明白api,否则我不会在这里问...

<%= form_for @user, :as => :user, :url => sign_in_path(@user) do |f| %>

  1. 什么是:as => :user说什么?
  2. :url => sign_in_path很清楚,但为什么会(@user)背后呢?
  3. 我怎样才能获得@user不同的访问权限View
    3.1.我也希望在application.html.erb(布局)中使用log-in-form ,但是@user它位于user_controller.rb和不在application_controller.rb.
    我怎样才能做到这一点?
  4. <%= form_for (User.new), ... 运作良好,但我认为这是不对的..
  5. 为什么有类似for/forEach-loop的东西? do |f| %>

谢谢你的帮助!

ruby ruby-on-rails ruby-on-rails-4

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

Python 单元测试模块抛出“ModuleNotFoundError:没有名为‘tests.test_file’的模块”

我正在尝试为我一直在从事的项目执行测试用例。我以前曾成功执行单元测试,但现在出错了。我确信没有任何库更新或路径更改。我试图查看源代码并弄清楚为什么它会出错但还没有运气。对此的任何帮助将不胜感激。

Python 版本 - 3.7.1

下面的示例代码

import unittest

class MyTestCase(unittest.TestCase):

def test_dummy(self):
    self.assertEqual(2+2,4)
Run Code Online (Sandbox Code Playgroud)

我在cmd中使用了以下命令来执行测试。

C:\Users\Yadada\Desktop\repo\mwe\mwe>python -m unittest tests\test_file.py

我的文件夹结构是

 MWE -|
      |_tests - |
                |_test_file.py
Run Code Online (Sandbox Code Playgroud)

预期的输出是测试成功执行,因为它很简单。但我最终得到以下错误

strclass
ERROR: test_file (unittest.loader._FailedTest)
----------------------------------------------------------------------
ImportError: Failed to import test module: test_file
Traceback (most recent call last):
  File "C:\Users\yadada\AppData\Local\Continuum\anaconda3\lib\unittest\loader.py", line 156, in loadTestsFromName
    module = __import__(module_name)
ModuleNotFoundError: No module named 'tests.test_file'


----------------------------------------------------------------------
Ran 1 test in 0.001s
Run Code Online (Sandbox Code Playgroud)

python unit-testing python-3.x anaconda

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

来自JSON的Concat号码没有使用jq的双引号

我有每行1个json文档start_idend_id每个文档中的字段和文件.我想使用jq来提取它们并将它们打印在同一行上.

到目前为止,我有:

cat part* | jq '"\(.start_id) \(.end_id)"' | sed s/\"//g | head
Run Code Online (Sandbox Code Playgroud)

这有效,但我需要sed删除双引号.

为了改善我的jq-foo,有没有办法在不使用sed的情况下做到这一点?

例如给定

{"start_id":1,"end_id":50}
{"start_id":50,"end_id":99}
{"start_id":99,"end_id":12}
Run Code Online (Sandbox Code Playgroud)

得到

1 50
50 99
99 12
Run Code Online (Sandbox Code Playgroud)

代替

"1 50"
"50 99"
"99 12"
Run Code Online (Sandbox Code Playgroud)

json jq

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

eclipse更新站点:HTTP代理验证必需错误

当我去安装新软件并选择更新站点时,我收到"需要HTTP代理身份验证"错误.

我已经搜索了互联网很长一段时间了,我仍然没有得到答案.

事实:

  • 我为每个更新站点都收到此错误.
  • 我可以在内部或外部浏览器中访问更新站点链接.
  • 我在eclipse网络设置中使用"本机"代理.
  • eclipse网络设置中的直接代理也不起作用.
  • 我们的服务台告诉我,在eclipse网络设置中设置手动代理是不可能的(或者他们不知道)
  • 我试过手动插入一个代理服务器:我在一个我发现的proxy.pac文件中找到的端口,没有运气......
  • 我已经尝试重新安装Eclipse,重新添加和/或重新加载存储库并删除repo cache目录
  • 我在ini文件中使用:-Djava.net.preferIPv4Stack = true
  • 我尝试使用这两种方法镜像存储库,但日志文件给出了相同的代理错误

我的系统:Eclipse for PHP Developers
版本:Luna Service Release 1a(4.4.1)
Build id:20150109-0600
Windows 7,64bit

eclipse proxy

15
推荐指数
3
解决办法
5万
查看次数

docker-compose up 永远挂起。如何调试?

我有一个带有 dockerfile 和用于部署它的 docker-compose.yml 的项目。但是如果我运行docker-compose up,命令会打印Building app并永远挂起。我没有看到正在执行的任何步骤。由于没有网络流量,它也不会下载图像,并且使用的图像在缓存中可用。

我怎样才能在我的机器上调试和解决这个问题?我可以使用 docker(-compose) 的详细选项吗?

docker docker-compose

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

在 fastapi 中,flask python manage.py shell 等效项

python manage.py在 Flask 应用程序中使用 shell 来使用 IPython shell 从 shell 访问我的应用程序。fastApi 中有类似的东西吗?

python ipython fastapi

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