标签: bashrc

Bash 别名添加后台进程

在我的 .bashrc 中,我想放这样的东西。

alias lst='ls &'
Run Code Online (Sandbox Code Playgroud)

这样我才能做这样的事情。

$ lst /tmp
Run Code Online (Sandbox Code Playgroud)

这将被翻译成

$ ls /tmp &
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到以上几点?

bashrc

7
推荐指数
1
解决办法
1771
查看次数

拥有 Vim Psql 的编辑器

我有一个全新的 Ubuntu 安装。我没有活动的个人点文件。

\e file.sql当我的 .bashrc 中有以下内容时,我在 Psql 中运行失败,因为 Nano 打开而不是 Vim

export VISUAL=/usr/bin/vim
export EDITOR=/usr/bin/vim
export PSQL_EDITOR=/usr/bin/vim     
Run Code Online (Sandbox Code Playgroud)

当我用 vim 代替 .bashrc 中的 PATH/vim 来执行上述三个命令时,我运行相同的命令。

例如,vim当我得到时cat $EDITOR

问题可能出在环境变量上。但是,我不确定在哪里。

如何让 Vim 成为 Psql 的编辑器?

vim database bashrc ubuntu psql

6
推荐指数
1
解决办法
2508
查看次数

在所有打开的终端中获取新的 .bashrc

我发现自己总是同时打开许多终端。当我更新我的.bashrc 时,我必须去每个终端并执行

. .bashrc
Run Code Online (Sandbox Code Playgroud)

使用新的.bashrc获取终端。

这是一种痛苦,也很耗时。我想知道是否有一种方法可以使用新的.bashrc文件获取所有打开的终端,而无需逐一访问或注销并重新开始?

terminal bash bashrc

6
推荐指数
1
解决办法
4711
查看次数

我可以判断我是否在 .bashrc 中的 scp 会话中吗?

在 my 中.bashrc,当我尝试执行scp. 我一直采用的解决方案是手动 ssh 到目标机器,禁用 my .bashrc,进行复制,然后重新启用我的.bashrc. 有没有办法解决这个问题?

unix bash scp bashrc

6
推荐指数
1
解决办法
2576
查看次数

如何定义别名以在 MobaXTerm *local* bash shell 中使用?

过去几周我一直在 Windows 中使用 MobaXterm,我喜欢它。

但是,我还没有弄清楚如何定义我自己的别名以在本地 bash shell 中使用。明显的谷歌搜索似乎没有在这个问题上产生任何结果。

我曾尝试将具有别名定义的文件.profile.bashrc文件放在与Mobaxterm 可执行文件相同的目录中,但没有骰子。相同的文件位于我的 Windows 'home' 目录中,但 Mobaxterm 看不到它们。

我还注意到终端中已经有很多预定义的别名,但是我无法确定这些别名的定义位置,因此我可以添加自己的...

.profile alias bashrc mobaxterm

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

哪些 bash rc 文件在非交互式/非登录 shell 上运行?

