标签: shell

如何永久更改 shell 提示?

我曾经PS=$将 shell 提示符更改为$,但是当我重新启动 shell 时,我必须再次执行此操作。有没有办法永久更改 shell 提示?

linux shell prompt

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

我可以在 ipython shell 中重做/撤消吗?

bpython 中的一项功能称为倒带。

是否有一些类似的键绑定?

shell python ipython

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

如何在 OS X 中启动时运行 Automator 操作、shell 脚本或 AppleScript?

我知道您可以在 Mac 上启动时运行应用程序,但是您可以在启动时运行 Automator 操作、服务、shell 脚本或 AppleScript 吗?

我也知道您可以将所有这些保存为一个应用程序,但我不希望它在 Dock 中打开。

boot shell applescript automator macos

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

如何在提示中获取 ZSH 上一个命令的历史记录号?

我想将上一个命令的历史编号以及退出代码添加到我的提示中。

目前,

%h[%?]
Run Code Online (Sandbox Code Playgroud)

给我当前的历史编号,以及最后的退出代码。我真正想要的是扩展%h-1,但我不确定这是否可能?

linux zsh shell

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

Grep 无法输出到管道?

我在对 make 输出进行 grep 过滤时遇到问题。特别是,

make target 2>&1 | grep -E --color=never "^make.*"
Run Code Online (Sandbox Code Playgroud)

按预期工作,但以下内容不会向控制台打印输出:

make target 2>&1 | grep -E --color=never "^make.*" | cat
Run Code Online (Sandbox Code Playgroud)

我错过了一些明显的东西吗?为什么第一个命令输出而不是第二个?是否与某种 IO 缓冲有关?还是我只是愚蠢?

[编辑]: cat只是我要使用的实际命令的最小测试用例占位符。

[编辑]:这似乎不是 grep 的问题,因为用ack替换它会导致相同的行为。

[编辑]: cat 是占位符的脚本:

#!/bin/bash
cat - \
 | grep -E --color=never "^.*warning:.*|^.*error:.*|^make.*[Ee]rror.*|^make.*" \
 | hilite.sh -r "^.*warning:.*" -f yellow -B \
 | hilite.sh -r "^.*error:.*" -f red -B \
 | hilite.sh -r "^make.*[Ee]rror.*" -f red -B \
 | hilite.sh -r "^make.*" -f magenta
Run Code Online (Sandbox Code Playgroud)

[编辑]: …

linux unix bash shell command-line

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

为什么“killall killall”不起作用?

可能的重复:
意外的killall行为

如果killall killall从终端运行命令(我使用 KDE 4 的 Konsole),它说它找不到任何进程。 killall运行,寻找一个被调用的进程killall,应该找到它自己并杀死它,但它没有这样做。为什么?

linux terminal bash shell ubuntu

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

如何将密码传递给 sudo 命令?

在 OSX 上我做

sudo route delete default
sudo route add default 192.168.178.1
Run Code Online (Sandbox Code Playgroud)

更改我的默认网关。

在使用这些运行 sh 文件时,我每次都被要求输入密码。我运行的

sh changegw.sh.

我如何事先传递我的密码?

shell

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

错误地运行 chmod 644 /usr/* 有什么办法可以恢复我的安装?

我在chmod 644 /usr/*Mac OSX 10.6 的安装上运行。

现在,从chmod到所有其他命令,一切都不起作用。显然这些命令在 中/usr/bin,我没有执行权限chmod来给自己执行权限。

shell macos

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

删除Linux中的/ bin条目

我已经安装了 CentOS。我想删除 bzip2,所以我在 shell 中输入这个命令:

yum remove bzip2 bzip2-libs
Run Code Online (Sandbox Code Playgroud)

然后删除了近 500 个包,我无法输入任何命令。例如:

ls 
-bash: /bin/ls no such file or directory
Run Code Online (Sandbox Code Playgroud)

如何重新安装丢失的软件包?

linux shell yum

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

Bash 局部变量

如何声明函数局部变量?定期声明的变量被导出到全局范围。例子:

$ cat t.sh
function locals_test() 
{
  x="bar"
}

$ echo $x

$ locals_test 
$ echo $x
bar
Run Code Online (Sandbox Code Playgroud)

bash shell

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

标签 统计

shell ×10

linux ×5

bash ×3

macos ×2

applescript ×1

automator ×1

boot ×1

command-line ×1

ipython ×1

prompt ×1

python ×1

terminal ×1

ubuntu ×1

unix ×1

yum ×1

zsh ×1