小编n0p*_*0pe的帖子

命名管道在脚本中过早关闭?

LS:

prwx------ 1 root root 0 fifo
Run Code Online (Sandbox Code Playgroud)

write.sh:

#! /bin/bash
while true;
do
    echo "blah" > fifo
done
Run Code Online (Sandbox Code Playgroud)

read.sh:

#! /bin/bash
while true;
do
    cat fifo
done
Run Code Online (Sandbox Code Playgroud)

我打开了两个终端,一个正在运行write.sh,另一个正在运行read.sh.当我write.sh第一次开始时,它会挂起(就像它应该的那样).然后我去另一个终端开始read.sh,打印出"blah"很多次,然后write.sh停下来.为什么我的写脚本会停止?这是一个小小的测试,我正在尝试更好地理解管道,因为我将把所有日志发送到管道,所以我可以在将它们写入文件之前解析它们.

我在这里错过了什么?

bash logging pipe named-pipes

7
推荐指数
2
解决办法
2521
查看次数

C++指针与数组表示法

当我声明一个像这样的新数组:

int foo[5]
Run Code Online (Sandbox Code Playgroud)

foo真正的指针数组的第一个元素?我能做到这一点:

*(foo+2)
Run Code Online (Sandbox Code Playgroud)

访问数组的第三个元素?假设我正在制作2D数组:

int foo[3][4]
Run Code Online (Sandbox Code Playgroud)

foo现在int**

c++ arrays pointers

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

如何使把手帮助全局(在expressjs)

我有一个非常简单的把手助手文件helpers/handlebars.js:

var hbs = require('express-handlebars');

hbs.registerHelper("inc", function(value, options) {
    return parseInt(value) + 1;
});
Run Code Online (Sandbox Code Playgroud)

