小编use*_*890的帖子

从字节偏移量中获取行号

具有文件的字节偏移量。

是否有提供此字节行号的工具?

  • 字节数从零开始,如:第一个字节是 0 而不是 1。
  • 行号以 1 开头。
  • 文件可以有纯文本、“二进制”blob、多字节字符等。但我感兴趣的部分:文件结尾,只有 ASCII。

示例,文件:

001
002
003  <<-- first zero on this line is byte 8
004
Run Code Online (Sandbox Code Playgroud)

有字节偏移8会给我行3

猜猜我可以使用这样的东西来查找行号:

 一种。tail -c+(offset + 1) file | wc -l,这里+1tail从1计数
 湾 wc -l file
 C。那么tail -n+num 这里numa - b + 1

但是......有没有一个相当常见的工具可以num直接给我?


编辑,错误:或更明显:

head -c+offset file | wc -l
Run Code Online (Sandbox Code Playgroud)

utilities text-processing

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

在 bash 中读取特殊键

我正在使用一个脚本,其中列出了一个选择列表。如:

1)项目 1               #(突出显示)
2) 第 2 项
3)项目 3 # (已选)
4) 第 4 项

  • 当用户按下down-arrow下一个项目时突出显示
  • 当用户按下up-arrow以前的项目时突出显示
  • 等等。
  • 当用户按下tab项目时
  • 当用户按下shift+tab所有项目被选择/取消选择
  • 当用户按下ctrl+a所有项目时
  • ...

这在当前使用中运行良好,这是我个人使用,其中输入由我自己的设置过滤。

问题是如何使这在各种终端上都可靠。


我使用了一个有点hackish的解决方案来读取输入:

while read -rsn1 k # Read one key (first byte in key press)
do
    case "$k" in
    [[:graph:]])
        # Normal input handling
        ;;
    $'\x09') # TAB
        # Routine for selecting current item
        ;;
    $'\x7f') # Back-Space
        # Routine for back-space
        ;;
    $'\x01') …
Run Code Online (Sandbox Code Playgroud)

bash keyboard

10
推荐指数
2
解决办法
8311
查看次数

ANSI 代码转换器

是否有任何工具可以将带有 ANSI 代码的文本转换为类似文本的输出?tput帽子名称之类的?

查询的原因是我想使用script或类似的方法查看生成的文件,而不必破译 ANSI 序列。我知道一些,但不是全部,文本输出会更容易阅读。

在大多数情况下,我可以查看生成 ANSI 文本的脚本或程序的源代码,但如果有“调试”之类的工具就好了。

最好的可能是 C 变量名,即:

^[[K    ->   <clr_eol>
Run Code Online (Sandbox Code Playgroud)

知道我可以为它写一个脚本......例如:

sed 's/$/<newline>/' rec001.txt | \
sed 's/\x07/\n<bell>/g' | \
sed 's/\x1b\[K/\n<clr_eol>/g' | \
sed 's/\x1b\[?12l\x1b\[?25h/\n<cursor_normal>/g' | \
sed 's/\x1b\[\([0-9]\+\);\([0-9]\+\)H/\n<cursor_position(\1, \2)>/g' | \
sed 's/\x1b\[?1049h/\n<enter_ca_mode>/g' | \
sed 's/\x1b\[?25l/\n<cursor_invisible>/g' | \
sed 's/\x0d/<CR>/g' | \
...
Run Code Online (Sandbox Code Playgroud)

这是我对Irssi录音进行的快速测试的一部分。

但是想知道是否有任何现有的工具可以完成这项工作。

作为一个侧面说明,我们有aha安思HTML适配器,它转换ANSI到HTML。但这不是我要找的适配器。


text-processing conversion escape-characters

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

恢复到旧的 Chrome 个人资料图标/头像左上角

重新启动 Chrome,左上角的旧配置文件头像不见了。

不断使用多个配置文件进行各种测试等。我已经习惯于通过查看左上角来快速识别我使用的配置文件。这也是将各种打开的配置文件放在前面的快速方法(因为 alt+tab 等上的所有图标都是相同的)。

新版本:右上角的“名称”带有多层导航和大量额外信息。当然对某些人很好,但对我来说不是。

如何恢复?

chrome

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

Chrome 打开的文件太多/崩溃/抱歉吉姆

使用 Google Chrome 时,我经常看到“Sorry Jim”标签。浏览器也经常死机和崩溃。

从终端模拟器运行它会显示一长串Too many open files

[...:ERROR:shared_memory_posix.cc(231)] Creating shared memory in /dev/shm/.com.google.Chrome.0A3O7D failed: Too many open files
[...:ERROR:shared_memory_posix.cc(231)] Creating shared memory in /dev/shm/.com.google.Chrome.gr0r3Q failed: Too many open files 
Run Code Online (Sandbox Code Playgroud)

谷歌浏览器(32 位,不确定是否影响 64 位)。

chrome limit files crash

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

Chrome - Gdk:在非顶层调用 gdk_window_set_user_time

在 GNOME (3) 中运行 Chrome,至少从 shell 中,对于浏览器中发出的每个按键都会产生此错误:

[...:ERROR:browser_main_loop.cc(209)] 
 Gdk: gdk_window_set_user_time called on non-toplevel
Run Code Online (Sandbox Code Playgroud)

怎么修?

gnome chrome

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