在 Bash 中,您可以按Alt-.插入上一个命令的最后一个参数。如果多次按下它,它会循环显示历史记录中所有命令的最后一个参数。但是,有时我按太多次,我想反转骑行的方向,因此前进。这可能吗?
(也就是说,如果你用反向我搜索Ctrl- r,你可以改变方向Ctrl-s什么是模拟Alt- .?)
首先,请原谅我对 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 键输入美元符号。
我意识到要写一个包含大量无用信息的大量问题,所以我会停在这里;请询问我遗漏的任何内容。 …
在 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)
此时,我可以按两次退格键删除换行符。(注意>,在第二个历史示例中没有。)
我注意到通过主机名 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) bash ×3
command-line ×2
linux ×2
shell ×2
terminal ×2
history ×1
keyboard ×1
networking ×1
ping ×1