小编Spa*_*awk的帖子

如何在 Bash 中反转 alt-period 的方向?

在 Bash 中,您可以按Alt-.插入上一个命令的最后一个参数。如果多次按下它,它会循环显示历史记录中所有命令的最后一个参数。但是,有时我按太多次,我想反转骑行的方向,因此前进。这可能吗?

(也就是说,如果你用反向我搜索Ctrl- r,你可以改变方向Ctrl-s什么是模拟Alt- .?)

terminal keyboard-shortcuts bash shell command-history

12
推荐指数
1
解决办法
1211
查看次数

如何分别映射左右 shift 键?

首先,请原谅我对 X 和 XKB 的无知;我一直在尝试拼凑一个解决方案,希望能够在不需要详细掌握的情况下实现我想要的。

我正在尝试在 Ubuntu 12.04 上创建一个 XKB 键盘映射,它允许我规定两个 shift 键中的哪一个构成 Level2 修饰符。具体来说,4键应该只$在按住右移时产生 a ,而不是左移。

到目前为止我的阅读:

我试图定义一个自定义类型,然后在符号映射中明确引用它:

/usr/share/X11/xkb/types/mbfisher

default xkb_types "mbfisher" {
  type "RIGHT_SHIFT" {
    modifiers = None+Shift_R;
    map[None] = Level1;
    map[Shift_R] = Level2;
  };
}
Run Code Online (Sandbox Code Playgroud)

/usr/share/X11/xkb/symbols/mbfisher

default
partial alphanumeric_keys
xkb_symbols "basic" {

  name[Group1]= "mbfisher";

  key <AE04> {
    type= "RIGHT_SHIFT",
    symbols[Group1]= [ 4,  dollar ]
  };

};
Run Code Online (Sandbox Code Playgroud)

然后我使用 Ubuntu 键盘布局 GUI 选择地图。

这显然会禁用除4键之外的字母数字键盘,但仍然可以使用任一 shift 键输入美元符号。

我意识到要写一个包含大量无用信息的大量问题,所以我会停在这里;请询问我遗漏的任何内容。 …

linux keyboard

11
推荐指数
1
解决办法
3659
查看次数

如何在 Bash 中重置已编辑的历史记录行?

在 Bash 中,您可以按向上(和向下)箭头来遍历历史记录。然后,您可以在执行该命令之前对其进行修改。有时我错误地修改了命令,并希望将其重置为最初的历史记录。有没有办法做到这一点?

我试过执行一个空行,然后再次遍历历史记录,但相关行仍处于编辑状态。

bash history command-line

9
推荐指数
1
解决办法
735
查看次数

如何在 bash 中删除刚刚输入的换行符?

我有时将路径复制粘贴到终端中,并且经常不小心复制换行符。例如,我想查找然后阅读foobar.txt.

$ locate foobar.txt
/home/sparhawk/Document Directory/foobar.txt
Run Code Online (Sandbox Code Playgroud)

然后我点击三次选择第二行。(糟糕,它也选择了尾随的换行符!)由于路径中有空格,我需要用引号将路径括起来。因此输入

$ cat '
Run Code Online (Sandbox Code Playgroud)

并单击鼠标中键进行粘贴。这产生

$ cat '/home/sparhawk/Document Directory/foobar.txt
> 
Run Code Online (Sandbox Code Playgroud)

因为我在关闭'. 此时,我无法按退格键删除换行符。有没有办法删除这个刚刚输入的换行符?

更多信息

在这一点上,我可以SIGINT使用Ctrl+ c,也可以使用另一个'. 假设我做后者。

$ cat '/home/sparhawk/Document Directory/foobar.txt
> '
cat: /home/sparhawk/Document Directory/foobar.txt
: No such file or directory
Run Code Online (Sandbox Code Playgroud)

这是有道理的,因为我刚刚输入了一个包含换行符的路径。但是,此时,我可以按向上箭头来加载最后一个命令。IE

$ cat '/home/sparhawk/Document Directory/foobar.txt
'
Run Code Online (Sandbox Code Playgroud)

此时,我可以按两次退格键删除换行符。(注意>,在第二个历史示例中没有。)

linux terminal bash shell command-line

9
推荐指数
1
解决办法
1098
查看次数

为什么按主机名 ping 比按 IP 地址 ping 需要更长的时间?

我注意到通过主机名 ping 比使用 IP 地址慢。例如,在 Linux 命令行中:

$ time ping google.com -c 1
PING google.com (150.101.213.160) 56(84) bytes of data.
64 bytes from 150.101.213.160: icmp_seq=1 ttl=61 time=14.4 ms

--- google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 14.425/14.425/14.425/0.000 ms

real    0m5.251s
user    0m0.003s
sys 0m0.005s

$ time ping 150.101.213.160 -c 1
PING 150.101.213.160 (150.101.213.160) 56(84) bytes of data.
64 bytes from 150.101.213.160: icmp_seq=1 ttl=61 time=14.5 ms

--- 150.101.213.160 ping statistics --- …
Run Code Online (Sandbox Code Playgroud)

networking ping

8
推荐指数
1
解决办法
7300
查看次数