但是,正如预期的那样,我不能引用{{#inc}}帮助器,因为我没有将它传递给res.render()函数.有没有办法让我的文件中的所有助手全局并"自动包含"?

编辑:

在尝试了@ 1cgonza的精彩答案后,我得到:

hbs.registerHelper("inc", function(value, options) {
      ^
TypeError: undefined is not a function
Run Code Online (Sandbox Code Playgroud)

运行应用程序时.这是app.js:

var engine      = require('express-handlebars');
                  require('./helpers/handlebars.js')(engine);

app.engine('hbs',           engine({defaultLayout: 'layout', extname: 'hbs'}));
app.set('view engine',      'hbs');
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

javascript helper express handlebars.js

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

全屏Swing框架在Linux中无法正确聚焦(Windows很好)

我有一个应用程序产生几个全屏 - 无装饰框架(基本上控制所有屏幕空间).我的问题是,某些帧上的某些按钮被设计为"切换屏幕",这基本上意味着显示另一帧而不是当前帧.

我在Windows中使用以下方法轻松实现了这一目标:

target.setVisible(true);
target.requestFocus();
this.parent.setVisible(false);
Run Code Online (Sandbox Code Playgroud)

target我要切换到的框架在哪里.这是有效的,因为最初,我将所有帧设置为除了第一个"主"帧之外不可见.

现在,当我将其移植到Linux环境中时,在更改帧时会出现一个丑陋的"闪烁".在这一瞬间,我可以看到我的桌面背景和我在应用程序后面存在的任何打开的窗口.我之前在Windows中遇到过这个问题并通过聚焦目标帧来修复它,然后使旧的不可见.

关于如何解决这个Linux特定问题的任何想法?

编辑:

setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
setUndecorated(true);
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
setBounds(0,0,screenSize.width, screenSize.height);
this.getContentPane().setLayout(null);
setVisible(true);
validate();
Run Code Online (Sandbox Code Playgroud)

java linux swing frame

5
推荐指数
2
解决办法
1187
查看次数

如何为此密码字段提供焦点?

这可能看起来微不足道,但我无法弄清楚如何在此对话框焦点中给出密码框.

import javax.swing.JOptionPane;
import javax.swing.JPasswordField;

public class PasswordBox {
    @SuppressWarnings("unused")
    public String prompt() {
        JPasswordField pass = new JPasswordField(10);
        int action = JOptionPane.showConfirmDialog(null, pass,"Enter Password",JOptionPane.OK_CANCEL_OPTION); 
        return new String(pass.getPassword());
    }
}
Run Code Online (Sandbox Code Playgroud)

我从其他类调用它: String tmpPASS = new PasswordBox().prompt();

出于某种原因,当对话框出现时,"确定"按钮会获得焦点.

stacktrace(参见Eng.Fouad的回答):

at javax.swing.JComponent.addNotify(Unknown Source)
at PasswordBox$1.addNotify(PasswordBox.java:14)
at java.awt.Container.addNotify(Unknown Source)
Run Code Online (Sandbox Code Playgroud)

java passwords swing joptionpane jpasswordfield

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

简单有效的方法将HTML代码分解成几个文件并使用php的include()

目前,对于像页眉,页脚或常见侧边栏对象.php这样的东西,我创建了一个自定义文件并按照以下几行做了一些事情:

echo '
    <some><html><here>
';
Run Code Online (Sandbox Code Playgroud)

然后将其包含在我希望它出现的页面上:

include('path/to/file');
Run Code Online (Sandbox Code Playgroud)

唯一的问题是,有人可以将浏览器指向我的.php文件并自行查看部分HTML.这不是一个大问题,但似乎不专业,有点粗心.有没有更好的方法呢?

html php include

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

在 Web 服务器上动态编译 Latex 的安全问题

我正在建立一个网站,允许用户使用某些选择乳胶命令来构建文档。然后他们将能够预览文档,这意味着我将:

  • 解析文本文件以确保只有允许的命令存在
  • 使用PHP将用户的文本发送到pdflatex命令
  • 向用户显示输出的pdf

这有多安全?有没有更好的方法来做到这一点?

php pdf latex pdflatex

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

无法使用StackExchanges的PageDown将markdown转换为HTML

我有一种方法可以将直接标记代码(由PageDown编辑器生成)存储到数据库中.在另一个页面上,我从数据库中获取标记并通过降价转换器运行它,但是我似乎无法获得任何输出.这是我的脚本:

<script type="text/javascript" src="include/Markdown.Converter.js"></script>
<script type="text/javascript" src="include/Markdown.Sanitizer.js"></script>
<script type="text/javascript" src="include/Markdown.Editor.js"></script>
<script type="text/javascript">
    $(document).ready(function() {
        var converter = Markdown.Converter();
        $("#description-content").text(converter.makeHTML("<?php echo $description ?>"));
    });
</script>
Run Code Online (Sandbox Code Playgroud)

PHP正在回应数据库中的纯缩写文本.当我访问该页面时,div中没有​​任何内容.我究竟做错了什么?

编辑:我没有看到任何回声文本,如果我简单地在其中添加明文.text(),我可以看到它.

html javascript php markdown jquery

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

如何准备Django可能的slashdotting?

我想准备我的网站,以便可能涌入流量.这是我第一次使用Django作为框架,所以我不确定应该做哪些修改以确保我已做好准备并且不会失败.为生产级流量准备Django网站可以做些什么常见的事情?

我也想知道在交通数量方面会发生什么.我目前在Webfaction上主持600GB /月的流量.这会很快耗尽吗?有关'slashdotted'事件有多大的统计数据吗?

django optimization performance traffic webfaction

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

使用Firefox的localStorage检查器编辑cookie?

我正在对我的网站进行安全性分析,并希望了解修改后的会话数据将如何影响我的代码.我可以使用Firefox的本机存储选项卡(在开发人员工具菜单上)来查看我想要更改的cookie,但我无法编辑它.Firefox是否允许开箱即用或我是否需要插件?

cookies firefox

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