我的理解

  • 没有为非交互式/非登录 shell 调用 rc 文件;例如,那些由cron运行的
    (我不确定这一点,并且会依靠社区的专业知识)

  • 非交互式shell 需要设置BASH_ENV环境变量,这样才能将其设置为特定的 rc 文件(例如,BASH_ENV=$HOME/.bash_profile

希望

我不确定是否有过多的 rc 文件可用,所以很好奇是否有我不熟悉的文件。希望找到一个满足以下条件的rc文件:

  • 无论交互/登录模式如何调用,因此全局 shell 环境变量可以在一个地方设置
  • 表现更像 csh/tcsh

linux bash cron bashrc bash-scripting

6
推荐指数
1
解决办法
3503
查看次数

无需获取 .bashrc 的 SSH

.bashrc我在通过 SSH 远程登录到服务器时正在试验我的文件。我无意中留下了一个exit,导致所有后续登录立即断开连接。我实际上被锁在门外了。我能够在具有 root 权限的人的干预下恢复访问权限,但是如果没有其他人的帮助,这可能吗?

我尝试做诸如运行ssh <server> 'bash --norc --noprofile'和 之类的事情ssh <server> 'mv .bashrc bashrc-backup',甚至尝试用 强制覆盖它scp empty-file <server>:.bashrc。然而,所有这些选项似乎都依赖于.bashrc在运行命令之前首先找到损坏的源,因此它们都不起作用。

很可能这种情况是没有办法摆脱的。但这是设计使然吗?为什么很容易将自己锁定在系统之外,例如仅通过运行,是否有原因ssh <server> 'echo exit > .bashrc'?有没有办法减少这种错误?

linux ssh terminal bash bashrc

6
推荐指数
1
解决办法
5630
查看次数

Bash 提示:如何获得目录路径的首字母

我通常在 bash 提示符 ( PS1='\u@\h:\W$ ') 中只有当前目录的名称,所以如果我在里面,~/projects/superapp/src/我会得到:

hamish@host:src$ 
Run Code Online (Sandbox Code Playgroud)

但是,我想在没有完整路径的情况下指示完整路径。我看过人们会看到的截图

hamish@host:~/p/s/src$ 
Run Code Online (Sandbox Code Playgroud)

如果在上面的示例目录中。那么 PS1 的价值是多少呢?或者失败了,我需要什么脚本.bashrc来制作它?

bash command-line bashrc

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

Bash shell:如何协调可移植配置文件和 GUI 终端启动类型(登录或交互)?

为了“正确”实现我喜欢的 shell 的标准配置bash,以便在多个平台上使用,在处理与他们选择的 shell 启动类型(登录或交互式)不一致的终端时,我遇到了一些困惑)。

Bash 启动文件

从 bash 手册中,我确定了启动文件和它们来源的顺序/案例之间的区别(/etc/profile~/.bash_profile~/.bash_login、 和~/.profile登录 shell,以及~/.bashrc交互式非登录 shell)。该文档建议您将特定于 bash 的登录配置存储~/.bash_profile~/.bashrc. 手册本身甚至建议添加if [ -f ~/.bashrc ]; then source ~/.bashrc; fi~/.bash_profile文件中,以便登录 shell 继承您的交互式 shell 设置。

从我在手册和各种在线论坛/文档中读到的内容来看,将非 bash 特定的登录配置抽象为明智之举,~/.profile因为其他 shell 可以获取此文件。对于除了 bash 之外还可能使用 Bourne shell 的人来说,这可能是一个边缘情况(这在我的情况下不太可能),但这似乎是一个好习惯。

到目前为止,这一切看起来都非常简单和合乎逻辑,尤其是在各种 shell 启动类型之间的区别很明显的环境中:在命令行是主要界面的系统或终端上,登录 shell 是您的主要会话 shell ,交互式 shell 是在该会话中启动的后续 shell,而您的非交互式 shell 是运行脚本的 shell。

真正令人困惑的是,当您的 shell 从已通过系统身份验证的 GUI 环境中的终端启动时,登录 shell 的构成是什么? …

terminal bash shell gui bashrc

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

Linux环境变量中的空格?

给定目录:/media/foo/can haz/bar,我尝试使用以下命令编辑bash.rc

export Foo=/media/foo/can haz/bar
export Foo=/media/foo/can\ haz/bar
export Foo='/media/foo/can haz/bar'
export Foo="/media/foo/can haz/bar"
export Foo='"/media/foo/can haz/bar"'
export Foo="'/media/foo/can haz/bar'"
Run Code Online (Sandbox Code Playgroud)

但每次,我都无法得到类似以下内容的工作(不使用"$Foo"):

cd $Foo
Run Code Online (Sandbox Code Playgroud)

如何在 Linux 系统上设置带有空格的环境变量?

linux bash environment-variables bashrc escape-characters

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