有没有一种方法可以允许在bash-bang模式中使用空格(重复上一个命令)

有没有一种方法可以允许在bash-bang模式中使用空格(重复上一个命令),bash,repeat,Bash,Repeat,我想知道是否有办法用空格分隔的子命令重复bash命令。例如,如果我输入几个命令 git add a.txt git status ... other commands starting with git git commit -m "" 并且做: !!吉特 我将再次运行最后一个git commit命令。我的问题是,是否有方法重复包含空格的最后一个命令,例如重复最后一个git status命令 我试过了 !git\ s !"git s" ,但都不起作用。试试: !?git s “!?字符串”

我想知道是否有办法用空格分隔的子命令重复bash命令。例如,如果我输入几个命令

git add a.txt
git status
... other commands starting with git
git commit -m ""
并且做:

!!吉特

我将再次运行最后一个
git commit
命令。我的问题是,是否有方法重复包含空格的最后一个命令,例如重复最后一个
git status
命令

我试过了

!git\ s
!"git s"
,但都不起作用。

试试:

!?git s
“!?字符串”事件指示符搜索事件

您还可以使用此命令引用后面的命令行:

!-n

在这种情况下,您可以点击CtrlR,键入“git s”,然后点击Enter

您还可以使用:

$git状态
致命:不是git存储库(或任何父目录):.git
$git diff
用法:git diff[--无索引]
$fc-s“吉特”
git状态
致命:不是git存储库(或任何父目录):.git
$
虽然相关,但并不完全回答您的问题

尝试将以下两行添加到
~/.bashrc

bind '"\e[A":history-search-backward'
bind '"\e[B":history-search-forward'
功能(在
source~/.bashrc
或打开新终端后):

  • 当你开始输入“git”并点击向上或向下箭头时,它将搜索你的历史记录完成情况,以完成行中已有的内容

谢谢。我在mingw/msys上试过这个。它不起作用。但它可以在Ubuntu Linux 12.04 LTS上运行。
bind '"\e[A":history-search-backward'
bind '"\e[B":history-search-forward'