类似于MySQL的show variables
命令,显示中定义的所有变量,而不仅仅是那些my.ini
,我想看到的清单全部在配置变量git
连同它们的默认值,而不仅仅是那些在我的定义~/.gitconfig
.
这可能吗?
这不起作用:
$ groovy -e 'println "Hello, world!"'
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
script_from_command_line: 1: unexpected char: 0xFFFF @ line 1, column 23.
println "Hello, world!
^
1 error
Run Code Online (Sandbox Code Playgroud)
但是,在最后的双引号和单引号之间加一个空格......
$ # groovy -e 'println "Hello, world!"'
$ groovy -e 'println "Hello, world!" '
Hello, world!
Run Code Online (Sandbox Code Playgroud)
......即使bash
似乎能够正确处理尾随"'
对(即没有任何中间空间),如下所示:
$ echo '"Hello, world!"'
"Hello, world!"
Run Code Online (Sandbox Code Playgroud)
另外,括号化println
参数可以正常工作:
$ groovy -e 'println ("Hello, world!")'
Hello, world!
Run Code Online (Sandbox Code Playgroud)
现在,我想知道为什么第一个案例不起作用.
我正在使用:
我无法通过YouTube Player API的getDuration()方法获取加载/提示视频的正确视频持续时间/长度(以秒为单位); 但是,相同的方法会在视频开始播放后返回有效值!想知道YouTube如何能够显示加载/提示视频的有效持续时间.
当我用15秒的视频剪辑加载这个HTML页面时,我得到以下调试输出:
state = 5 duration = -0.000025
当我点击播放按钮时,我得到以下调试输出:
state = 3 duration = 15,
非常感谢解决方案或解决方法.加载,立即播放和暂停播放器将不是我最喜欢的方法.
<html>
<head>
<script type="text/javascript">
var videoId;
videoId = 'http://www.youtube.com/v/4TSJhIZmL0A'; // bbc
// videoId = 'http://www.youtube.com/v/ezwyHNs_W_A'; // physics
function $(id) {
return document.getElementById(id);
}
</script>
<script src="http://www.google.com/jsapi"></script>
<script>
google.load("swfobject", "2.1");
</script>
</head>
<body>
<table>
<tr><td>
<div id="player">
You need Flash player 8+ and JavaScript enabled to view this video.
</div>
<script>
var ytplayer;
function myOnPlayerStateChange(state) {
switch(state) {
case 1: // playing …
Run Code Online (Sandbox Code Playgroud) javascript youtube duration youtube-api youtube-javascript-api
我正在使用两个在线资源来获得对5NF的理解,而没有任何严格的数学和证明.
但是,我无法理解这些参考文献中的任何一个!
它说:"但假设某条规则有效:如果代理商销售某种产品,而他代表一家制造该产品的公司,那么他就会为该公司销售该产品."
然后,继续分解原始表(所有表名都由我给出)......
acp(agent, company, product)
-----------------------------
| AGENT | COMPANY | PRODUCT |
|-------+---------+---------|
| Smith | Ford | car |
| Smith | Ford | truck |
| Smith | GM | car |
| Smith | GM | truck |
| Jones | Ford | car |
-----------------------------
Run Code Online (Sandbox Code Playgroud)
...分为3个表:
ac(agent, company)
cp(company, product)
ap(agent, product)
------------------- --------------------- -------------------
| AGENT | COMPANY | | COMPANY | PRODUCT | | …
Run Code Online (Sandbox Code Playgroud) 随着Java EE和EJB 3的到来,
是否有任何这些核心J2EE模式已经过时,或者根据(更好)替代方案而被弃用?
是否有可以使用的新模式?
在Linux上,是否有可能以某种方式禁用外部程序的信令...即,不修改其源代码?
语境:
我在Linux上的bash脚本中调用了一个C(也是一个Java)程序.我不希望我的bash脚本和脚本启动的其他程序(作为前台进程)中断.
虽然我可以用...
trap '' INT
Run Code Online (Sandbox Code Playgroud)
...在我的bash脚本中禁用Ctrl C信号,这仅在程序控件恰好在bash代码中时才有效.也就是说,如果我在C程序运行时按下Ctrl C,C程序会被中断并退出!这个C程序正在进行一些关键操作,因此我不希望它被中断.我无法访问此C程序的源代码,因此C程序内的信号处理是不可能的.
#!/bin/bash
trap 'echo You pressed Ctrl C' INT
# A C program to emulate a real-world, long-running program,
# which I don't want to be interrupted, and for which I
# don't have the source code!
#
# File: y.c
# To build: gcc -o y y.c
#
# #include <stdio.h>
# int main(int argc, char *argv[]) {
# printf("Performing a critical operation...\n");
# for(;;); // …
Run Code Online (Sandbox Code Playgroud) 比方说,我决定使用Java EE堆栈来实现我的企业应用程序.
现在,对于域建模(或:用于设计MVC的M),我可以安全地假设和使用哪些API,哪些我应该远离......比如说,通过抽象层?
例如,
我应该继续使用Hibernate/JPA API调用我的模型吗?或者,我应该构建一个抽象...我自己的持久层,以避免对这两个特定的持久性API进行硬编码?为什么我这样问:几年前,这个Kodo API被Hibernate取代了.如果设计了一个持久层并对该层编码模型的其余部分(而不是通过调用特定的供应商API来乱丢模型),那么它将允许一个(相对)轻松地从Kodo切换到Hibernate到xyz.
是否建议在域模型中积极使用持久性供应商提供的*QL?我不知道由于大量使用类似HQL的语言而产生的任何现实问题(如性能,可伸缩性,可移植性等).为什么我这样问:我希望尽可能避免编写自定义代码,这可以通过比SQL更便携的查询语言来实现.
对不起,我是这个地区的新手.我在哪里可以找到关于此主题的更多信息?
我不知道在哪里寻求有关Java API文档和Java代码的澄清和确认,所以我在这里做.
在API文档中FileChannel
,我发现在一个以上的地方提交文件position
和文件的一个一个错误size
.
这只是一个例子.transferFrom(...)
州的API文件:
"如果给定位置大于文件的当前大小,则不传输任何字节."
我确认OpenJDK代码也包含此代码...
public long transferFrom(ReadableByteChannel src, long position, long count)
throws IOException
{
// ...
if (position > size())
return 0;
// ...
}
Run Code Online (Sandbox Code Playgroud)
...在FileChannelImpl.java
与文档一致的文件中.
现在,虽然上面的代码片段和API文档看起来相互一致,但我觉得"上面应该'大于或等于'而不仅仅是'大于',因为position
它是一个基于0的文件数据索引,阅读时position == size()
将没有数据返回给来电者!(position == size() - 1
至少1个字节 - 文件的最后一个字节 - 可以返回给调用者.)
以下是同一API文档页面中的其他类似实例:
position(...)
:"将位置设置为大于文件当前大小的值是合法的,但不会更改文件的大小." (应该是'大于或等于'.)
transferTo(...)
:"如果给定位置大于文件的当前大小,则不传输任何字节." (应该是'大于或等于'.)
read(...)
:"如果给定位置 …
可能重复:
Echo扩展PS1
有没有什么办法来"评价" PS1
,PS2
从bash脚本中,等?
虽然,我可以使用其他方法来获取当前的所有元素PS1
,但我真的希望能够重用其定义而不是使用这些替代方法.
例如,
=====================================
PS1 element --> Alternate means
=====================================
\u --> $USER
\h --> $HOSTNAME
\w --> $PWD
...
=====================================
Run Code Online (Sandbox Code Playgroud)
我可以很好地使用我的脚本中的"备用方法"列,但我不想这样做.在我PS1
,我,例如,通过终端转义序列使用粗体蓝色,我希望能够通过评估简单地重用PS1
.
我正在实现一个类似于MySQL客户端的交互式bash脚本/usr/bin/mysql
.在这个脚本中,我需要发出各种类型的"命令".我还需要提供一种历史机制,用户可以使用上/下箭头键滚动到目前为止输入的命令.
此处列出的代码段(示例15-6,检测箭头键)并不完全符合我的要求.我真的想要以下内容:
上/下箭头键应以静音模式运行.意思是,它们不应该在终端上回显它们的字符代码.
但是,其他键(用于读取命令名称及其参数)不能以静默方式运行.
问题read -s -n3
在于,它不能满足我的静音模式和回声模式的同时冲突要求,仅基于字符代码.此外,该值-n3
将适用于箭头键,但对于其他/常规键,它将不会"返回控制"到调用程序,直到消耗了3个字符.
现在,我可以尝试-n1
手动组装输入,一次一个字符(哎呀!).但基于字符代码的静音/回声模式切换问题仍然存在!
有没有人在bash中尝试过这个东西?(注意:我不能使用C,也不能使用其他脚本语言,如Perl,Python等)
编辑
继续Dennis的回答......您还需要手动将所需的条目添加到您的历史记录中history -s
,如此...
while read -e x; do
history -s "$x"
# ...
done
Run Code Online (Sandbox Code Playgroud) bash ×3
java-ee ×2
bash-trap ×1
duration ×1
evaluate ×1
external ×1
filechannel ×1
git ×1
git-config ×1
groovy ×1
history ×1
interactive ×1
java ×1
java-ee-6 ×1
javascript ×1
linux ×1
modeling ×1
nio2 ×1
ps1 ×1
signals ×1
youtube ×1
youtube-api ×1