相关疑难解决方法(0)

如何在.tmux.conf中编写if语句为不同的tmux版本设置不同的选项?

我有一个.tmux.conf,我在安装了不同tmux版本的不同机器上使用.

我想根据tmux版本设置不同的鼠标选项.在一台机器上我有2.0另一个版本2.1.

我没有把他的意思弄清楚

if "[[(( $(tmux -V | cut -c 6-) < 2.1 ))]]" \
  "set -g mode-mouse on;" \
  "set -g mouse-resize-pane on;" \
  "set -g select-pane on;" \
  "set -g select-window on" "set -g mouse on"
Run Code Online (Sandbox Code Playgroud)

当我获取文件时

$ tmux source-file .tmux.conf

我收到这条消息

.tmux.conf:12: unknown command: set -g mouse-resize-pane on

我运行它的机器有版本2.1所以它不应该设置四个选项.

我想在运行tmux 2.0或更少时设置四个选项,或者在运行tmux 2.1时设置一个选项.

这个bash语句有效

$ tmux -V
tmux 2.1
$ if [[(( $(tmux -V | cut -c 6-) < 2.1 ))]];then echo …
Run Code Online (Sandbox Code Playgroud)

bash shell scripting if-statement tmux

33
推荐指数
6
解决办法
2万
查看次数

Shell脚本未运行,找不到命令

我是非常非常新的UNIX编程(通过终端在MacOSX Mountain Lion上运行).我一直在学习生物信息学和分子方法课程的基础知识(我们有两个类),我们最终将使用perl和python进行数据管理.无论如何,我们的任务是编写一个shell脚本来从一组文件中获取数据,并将其写入一个可由特定程序(Migrate-N)读取的格式的新文件.

当我在命令行中键入它们时,我已经获得了许多功能来完全独立完成我的需要,但是当我将它们全部放在一个脚本中并尝试运行它时,我得到一个错误.以下是详细信息(我为长度道歉):

#! /bin/bash

grep -f Samples.NFCup.txt locus1.fasta > locus1.NFCup.txt
grep -f Samples.NFCup.txt locus2.fasta > locus2.NFCup.txt
grep -f Samples.NFCup.txt locus3.fasta > locus3.NFCup.txt
grep -f Samples.NFCup.txt locus4.fasta > locus4.NFCup.txt
grep -f Samples.NFCup.txt locus5.fasta > locus5.NFCup.txt
grep -f Samples.Salmon.txt locus1.fasta > locus1.Salmon.txt
grep -f Samples.Salmon.txt locus2.fasta > locus2.Salmon.txt
grep -f Samples.Salmon.txt locus3.fasta > locus3.Salmon.txt
grep -f Samples.Salmon.txt locus4.fasta > locus4.Salmon.txt
grep -f Samples.Salmon.txt locus5.fasta > locus5.Salmon.txt
grep -f Samples.Cascades.txt locus1.fasta > locus1.Cascades.txt
grep -f Samples.Cascades.txt locus2.fasta > locus2.Cascades.txt
grep -f …
Run Code Online (Sandbox Code Playgroud)

unix bash shell scripting

23
推荐指数
5
解决办法
10万
查看次数

Git,如何生成公钥

如何使用命令行[Git Bash]生成公钥(在GitHub/GitLab中使用).

以下命令会生成错误 sh.exe": syntax error near unexpected token '('

我正在使用Windows XP.

$ ssh-keygen -t rsa -C "xxxx@gmail.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/xxxx/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/xxxx/.ssh/id_rsa.
Your public key has been saved in /c/Users/xxxx/.ssh/id_rsa.pub.
The key fingerprint is:
01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db xxxx@gmail.com
Run Code Online (Sandbox Code Playgroud)

git ssh github ssh-keys

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

korn和bash shell之间的区别

我是Unix新手.目前,我被要求了解KornShell(ksh)Bash shell.有人可以给我一个关于这两个的简短概述吗?

