Questions tagged «command-line»

有关使用命令行界面(CLI)的问题。

5
从任何地方运行程序而无需更改目录
我希望创建一个别名,该别名运行程序x,而不更改当前所在的目录。我现在拥有的是: alias x = "cd /home/path_to_x && ./x" 这有效,但是更改了我的目录。我想做的是这样的: alias x="./home/path_to_x/x 但是后来我没有得到这样的文件或目录。有人知道解决方法吗?

2
如何用文件中的单个单词替换多行(替换)?
我的filename文件内容如下(例如): My block of line starts from here START First line second line third line END and end to here for example. 我想,以取代之间的行块START,并END只用一个词,例如用SINGLEWORD。如下所示: My block of line starts from here SINGLEWORD and end to here for example. 我可以使用以下命令找到我的代码行: grep -Pzo "START(.|\n)*END" filename 运行上述命令的结果将是这样的: START First line second line third line …


4
确定我正在使用的服务器
从终端使用ssh时如何识别您在哪个服务器上? 我必须每天将ssh放入30台服务器,并不断在它们之间切换。 目前,我正在编辑选项卡名称,并编写IP iddress从一个跳转到另一个。 是否有自动的方法(将服务器IP地址分配为选项卡名称)?还有其他选择,而不必在每个服务器上编辑文件吗?


2
运行.sh以执行多个命令
我很好奇如何通过shell脚本运行多个命令。 例如,为了进行尝试,我希望能够将.desktop连接到将运行所有更新代码的.sh,因此不必键入它。我知道如何通过.sh执行单个命令,而不是多个。 可以吗

1
安装virtualbox来宾添加终端
我想使用终端安装Virtualbox来宾添加。因为那是最容易复制和记录的。在服务器上,我有Ubuntu 12.04.2。LTS我有Virtualbox 4.3.16 我最近使用以下方法成功完成了此任务: bash sudo apt-get update sudo apt-get install build-essential linux-headers-$(uname -r) sudo apt-get install virtualbox-guest-x11 在“ 如何在VirtualBox VM中安装来宾添加项”中找到? 现在我重复一遍。执行中: modinfo vboxguest 返回: bernard@bernard-vbox2:~$ modinfo vboxguest filename: /lib/modules/3.11.0-22-generic/updates/dkms/vboxguest.ko version: 4.2.16_Ubuntu license: GPL description: Oracle VM VirtualBox Guest Additions for Linux Module author: Oracle Corporation srcversion: A7E3594189A565BBB270EDB alias: pci:v000080EEd0000CAFEsv00000000sd00000000bc*sc*i* …

4
从命令管道grep将输出重定向到文件
我正在运行此: cat /dev/urandom|hexdump| grep -i "ffff f" > random 而且我在文件中什么也没得到random,命令中断后,它的长度保持为零。 如何使其输出写入文件? 我需要将结果写入文件,该文件应包含如下输出数据: 021bc40 7724 d4f5 59ec bcbb ffff fd26 ab3c 9b7c 03a9100 b3a5 8601 fa33 ffff f23c 4326 2e7f 0c8a 0449810 e459 d5af 4e11 ffff fc55 8660 9efb 3c9b

2
在Shell脚本中使用反引号或美元
我正在忙着编写shell脚本(使用Bash),需要从其他命令的返回结果中填充一些变量。 所以我正在使用这样的语法: VAR=`command 2>/dev/null` 但是,当在脚本外壳上查找信息时,我经常发现也可以通过使用以下语法来实现上述目的: VAR=$(command 2>/dev/null) 两者都对我有用(我在这两种情况下均收到了预期的结果),因此我想知道我是否仍可以互换使用两种形式,或者我是否必须坚持一种形式以确保与将来的发展保持一致?贝壳 ?

5
将文本追加到不包含点的文件名中
给定以下文件: english_api english_overview style.css 我想得到: english_api.html english_overview.html style.css 换句话说,如何.使用终端将文本附加到目录中不包含点()的所有文件。 显然,该文件夹中有很多文件。我只写了3个例子。 如果要在该文件夹中替换.css为.html,我将使用: rename .css .html *.css 但是我真的想不出一种方法来匹配不包含某些内容的文件。另外如何使用rename命令附加(与替换)?

2
使用Moreutils ts进行配管
我的串行端口有输入流,新行大约每秒出现一次 wren@Raven:~$ cat /dev/ttyUSB0 A_Sensor1,B_22.00,C_50.00 A_Sensor1,B_22.00,C_50.00 A_Sensor1,B_22.00,C_50.00 A_Sensor1,B_22.00,C_50.00 A_Sensor1,B_22.00,C_50.00 我想去除空白行并为其余部分加时间戳。 sed将删除空白行并添加时间戳,但是我无法进行时间戳更新,它只会报告调用时间: wren@Raven:~$ cat /dev/ttyUSB0 | sed -e '/^$/d' -e "s/$/`date +\,%F\,%T`/" A_Sensor1,B_22.00,C_50.00,2014-05-14,09:44:42 A_Sensor1,B_22.00,C_50.00,2014-05-14,09:44:42 A_Sensor1,B_22.00,C_50.00,2014-05-14,09:44:42 A_Sensor1,B_22.00,C_50.00,2014-05-14,09:44:42 A_Sensor1,B_22.00,C_50.00,2014-05-14,09:44:42 A_Sensor1,B_22.00,C_50.00,2014-05-14,09:44:42 A_Sensor1,B_22.00,C_50.00,2014-05-14,09:44:42 ^C 我找到了ts,它是Moreutils的一部分,可以通过管道获取更新时间戳。 wren@Raven:~$ cat /dev/ttyUSB0 | ts May 14 09:49:26 A_Sensor1,B_22.00,C_50.00 May 14 09:49:26 May 14 09:49:27 A_Sensor1,B_22.00,C_50.00 ^C 但是,我无法将ts与sed正确组合。 这看起来像它应该做我想要的,根本不产生任何输出 wren@Raven:~$ …

3
更改PS1的值后,终端提示混乱
我在终端中粗心输入了应该在shell脚本中输入的命令: export PS1=$PATH:~/drush23/drush/ 现在在我的终端上,而不是这个: ubuntu@ip-10-16-134-18:/home/ubuntu$ 我看到这个: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/ubuntu/drush23/drush/ 当我更改目录时,此行始终保持不变...我不知道该怎么办 我有byobu ...

2
如何使用redirectioin运算符确定将哪个参数提供给命令?
这有效: $ echo“通知发送HELLO” | 现在 这不是: $现在<echo“ notify-send HELLO” 它说“找不到文件或目录”。 我知道-f此命令有一个选项,通过它我可以提供在给定时刻要执行的文件。 因此,这让我开始思考...总的来说,我如何知道重定向运算符为哪个参数提供值?



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.