相关疑难解决方法(0)

如何使用git bash在Github上创建一个新的repo?

如何使用git bash从我的机器创建新的存储库?

我按照以下步骤操作:

mkdir ~/Hello-World

cd ~/Hello-World

git init

touch README

git add README

git commit -m 'first commit'

git remote add origin https://github.com/username/Hello-World.git

git push origin master
Run Code Online (Sandbox Code Playgroud)

但是我得到了"致命的错误:你在服务器上运行了update-server-info吗?"

github github-api git-bash

20
推荐指数
3
解决办法
5万
查看次数

指定在mongodb .js脚本中使用的数据库

我只想针对特定的mongodb数据库运行.js脚本,但似乎无法获得正确的语法.

echo "print(db.address.find().limit(1));" > test.js
mongo test.js
Run Code Online (Sandbox Code Playgroud)

如何选择将要执行的数据库,我尝试了各种组合,但use foo没有成功.

> show dbs                      
admin   (empty)
local   (empty)
foo 0.203125GB
bar 0.203125GB
Run Code Online (Sandbox Code Playgroud)

我想foo在这种情况下使用.

mongodb mongo-shell

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

如何逃避历史扩展感叹号!在一个双引号"命令替换,如"$(echo'!b')"?

编辑:命令替换对于令人惊讶的行为不是必需的,尽管它是最常见的用例.同样的问题适用于echo "'!b'"

b=a

# Enable history substitution.
# This option is on by default on interactive shells.
set -H

echo '!b'
# Output: '!b'
# OK. Escaped by single quotes.

echo $(echo '!b')
# Output: '!b'
# OK. Escaped by single quotes.

echo "$(echo '$b')"
# Output: '$b'
# OK. Escaped by single quotes.

echo "$(echo '!b')"
# Output: history expands
# BAD!! WHY??
Run Code Online (Sandbox Code Playgroud)
  • 在最后一个例子中,逃脱的最佳方法是!什么?
  • 即使我使用单引号,为什么它没有逃脱echo "$(echo '$b')"呢?!和之间有什么区别$
  • 为什么echo $(echo …

syntax bash quotes

16
推荐指数
1
解决办法
5171
查看次数

如何在Linux bash shell中逃避bang(!)字符?

我不能为我的生活弄清楚如何逃避!Bash中的角色.例如,我想打印这个:

Text text text!

我试过这个:

echo "Text text text\!"
Run Code Online (Sandbox Code Playgroud)

但是这会打印出来:

Text text text\!

(带有额外的反斜杠).

我怎样才能做到这一点?

linux bash shell

15
推荐指数
2
解决办法
8604
查看次数

回声"#!" 失败 - "未找到事件"

以下失败,我不明白为什么:

$ echo "#!"
Run Code Online (Sandbox Code Playgroud)

以下也失败并出现相同的错误消息:

$ echo "\#!"
Run Code Online (Sandbox Code Playgroud)

错误信息:

-bash: !": event not found
Run Code Online (Sandbox Code Playgroud)

为什么会失败?该怎么echo办呢?

bash echo ubuntu-12.04

13
推荐指数
3
解决办法
2157
查看次数

在linux的命令行上的分号

我通过提供输入作为命令行在linux中运行我的应用程序.我的输入字段包含一个在内部包含";"(分号)的参数(例如:123; 434; 5464).这将使用UTF8String编码和发送进行解析.但是,当我这样使用时,我最初会得到,

 bash: 434: command not found
 bash: 5464: command not found
Run Code Online (Sandbox Code Playgroud)

当我捕获流量时,输出仅包含123而不是123; 434; 5464但是如果我不使用分号(例如:123:434:5464),则不会出现任何问题输出正确显示为123:434:5464

指出如何使用分号来输出命令行输入.使用分号时是否有任何特定的语法.我跑得像下面

./runASR.sh -ip 10.78.242.4 -port 3868 -sce 10.78.241.206 -id 85;167838865;1385433280
Run Code Online (Sandbox Code Playgroud)

其中-id字段包含有问题的值.

linux bash shell

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

当我运行`sh -c"命令"`,一个新的shell或者没有这些时,是否有一个子shell?

在bash中,当我运行以下命令时:

sh -c "command"
Run Code Online (Sandbox Code Playgroud)

是否创建了一个子shell然后command执行?

我的猜测是命令将在当前的shell中运行,但我不确定.这个猜测来自我已经使用以下命令测试的事实:

echo $BASHPID, $BASH_SUBSHELL
Run Code Online (Sandbox Code Playgroud)

sh -c "echo $BASHPID, $BASH_SUBSHELL"
Run Code Online (Sandbox Code Playgroud)

结果是一样的.但是,有人告诉我这可能有点误导,因为在执行命令之前可能会替换变量.这是真的吗?

bash command-line

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

双引号,单引号和无引号的假设

在bash中:

使用双引号

echo "*" #Globbing is never done
echo "$variable" # Variable expansion is always done
echo "$(command)" # command expansion is always done
Run Code Online (Sandbox Code Playgroud)

使用单引号

echo '*' #Globbing is never done 
echo '$variable' # Variable expansion is never done
echo '$(command)' # command expansion is never done
Run Code Online (Sandbox Code Playgroud)

不使用引号

echo * #Globbing always done.
echo $variable; # Variable expansion is always done
echo $(command) # command expansion is always done
Run Code Online (Sandbox Code Playgroud)

这适用于所有命令吗?

bash

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

如何修改我的用户PROFILE文件以将我创建的脚本文件夹附加到PATH变量的末尾?

如何修改我的用户PROFILE文件以将我创建的脚本文件夹附加到PATH变量的末尾?
我不完全确定这意味着什么.谁能解释一下.
谢谢 :)

unix linux solaris

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

grep双引号vs单引号

我惊讶地发现单引号版本与正则表达式一样工作.我现在看到的唯一真正的区别是双引号扩展了正则表达式模式中的变量.还有什么我想念的吗?

regex shell grep

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