草庐IT

Terminal

全部标签

linux - 如何检查文件是否存在于 bash 脚本的特定目录中?

这是我一直在尝试的,但没有成功。如果我想检查~/.example目录中是否存在文件FILE=$1if[-e$FILE~/.example];thenecho"Fileexists"elseecho"Filedoesnotexist"fi 最佳答案 您可以使用$FILE与目录连接,形成完整路径,如下所示。FILE="$1"if[-e~/.myexample/"$FILE"];thenecho"Fileexists"elseecho"Filedoesnotexist"fi 关于linux-如

linux - 如何在终端 lisp 方案解释​​器中导航文本?

当我在我的终端[Ubuntu10.04]中运行Scheme解释器时,我似乎无法浏览文本,如果我犯了错误,我必须删除并重新输入所有内容。我确信一定有一种方法可以在不删除所有内容的情况下浏览文本(尽管这是一种很好的做法)左、右、上、下给我^[[$LETTER其中$LETTER分别是D、C、A、B 最佳答案 sudoapt-getinstallrlwrap然后rlwrapwhatever给whateverreadline编辑能力。将whatever替换为您需要的任何可执行文件(不知道您使用的是哪种Scheme方言)你也可以为它创建一个sh

linux - 如何在终端 lisp 方案解释​​器中导航文本?

当我在我的终端[Ubuntu10.04]中运行Scheme解释器时,我似乎无法浏览文本,如果我犯了错误,我必须删除并重新输入所有内容。我确信一定有一种方法可以在不删除所有内容的情况下浏览文本(尽管这是一种很好的做法)左、右、上、下给我^[[$LETTER其中$LETTER分别是D、C、A、B 最佳答案 sudoapt-getinstallrlwrap然后rlwrapwhatever给whateverreadline编辑能力。将whatever替换为您需要的任何可执行文件(不知道您使用的是哪种Scheme方言)你也可以为它创建一个sh

linux - 如何在 Linux 终端上隐藏主机名?

有没有一种方法可以在不更新/etc/hosts或相关文件的情况下隐藏终端上的主机名。通常我们会在屏幕上看到服务器的详细信息,如下所示[root@ServernamE/]#所以,我不想在终端上显示hostname=ServernamE。这样做的原因是,我将录制一个网络session。我知道我可以变形所需的部分,但这很耗时并且依赖于其他软件。谢谢 最佳答案 如果您想要一个临时解决方案(因为您正在谈论截屏视频),您可以设置PS1变量来更改提示。例如,如果您希望提示为:$然后在终端上如下设置您的PS1变量:exportPS1='$'同样,您

linux - 如何在 Linux 终端上隐藏主机名?

有没有一种方法可以在不更新/etc/hosts或相关文件的情况下隐藏终端上的主机名。通常我们会在屏幕上看到服务器的详细信息,如下所示[root@ServernamE/]#所以,我不想在终端上显示hostname=ServernamE。这样做的原因是,我将录制一个网络session。我知道我可以变形所需的部分,但这很耗时并且依赖于其他软件。谢谢 最佳答案 如果您想要一个临时解决方案(因为您正在谈论截屏视频),您可以设置PS1变量来更改提示。例如,如果您希望提示为:$然后在终端上如下设置您的PS1变量:exportPS1='$'同样,您

C++ : initialize input programmatically

如果我们有这段代码:inta;cout>a;在终端中,输入请求看起来像这样pleaseenteravalue:_我如何以编程方式模拟用户在其中的输入。 最佳答案 下面是一个示例,说明如何使用rdbuf()操作cin的输入缓冲区函数,从std::istringstream检索假输入#include#include#includeusingnamespacestd;intmain(){istringstreamiss("1a1b4a4b9");cin.rdbuf(iss.rdbuf());//Thislineactuallysetsci

C++ : initialize input programmatically

如果我们有这段代码:inta;cout>a;在终端中,输入请求看起来像这样pleaseenteravalue:_我如何以编程方式模拟用户在其中的输入。 最佳答案 下面是一个示例,说明如何使用rdbuf()操作cin的输入缓冲区函数,从std::istringstream检索假输入#include#include#includeusingnamespacestd;intmain(){istringstreamiss("1a1b4a4b9");cin.rdbuf(iss.rdbuf());//Thislineactuallysetsci

c++ - 尝试从 c++ linux 执行命令行代码

我尝试了以下代码,从C++代码与命令行进行通信。#include#includeintmain(){system("gnome-terminal");system("cd");}gnome-terminal命令运行良好。关闭终端后,当我期望cd执行时,却没有发生。你能帮我指出原因吗?谢谢。我期待该功能使cmd进入主目录,但事实并非如此。我在Linux上工作我什至通过删除gnome进行了尝试。简单的cd不工作。我在做错事>?如果我尝试ls,它似乎工作正常!我的主要目标是打开一个新终端,并通过打开新终端的当前程序在该新终端上执行命令。您能告诉我如何实现吗?? 最

c++ - 尝试从 c++ linux 执行命令行代码

我尝试了以下代码,从C++代码与命令行进行通信。#include#includeintmain(){system("gnome-terminal");system("cd");}gnome-terminal命令运行良好。关闭终端后,当我期望cd执行时,却没有发生。你能帮我指出原因吗?谢谢。我期待该功能使cmd进入主目录,但事实并非如此。我在Linux上工作我什至通过删除gnome进行了尝试。简单的cd不工作。我在做错事>?如果我尝试ls,它似乎工作正常!我的主要目标是打开一个新终端,并通过打开新终端的当前程序在该新终端上执行命令。您能告诉我如何实现吗?? 最

linux - OSX sed : how to use the escape character in the second field of a `s` operation?

在OSX上:bash-3.2$echo"abc"|sed's/b/\x1b[31mz\x1b[m/'ax1b[31mzx1b[mc而在Linux上:$echo"abc"|sed's/b/\x1b[31mz\x1b[m/'azc并且z正确显示为红色。这是bash3.2的限制吗?我的Linux测试在这里运行bash4.1.2。奇怪的是在我工作的linux环境中,bash的版本低于3.2,而且它也在那里工作。另外,这可能是相关的,但可能不是:bash-3.2$echo"abc"|sed's/b/^[[31mz^[[m/'31mz$'m/'azc同样,特定于BSDsed。这很令人费解:似乎有什