术语" shell "是" 终端 "的同义词吗?

我知道我可以在线阅读有关这两个文件.但我相信经验丰富的Unix程序员的概述将帮助我更好地理解.

unix bash shell scripting ksh

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

OCI 运行时执行失败:执行失败:container_linux.go:344:启动容器进程

当我运行以下命令时

$ docker container exec -it nginx1 ping nginx2 
Run Code Online (Sandbox Code Playgroud)

这是我面临的错误:

OCI 运行时 exec 失败:exec 失败:container_linux.go:344:启动容器进程导致“exec:\”ping\”:在 $PATH 中找不到可执行文件”:未知

如何解决这个问题?

node.js docker dockerfile docker-compose docker-machine

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

shell脚本中的\ r字符

尝试执行shell脚本时出现以下错误,

$'\r': command not found: line 2:
Run Code Online (Sandbox Code Playgroud)

请为此建议一个解决方案.

以下是脚本中使用的初始行,

#!/bin/sh

if [[ $# -lt 1 ]]; then
   echo "ERROR Environment argument missing <dev,test,qa,prod>"
   export RC=50
   exit $RC
fi
Run Code Online (Sandbox Code Playgroud)

shell

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

如何在shell脚本中使用curl?

我正在尝试运行此shell脚本,以便在Ubuntu框中安装RVM

#!/bin/bash
RVMHTTP="https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer"
CURLARGS="-f -s -S -k"

bash < <(curl $CURLARGS $RVMHTTP)
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误

语法错误:重定向意外

也测试了不使用变量,但结果相同,你能说出我错过了什么吗?

linux bash ubuntu curl sh

14
推荐指数
2
解决办法
11万
查看次数

bash的字符串长度

我写这个是为了找到字符串的长度,但它没有显示字符串的长度.

我写的东西有问题吗?我只是bash的初学者.

Str=abcdefghj

echo "Str is:" `expr length $Str` "characters long"
Run Code Online (Sandbox Code Playgroud)

bash shell

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

在Git for Windows的安装路径中,./git-bash.exe和bin/bash.exe和bin/sh.exe有什么区别?

在 git for windows 的安装路径中,我发现了这 3 个 exe:

./git-bash.exe,

./bin/bash.exe,

./bin/sh.exe,

启动它们中的任何一个都会给我一个可用的终端。

第一个是安装创建的开始菜单中的默认快捷方式,第二个在VSCode doc中用于在VSCode中设置集成终端,第三个在ConEmu doc中提到。

它们之间有什么区别,我应该使用哪个?

git git-bash

10
推荐指数
1
解决办法
1310
查看次数

现有 Bash 脚本的 Jenkins“找不到文件”错误

我的目标是让 Jenkins 2 在 express js 应用程序和 postgres db 之间执行 alpha 集成测试。我将在本地启动容器化资源,并使用使用docker-compose. 相关的 bash 脚本是scripts/docker/dockerRunTest.sh.

但是,当我尝试通过 Jenkins 做同样的事情时,Jenkins 声称没有找到启动脚本。

詹金斯档案

stage('Alpha Integration Tests') {
  agent {
    docker {
      image 'tmaier/docker-compose'
      args '-u root -v /var/run/docker.sock:/var/run/docker.sock --network host'
    }
  }
  steps {
    sh 'ls -lah ./scripts/docker/'
    sh './scripts/docker/dockerRunTest.sh'
  }
}
Run Code Online (Sandbox Code Playgroud)

输出

+ ls -lah ./scripts/docker/
total 36
drwxr-xr-x    2 root     root        4.0K Jan 26 21:31 .
drwxr-xr-x    6 root     root        4.0K Jan 26 20:54 ..
-rwxr-xr-x    1 …
Run Code Online (Sandbox Code Playgroud)

bash jenkins docker docker-compose

9
推荐指数
1
解决办法
6639
查看次数