相关疑难解决方法(0)

为什么在 Bash 脚本中将命令组合在一行上?

我是 Linux 和 Bash 脚本的新手。在工作中,我看到 Bash 脚本的结构与此类似:

mkdir build && cd build && touch blank.txt
Run Code Online (Sandbox Code Playgroud)

或者:

mkdir build; cd build; touch blank.txt
Run Code Online (Sandbox Code Playgroud)

甚至是异国情调:

COMMAND="mkdir build && cd build && touch blank.txt"
eval ${COMMAND}
Run Code Online (Sandbox Code Playgroud)

最后一个示例给出了一个可能的用例,其中一行可能有用,但通常以下内容更易于阅读并且(至少对我而言)允许您直观地调试脚本:

mkdir build
cd build
touch blank.txt
Run Code Online (Sandbox Code Playgroud)

在一条线上塞满所有东西是否有技术优势?

command-line bash scripts

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

如何打开一个额外的控制台并使用一个命令在其中运行程序?

所以我知道如果我输入 gnome-terminal 或 xterm,会弹出一个新窗口。然后我检查了这两个的手册页,没有找到相关的内容。

然后我注意到在 Mac 下你可以在打开程序的情况下进行。但在 Linux 下似乎不是那么简单。

有没有人有经验?

gnome-terminal xterm

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

脚本打开终端,运行命令并保持终端打开

我有一个简单的目标,即创建脚本来打开终端,运行命令,然后保持终端打开。

这是我尝试过的:

#!/bin/bash

xterm -e -hold ls
Run Code Online (Sandbox Code Playgroud)

它生成以下错误:

xterm: Can't execvp -hold: No such file or directory
Run Code Online (Sandbox Code Playgroud)

然后我也试过了

 #!/bin/bash

   konsole -e --noclose ls
Run Code Online (Sandbox Code Playgroud)

当我双击它时,这个简单的没有做任何事情。(我确保脚本文件是可执行的)

我不想使用,gnome-terminal因为它需要先创建配置文件gnome-terminal

在python中会更容易吗?

command-line bash scripts

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

打开新终端和源脚本

我想编写一个脚本来激活虚拟环境并在新终端中运行 Django 项目的服务器。我的startProject.sh是:

#!/bin/bash
source virtualenv/bin/activate
python manage.py runserver
Run Code Online (Sandbox Code Playgroud)

而且,我可以通过以下方式在当前终端上运行此脚本:

source startProject.sh
Run Code Online (Sandbox Code Playgroud)

我想在脚本打开的新终端中执行此操作。

#!/bin/bash
gnome-terminal --working-directory=/home/myname/project -x 'source startProject.sh'
Run Code Online (Sandbox Code Playgroud)

我也尝试过这个。

#!/bin/bash
gnome-terminal --working-directory=/home/myname/project -x '#!/bin/bash\n source startProject.sh'
Run Code Online (Sandbox Code Playgroud)

两者都不起作用。为什么?我读了其他问题,但我仍然不明白。我是初学者,所以请假设没有经验。

command-line bash scripts gnome-terminal virtualenv

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

如何在启动/重新启动计算机时打开一个(或多个)带有几个选项卡的 gnome 终端窗口,每个选项卡都有不同的配置文件?

我有几个终端配置文件。我可以在启动时打开所有配置文件,它们在启动应用程序中使用此 cmd 在不同的窗口中打开:

gnome-terminal --window-with-profile=ablack && gnome-terminal --window-with-profile=agreeen && gnome-terminal --window-with-profile=aubergine && gnome-terminal --window-with-profile=beige && gnome-terminal --window-with-profile=cyan && gnome-terminal --window-with-profile=grey && gnome-terminal --window-with-profile=orange && gnome-terminal --window-with-profile=white && gnome-terminal --window-with-profile=yellow && gnome-terminal --window-with-profile=ablack    
Run Code Online (Sandbox Code Playgroud)

我试图用这个 cmd 打开一个带有多个选项卡的窗口,但没有成功:

gnome-terminal --window-with-profile=ablack && gnome-terminal --tab-with-profile=agreeen && gnome-terminal --tab-with-profile=aubergine && gnome-terminal --tab-with-profile=beige && gnome-terminal --tab-with-profile=cyan && gnome-terminal --tab-with-profile=grey && gnome-terminal --tab-with-profile=orange && gnome-terminal --tab-with-profile=white && gnome-terminal --tab-with-profile=yellow && gnome-terminal --tab-with-profile=ablack   
Run Code Online (Sandbox Code Playgroud)

如何使它工作?

configuration command-line gnome-terminal tabs 16.04

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