安装intellij并添加sdk路径到项目结构,但当我尝试运行时我得到:
Error: Cannot run program "/home/$USER/java/jdk1.8.0_121/bin/java"
(in directory"/home/$USER/.intelliJIdea2016.3/system/compile-server"):
error=2, No such file or directory
Run Code Online (Sandbox Code Playgroud)
两个文件(/home/$USER/java/jdk1.8.0_121/bin/java和/home/$USER/.intelliJIdea2016.3/system/compile-server)都存在.
我正在使用Ubuntu 16.10
试图复制文件夹内容,它适用于我硬编码路径,如:
COPY ./my-folder /path/to/location
Run Code Online (Sandbox Code Playgroud)
但是需要能够改变这条路径,所以我尝试使用这样的构建参数:
COPY ${folderVariable} /path/to/location
Run Code Online (Sandbox Code Playgroud)
然后用
--build-arg folderVariable=./my-folder
Run Code Online (Sandbox Code Playgroud)
但是当我只想要"my-folder"的内容时,它会将所有内容复制到与"my-folder"相同的文件夹中
for k in $(git branch -r --merged origin/master | cut -d" " -f 3); do
echo $k
done
Run Code Online (Sandbox Code Playgroud)
我有一个git项目列表,我想清理旧的分支,我想要做的是列出并删除所有合并到master的分支.
有没有办法在不在本地克隆每个回购的情况下执行上述操作?
我已经使用Prometheus,Grafana和cAdvisor设置了一个docker监控堆栈。使用此查询获取正在运行的容器时:
count_scalar(container_last_seen{name=~container1|container2})
Run Code Online (Sandbox Code Playgroud)
它会捡起所有的容器,一旦我启动了一个新容器,它就会立即被捡起。问题是,停止或卸下容器时,它不会拾取它,但仍将其显示为正在运行的容器。
容器停止后,将从cAdvisor / metrics端点将其删除。
查询有问题吗?
(这就是我用于堆栈的内容:https : //github.com/vegasbrianc/prometheus)
我正在尝试仅获取git日志的前40个字符,我当前无法正常工作的命令是:
git log <branch_name> | cut -c 1-40 >> some_file
Run Code Online (Sandbox Code Playgroud)
这将输出整个日志。
Kinda是Linux新手,有什么建议吗?
编辑:
git log <branch_name> | head -n1 >> some_file
Run Code Online (Sandbox Code Playgroud)
每个@Someprogrammerdude建议的工作命令
如果赋值给出nullPointerException,是否有一种有效的方法将字符串设置为某个默认值?
说即时初始化这样的字符串:
String myString= jsonElement.getAsJsonObject().get("myString").getAsString();
Run Code Online (Sandbox Code Playgroud)
如果它给nullPointer我需要给它一个默认值,我知道我可以用“ if”检查,但是那是唯一的方法吗?当我启动大约20个字符串时,这将意味着很多检查。
有什么办法可以做到:
String myString = jsonElement.getAsJsonObject().get("myString")
.getAsString() || "defaultValue";
Run Code Online (Sandbox Code Playgroud) 我正在通过 ansible 为多个应用程序添加 JAVA_OPTS 作为环境变量,如果 JAVA_OPTS 更改,我想重新启动应用程序。
我现在拥有的是每个应用程序添加环境变量的任务和重启应用程序的通知,例如:
- name: Add variable1
become: yes
lineinfile: dest=/etc/environment regexp='^VARIABLE1=' line='VARIABLE1={{VARIABLE1}}'
notify: restart application1
- name: restart application1
become: yes
command: restart application1
Run Code Online (Sandbox Code Playgroud)
因为我有很多应用程序这样做意味着有很多任务。我想要的是有一个任务来循环使用with_items
. 我无法弄清楚如何让一个处理程序任务重新启动。是否可以将需要重新启动的应用程序传递给处理程序?就像是:
- name: add variables
become: yes
lineinfile: dest=/etc/environment regexp='^{{item.app_name}}='
line='{{item.app_name}}={{ item.variable }}'
notify: restart apps #pass app_name to handler somehow
with_items:
- { variable: "FIRST", app_name: "APP1"}
- { variable: "SECOND", app_name: "APP2"}
- { variable: "THIRD", app_name: "APP3"}
- name: restart apps
become: yes
command: …
Run Code Online (Sandbox Code Playgroud) 我试图在bash脚本中声明并附加到一个数组,在搜索之后导致了这个代码.
list=()
list+="string"
Run Code Online (Sandbox Code Playgroud)
但当我回应这一点时,它什么也没有结果.我也试过像这样附加到数组
list[$[${#list[@]}+1]]="string"
Run Code Online (Sandbox Code Playgroud)
我不明白为什么这不起作用,有人有什么建议吗?
编辑: 问题是列表附加到while循环内.
list=()
git ls-remote origin 'refs/heads/*' | while read sha ref; do
list[${#list[@]}+1]="$ref"
done
declare -p list
Run Code Online (Sandbox Code Playgroud)
请参阅stackoverflow.com/q/16854280/1126841