我有一个简单的脚本:
#!/bin/bash
set -e
trap "echo BOO!" ERR
function func(){
ls /root/
}
func
Run Code Online (Sandbox Code Playgroud)
如果我的脚本失败,我想捕获ERR(因为它将在这里b/c我没有查看/ root的权限).但是,使用set -e它时不会被困住.没有set -eERR被困.
根据bash手册页,对于set -e:
... ERR上的陷阱(如果已设置)在shell退出之前执行....
为什么我的陷阱没有执行?从手册页看起来应该是这样.
为什么我跑步时无法定义新功能pdb?
例如,使用myscript.py:
#!/gpfs0/export/opt/anaconda-2.3.0/bin/python
print "Hello World"
print "I see you"
Run Code Online (Sandbox Code Playgroud)
如果我运行python -m pdb myscript.py并尝试以交互方式定义新函数:
def foo():
Run Code Online (Sandbox Code Playgroud)
我收到错误:
*** SyntaxError: unexpected EOF while parsing (<stdin>, line 1)
Run Code Online (Sandbox Code Playgroud)
为什么是这样?
我对使用它感到困惑setReplaceMethod().看着?setReplaceMethod没有提供解释,谷歌搜索不是很有帮助.
问题:请解释setReplaceMethod(),它的用法及其工作原理(最好以一个例子为准).
我有一个数据文件
data.txt
1 1
2 2
3 3
5 4
7 5
Run Code Online (Sandbox Code Playgroud)
我试图了解gnuplot如何使用awk.我可以用它来绘制它plot "<awk '{print $1,$2}' data.txt".但是,当我尝试load '<./script.sh data.txt'它不起作用.
script.sh
#!/bin/bash
awk 'BEGIN {
printf "plot ";
}
{
printf "%i %i\n",$1,$2
}
' $1
Run Code Online (Sandbox Code Playgroud)
使用该script.sh方法返回错误:
gnuplot> plot 1 1
Run Code Online (Sandbox Code Playgroud)^"<./ script.sh data.txt",第1行:意外或无法识别的令牌
在我看来,我的awk脚本是内联awk语句的功能等价物.为什么这个script.sh方法不起作用?
仅供参考,我知道我可以做plot "data.txt" u 1:2我的数据.这只是我想要解决的更复杂问题的理想化版本.
当我运行这条线时
my.lda<-lda(Group ~ X1+X2+X3+X4, data = df)
Run Code Online (Sandbox Code Playgroud)
我得到一个很长的输出,以这行结束
Proportion of trace:
LD1 LD2 LD3 LD4
0.8750 0.0958 0.0286 0.0006
Run Code Online (Sandbox Code Playgroud)
如何将迹线的 LD1 和 LD2 比例存储在单独的变量中?
谢谢
我正在使用vim编辑文件.我想在同一个vim会话中打开另一个文件(当前存在)并分割我的屏幕.我希望它是只读的,因为我不想冒险意外编辑它.
如果我尝试:sp another_file.txt,它会以读/写模式打开它.
我该怎么做呢?
我正在生成一组3D数据的2D热图.我希望能够有一个机制来交互式地浏览每个窗格.下面是一个简单的示例代码,我希望能够通过滑动条(或其他方法)以交互方式查看两个窗格(即z = [0,1]).matplotlib可以实现这一点,还是生成图像文件后我需要做后期处理?
import numpy as np
from matplotlib import pyplot as plt
data = np.random.randint(10, size=(5, 5, 2))
data_slice = np.zeros((5,5))
for i in range(0, 5):
for j in range(0, 5):
data_slice[i][j] = data[i][j][0]
plt.imshow(data_slice, cmap='hot', interpolation='nearest')
plt.show()
Run Code Online (Sandbox Code Playgroud)
编辑:我希望能够以交互方式执行此操作,并且似乎可能的重复尝试自动执行此操作.
我正在尝试从源代码构建一个 R 包 (DESeq2),以便我可以调试它。我已经安装了所需的所有依赖项,并且正在按照 Hillary Parker 的说明创建 R 包。我正在使用 R-3.4.2 在 CentOS 6.6 上运行它。
我跑:
library("devtools")
install("DESeq2", keep_source=TRUE)
Run Code Online (Sandbox Code Playgroud)
它将它安装在我所有其他 R 库的目录中。当我看着安装DESeq2库它丢失了所有的DESeq2/R/*.R和DESeq2/src/*.cpp文件。
问题:这些文件在哪里,为什么没有安装?这似乎不是预期的行为。
我正在抓取 twitter 试图让朋友/用户被关注以获得 twitter 用户列表。我在 OSX 10.13 上使用 tweepy 和 python 3.6.5。一个缩写的代码块:
def get_friends_for_each_twitter_user(UserL=None, Name=None):
.
. # Auth keys and such
.
for user in UserL: ### This is a list of USER class with the below fields ###
### Handle protected users ###
if(user.protected == True):
user.friendsL = "protected"
continue
screenNameL=[]
friendIDL=[]
friendL=[]
friendScreenNameL=[]
### Get IDs of people that this user follows (i.e. 'friends') ###
for page in tweepy.Cursor(api.friends_ids, screen_name=user.screenName).pages():
friendIDL.extend(page)
time.sleep(60)
## Loop through IDs, get …Run Code Online (Sandbox Code Playgroud) 我是 Docker 和 Singularity 的新手。我最近创建了规范的main.c.
#include <stdio.h>
#include <stdlib.h>
int main(void){
printf("Hello Docker World!\n");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我静态编译了这段代码,即
gcc -static -static-libgcc -static-libstdc++ -o hello main.c
Run Code Online (Sandbox Code Playgroud)
然后我构建了docker镜像并可以运行它,即
dockerd & ## Start Docker daemon
docker build --tag hello .
docker run hello ## Outputs "Hello Docker World"
Run Code Online (Sandbox Code Playgroud)
然后我保存图像,以便我可以将其导出到第二台计算机(它没有 docker,但确实有奇点),即
docker save hello > hello.tar
Run Code Online (Sandbox Code Playgroud)
现在在第二台没有 docker 但有奇点的机器上,我想创建一个奇点图像。奇点文档给出了从 Docker Hub 上的 docker 镜像创建奇点镜像的说明,但没有给出从 docker tar 文件转换的说明。
问题:我将如何从我的图像中创建一个奇点图像 hello.tar