小编Mat*_*bst的帖子

为什么不能在bash 4.1.2中访问带破折号的环境变量?

在CentOS 5主机上(使用bash 3.2.32),我们使用Ruby(1.8.7)来实现

ENV['AWS_foo-bar_ACCESS_KEY'] = xxxxx
Run Code Online (Sandbox Code Playgroud)

然后,使用bash,我们运行一个shell脚本:

BUCKET_NAME=$1
AWS_ACCESS_KEY_ID_VAR="AWS_${BUCKET_NAME}_ACCESS_KEY_ID"
AWS_ACCESS_KEY_ID="${!AWS_ACCESS_KEY_ID_VAR}"
export AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID}
Run Code Online (Sandbox Code Playgroud)

这在CentOS 5上运行良好.

但是,在CentOS 6上(使用bash 4.1.2),我们得到了错误

-bash: export: `AWS_foo-bar_ACCESS_KEY_ID=xxxxx': not a valid identifier
Run Code Online (Sandbox Code Playgroud)

我们的理解是,这失败了,因为-变量名中不允许这样做.但是为什么这个工作在bash 3.2而不是bash 4.1?

bash shell centos

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

打破嵌套循环:返回或标签/中断?

我正在使用JavaScript函数来设置全局变量.下面,我有两个非常愚蠢的示例函数.一个使用标签来打破嵌套循环.另一个使用空回报.

我的问题:从性能问题来看哪个更好?(为了争论,我们可以说你做了几百万次.)

使用空返回

function foo() {
    for(var i = 0; i < 100; ++i) {
        for(var j = 0; j < 100; ++j) {
            if(i * j == 50) {
                myGlobal = j;
                return;
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

使用标签和休息

function foo() {
    dance:
    for(var i = 0; i < 100; ++i) {
        for(var j = 0; j < 100; ++j) {
            if(i * j == 50) {
                myGlobal = j;
                break dance;
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我知道除了在满足我的内心条件/完成任务后完成功能,我什么都不做.

谢谢!

javascript performance return break nested-loops

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

"ls -1 path"中的-1是什么意思?

我正在查看一些shell代码,用于获取目录中文件数的计数.它写道:

COUNT=$(ls -1 ${DIRNAME} | wc -l)
Run Code Online (Sandbox Code Playgroud)

这个-1部分是什么意思?在任何其他问题中我都找不到任何关于此的内容,只是将引用传递给迭代目录中的文件而不是我正在查看的内容.此外,从命令中删除它似乎没有任何效果.

bash shell ls glob

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

react-bootstrap-table双头

使用react-bootstrap-table,我创建了一个表如下:

<BootstrapTable data={props.instances} hover condensed selectRow={props.selectRowOpts}>
  <TableHeaderColumn dataField={'interval_value'} dataSort>{'Interval'}</TableHeaderColumn>
  <TableHeaderColumn dataField={'status_name'} dataSort>{'Status'}</TableHeaderColumn>
  <TableHeaderColumn dataField={'started_ts'} dataSort>{'Started'}</TableHeaderColumn>
  <TableHeaderColumn dataField={'completed_ts'} dataSort>{'Completed'}</TableHeaderColumn>
  <TableHeaderColumn dataField={'last_runtime'} dataSort>{'RT'}</TableHeaderColumn>
  <TableHeaderColumn dataField={'attempts'} dataSort>{'Attempts'}</TableHeaderColumn>
  <TableHeaderColumn dataField={'pid'} dataSort>{'PID'}</TableHeaderColumn>
  <TableHeaderColumn dataField={'node_instance_id'} dataSort isKey>{'ID'}</TableHeaderColumn>
</BootstrapTable>
Run Code Online (Sandbox Code Playgroud)

但是,这给了我一些有趣的结果.这是我的表格(表格位于以下内容Tabreact-bootstrap:

在此输入图像描述

我做错了什么?最奇怪的部分是顶部的标题工作,但实际附加到表的标题什么都不做.

编辑:重新导入CSS后表 在我的index.html我现在有:

但是,虽然这修复了双头问题,但它仍然存在未对齐标头列的问题.该表现在看起来像这样:

在此输入图像描述

我也尝试过该react-bootstrap-table-all.min.css文件,但结果相同.

更新: 使用其中一个标题执行排序可修复对齐问题.但是为什么一开始会被打破?

twitter-bootstrap reactjs react-bootstrap

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

php -l:抑制有效文件的输出

使用php -l myFile.php命令(PHP 5.5.30)时,如果文件有语法错误,那么我会得到正确的警告和堆栈跟踪等.

但是,如果文件没有语法警告,我会收到消息

myFile.php中未检测到语法错误

当语法有效时,有没有办法让命令没有输出?我只关心文件是否有无效的语法 - 我不需要一条消息说它有效.

php phplint

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

为什么是&&和|| 优先选择-a和-o

if在bash中编写块时,shellcheck告诉我&&并且||更喜欢使用-a-o.

为什么?它更快,或者只是简单的风格偏好使脚本看起来更干净?

我得到的具体信息是:

^-- SC2166: Prefer [ p ] || [ q ] as [ p -o q ] is not well defined.
Run Code Online (Sandbox Code Playgroud)

bash shell shellcheck

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

nodejs 强大的异步问题

我正在使用强大的 3rd 方模块开发 nodejs 应用程序。我正在尝试获得对下面 form.parse 方法返回的 webform 字段的全局范围访问(请参阅下面的 var formfields)。首先,form.parse 是一个异步操作,根据此处的模块文档:https : //github.com/felixge/node-formidable旨在接受回调。我正在这样做,请参阅传递给 form.parse 的匿名函数。

我的问题是,无论我做什么,我都无法让 form.parse 将字段对象正确返回到全局上下文/范围中的 formfields 变量。我已经尝试了(几天)回调函数和返回辅助函数等的闭包的各种组合。但没有运气。

我想做的基本事情是:

var form = new formidable.IncomingForm();
form.encoding = 'utf-8';
var formfields = form.parse(req, function (err, fields, files) {
  console.log("within form.parse method, subject field of fields object is: " + fields.subjects);
  return fields;
}); // form.parse

console.log("type of formfields is: " + typeof formfields);
console.log("subject field of formfields object is: " + formfields.subjects);
Run Code Online (Sandbox Code Playgroud)

但是正如您从下面的 console.log 输出中看到的那样,即使我正在使用回调,执行也会“下降”到最后 2 行 …

javascript node.js formidable

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

PHP:getenv()和apache_getenv()之间的区别

我正在使用Apache 2服务器并在那里托管Web应用程序.我正在使用Apache SetEnv VARIABLE value命令在我的vhost中设置一些环境变量.

当想要在PHP中检索值时,我有两种方法.getenv()apache_getenv().

有什么真正的区别吗?是否有理由偏爱另一个?apache_getenv()如果getenv()工作方式相同并且允许您的代码与服务器无关,那么不确定方法的重点是什么.

php apache environment-variables

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

使用 react-router 和 browserHistory 进行 React 所需的最低 nodejs 服务器设置

我当前的 server.js:

let express = require('express');
let harp = require('harp');
let path = require('path');

let app = express();

app.use(express.static(__dirname + "/dist"));
app.use(harp.mount(__dirname + "/dist"));

let port = process.env.PORT || 3333;
app.listen(port, () => console.log("Listening on port " + port) );

// ... other routes for data fetching ...

// For browserHistory: https://github.com/reactjs/react-router/blob/1.0.x/docs/guides/basics/Histories.md
app.get('*', (req, res) => {
  res.sendFile(path.resolve(__dirname, 'dist', 'index.html'));
});
Run Code Online (Sandbox Code Playgroud)

当我在mysite.com/. 但是,如果我输入mySite.com/someRoute,它会中断。具体来说,我在控制台中看到以下内容:

Resource interpreted as Stylesheet but transferred with MIME type text/html: "http://localhost:3333/dashboards/styles/normalize-3.0.3.min.css".
...
Uncaught …
Run Code Online (Sandbox Code Playgroud)

browser-history node.js reactjs react-router react-routing

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

如何在ag-grid中始终显示水平滚动条?

是否可以始终在ag-grid中显示水平滚动条?这个问题是在他们的 GitHub 页面上作为问题提出的,但他们似乎忽略了它(我能告诉你的是,它不是在他们自己的问题跟踪器中创建的)。

我愿意接受官方解决方案、CSS hacks 以及任何真正有效的东西。

ag-grid ag-grid-react

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