我不明白为什么以下代码会生成警告.
interface Generic<T> {
}
interface A {
}
class B {
Generic<A> c;
<T extends A> B(Generic<T> a) {
c = (Generic<A>) a; //warning here
}
}
//Unchecked cast from Generic<T> to Generic<A>
Run Code Online (Sandbox Code Playgroud)
在B类中,我只对使用类型为A的Generic实例感兴趣.这个警告表明我需要将Generic参数存储为T而不是A.
但这意味着我必须声明B泛型,这似乎使事情变得比他们需要的更复杂.
有没有办法使用unix date打印自纪元以来的秒数?
如果有办法,我愿意使用其他标准shell命令
(我正在使用Solaris,所以没有date "+"%s")
谢谢
#!/usr/bin/perl
Run Code Online (Sandbox Code Playgroud)
这是我最近写的很多剧本的shebang系列.
硬编码二进制文件的路径似乎可能会产生一些问题.例如,如果我的一个用户在/ something_else/bin安装了Perl,那么他们必须更改所有的shebang.
我见过一些可以自动替换shebangs的工具,但我想知道是否有更简单的东西.
我想以下面的方式让shell脚本重定向子进程的stdout
我知道我可以做点什么
#!/bin/sh
./child > file
cat file
Run Code Online (Sandbox Code Playgroud)
但那不会实时显示标准输出.例如,如果孩子是
#!/bin/sh
echo 1
sleep 1
echo 2
Run Code Online (Sandbox Code Playgroud)
用户将同时看到"1"和"2"
我正在寻找一种使用Perl将uid(代表系统用户的唯一编号)映射到用户名的方法.
请不要建议使用grep/ etc/passwd :)
编辑
作为澄清,我并没有寻找一个明确地阅读/ etc/passwd的解决方案.我意识到,任何解决方案最终都会做到这一点,但我正在寻找一个库函数来为我做这件事.
考虑一下这个Perl代码
my @a=[[1]];
print $a[0][0];
**output**
ARRAY(0x229e8)
Run Code Online (Sandbox Code Playgroud)
为什么打印ARRAY而不是1?我本来希望@a创建一个大小为1的数组,引用第二个只包含一个元素的数组1.
我正在寻找一个将当前工作目录存储到变量中的XSL样式表的具体示例.
我需要这个,因为在我的情况下,我需要使用相对路径导入某些库样式表.知道我的处理器选择的路径作为当前目录就足够了.
编辑
请不要特定供应商.
在POSIX线程接口中,pthread_join(thread)可以用来阻塞,直到指定的线程退出.
是否有类似的函数允许执行阻止,直到任何子线程退出?
这类似于wait()UNIX系统调用,除了适用于子线程,而不适用于进程
我在 Solaris 环境中运行 Python 脚本时遇到以下问题。
看来我在 shebang 线上做了一些不正确的事情,但我无法判断这是 Python 3 问题还是命令行问题。
但我怀疑它与 shebang 行有某种关系,因为当我在命令行上显式运行 Python 解释器时没有问题。
该路径/opt/python3.3.2/bin/python3.3是我的系统管理员选择放置 Python 的位置,我不知道这个位置在 Solaris 上是否有问题。
$ uname -a
SunOS ... 5.10 Generic_150401-49 i86pc i386 i86pc Solaris
$ cat test.py
#!/opt/python3.3.2/bin/python3.3
import sys
print("hi")
$ ./test.py
./test.py: line 2: import: command not found
./test.py: line 3: syntax error near unexpected token `"hi"'
./test.py: line 3: `print("hi")'
$ /opt/python3.3.2/bin/python3.3 test.py
hi
Run Code Online (Sandbox Code Playgroud)
编辑:我可以确认 test.py 中的行结尾是 Unix
编辑2: od输出
$ od -c -N 30 …Run Code Online (Sandbox Code Playgroud)