小编gcb*_*gcb的帖子

从 vim 缓冲区中的命令获取输出

我想做的事

  1. 编辑一个文件
  2. 运行 '!svn diff %' (或任何其他采用当前文件名的命令)
  3. 将输出放在新的缓冲区(或选项卡)上

奖励:不使用脚本,因为我经常在主机上工作,我不喜欢。

我的第一次尝试是::tabnew | r !svn diff %这显然不起作用,因为 % 将是空的,因为它在 tabnew 命令之后被解析。

vim

4
推荐指数
1
解决办法
366
查看次数

在 PuTTY 下屏幕下的 vim 使用鼠标滚轮工作?

有什么办法可以使这项工作?

我很想用鼠标滚轮在 vim 中滚动我的文件。

另外,我不介意用鼠标滚轮滚动 gnu 屏幕缓冲区,而不必键入 ctrl+a,ESC

编辑:

正如 Isaac Rabinovitch 的回答中提到的,屏幕和 vim 设置已经很好了。我认为整个问题仅在于 PuTTY。

vim window putty gnu-screen

4
推荐指数
1
解决办法
7478
查看次数

如何将我的参数放入 Bash 别名命令中?

我的 bashrc 中通常有以下简单别名:

alias g="grep --color=always --exclude-dir=\*.svn\*"

但现在我必须在只有 GNU grep 2.5 的系统上工作,因此没有--exclude-dir争论。

现在我需要这样的工作:

alias g="grep --color=always $1 $2 | grep -v .svn"

但当然,参数会附加到别名的末尾。$1 和 $2 在创建别名时解析,而不是在调用时解析,即使使用强引号也是如此。

我可以在不求助于额外的脚本或函数的情况下解决这个问题吗?

bash alias arguments

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

在远程客户端(即 Xserver)计算机休眠/休眠/挂起期间保持远程 X11 应用程序

我正在使用速度较慢但便携的计算机(华硕 eeepc、vivobook 等),并在远程服务器上进行所有开发。

大多数时候我只是ssh到服务器,开始screen会话,如果发生任何事情(例如客户端睡眠,连接中断等),我只是再次连接并恢复我的屏幕会话。

但最近我一直在运行 X 应用程序作为我开发的一部分,尤其是 android 模拟器。每次我让我的笔记本电脑进入睡眠状态并尝试恢复工作时,我所有的 X 应用程序都死了,类似于:

XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server "localhost:10.0"
      after 356 requests (356 known processed) with 0 events remaining.
Run Code Online (Sandbox Code Playgroud)

无论如何,我可以使用控制台应用程序但使用 X 应用程序的那种远程工作流程吗?

ssh xorg remote suspend x11-forwarding

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

TERM=xterm-256color 与 xterm+256color

我注意到 debian 带有 terminfo,xterm+256color而大多数其他发行版只有(并且是 osx 中的默认值)xterm-256color

查看两者的信息,我可以看到 xterm+256color 非常简洁,并且缺少很多信息……但据我所知,它缺少的大部分 / 似乎 / 都是旧东西,几乎没有用处。例如

    eat_newline_glitch,
    columns#80,
Run Code Online (Sandbox Code Playgroud)

我不太关心这两个……现在还有很多其他的,我不确定我是否需要。我的终端当然有 256 种颜色并且不受 80 个字符的限制......所以我倾向于使用 xterm+256color

有没有这方面的文章?任何搜索引擎上的网络搜索对于 xterm+256color 都绝对没有结果(嗯,结果很多,但 100% 大约只有 xterm-256color)

linux debian terminal xterm

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

分区被挂载为 noexec,而不是 fstab,还能是什么?

我有一个分区被安装为noexec. 它显示在mount输出上,但没有任何东西fstab可以做到这一点。

是从哪里来noexec的?

我的文件系统表:

UUID=1fbb29fe-cef2-4cc2-9b1e-ac45e74289ac /               ext4    noatime,nodiratime,errors=remount-ro 0       1
# swap was on /dev/sda3 during installation
UUID=some-uuid-string none            swap    sw              0       0
/dev/sr0        /media/cdrom0   udf,iso9660 user,noauto     0       0

tmpfs   /tmp         tmpfs   nodev,nosuid,noexec,size=2G          0  0

# old disks
#/dev/md0     /DATA  ext4   noauto,nodiratime,errors=remount-ro,user 0 2
# new disks:
/dev/md1     /DATA  ext4   noauto,nodiratime,errors=remount-ro,user 0 2
Run Code Online (Sandbox Code Playgroud)

我以用户或 root 身份挂载上面的 /DATA 分区。无论哪种情况我都会得到:

/dev/md1 on /DATA type ext4 (rw,nosuid,nodev,noexec,nodiratime,relatime,errors=remount-ro,stripe=16384,data=ordered,user)
Run Code Online (Sandbox Code Playgroud)

linux mount partitioning ext4

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

uMatrix:禁用第一方脚本和插件

我正在用 uMatrix 替换 NoScript。

我喜欢我碰巧到达的每个随机站点都不会运行任何脚本或插件的想法,就像 noScript 提供的那样。

但是 uMatrix 的默认设置是始终允许第一方脚本甚至插件!我找不到任何设置来禁用它。我得到的最接近的是一个屏幕来保存“临时规则”。但我希望这是永久性的,并且适用于一切!

有没有不分叉的方法?

umatrix

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

/dev/random 但可预测?

如果我想对某些我不确定是否正常工作的闪存进行快速测试,向其中写入数据的便捷方法是/dev/random/dev/zero

但是,对于dev/random,我不知道它写了什么以供稍后检查,并且dev/zero始终显示为零。因此,我可能会遗漏未正确保存的闪存部分,读取也会返回零。

有什么东西能给我带来与上述相同的便利,一个可预测的流吗?像 1010101010 这样的东西会起作用。

linux storage

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

有什么方法可以向后运行grep,即从文件末尾开始?

我有一个 70G+ 的日志文件,我想要与模式匹配的最新条目(apache 日志在末尾追加新项目)。我可以:

run grep | tail
Run Code Online (Sandbox Code Playgroud)

或者

run tail | grep
Run Code Online (Sandbox Code Playgroud)

选项 1 将永远存在。选项 2 可能什么都不返回,然后我将不得不增加 tail 的计数并继续运行直到我得到一些东西。

如果我可以从最后一行到第一行 grep,那将是理想的。但是我在 grep 的手册页上找不到任何选项。

有什么技巧可以做到这一点吗?单独使用 grep 还是与任何其他 linux 工具组合?

linux bash grep command-line

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