我试图在二进制文件中找到两个字节,然后增加这两个字节的值并在文件中替换它们。这两个字节位于位置 0x82-0x83。现在我已经使用这个成功提取了这两个字节:
#!/usr/bin/env bash
BYTES=$(tail -c +131 "$1" | head -c 2)
Run Code Online (Sandbox Code Playgroud)
这些字节具有值:1B 1F
. 我坚持:
6943
十进制。head -c 130 original.bin >> new_file.bin && magic_command_writing_bytes_to_file >> new_file.bin && tail -c +133 original.bin
,但必须有更好的方法。我可以在 PHP 中做到这一点,它应该更容易,但我对如何在 bash 中做到这一点很感兴趣。
我想列出可以在 bash 控制台中使用的所有颜色。之后我想将提示设置为粗体和类似橙色的颜色。我用它来为我列出颜色代码:
for code in {0..255}; do echo -e "\e[38;05;${code}m $code: Test"; done
Run Code Online (Sandbox Code Playgroud)
但问题是如何让它加粗并保持颜色呢?
我在这里寻找了一些关于将其设置为粗体的建议:http://misc.flogisoft.com/bash/tip_colors_and_formatting,但我找不到任何结合粗体和 256 种颜色之一的代码。
我女朋友买了Lenovo Essential G500 i5-3230
,我Linux Mint 16
用全盘加密安装了它。它是标准安装,使用dmcrypt
和进行加密LUKS
。但屏幕亮度有问题,它0
甚至在要求加密分区密码之前就设置为亮度。我通过添加以下内容部分修复了它:
echo 50 > /sys/class/backlight/acpi_video0/brightness\n
Run Code Online (Sandbox Code Playgroud)\n\n但/etc/rc.local
它会在输入正确的密码来安装加密分区后修复亮度。我想在此之前修复亮度,这样我就可以看到密码输入字段。/etc/rc.local
是在安装加密磁盘后加载的,所以我想我需要以某种方式强制内核在加载自身之后和安装之前更改亮度。
有没有办法告诉内核在启动后立即调整亮度?
\n\n笔记本电脑显卡为:AMD\xc2\xae Radeon HD 8570M + Intel HD Graphics 4000
\n\n更新
\n\n我已经尝试过@derobert 建议的解决方案。我创建了 initramfs 脚本/etc/initramfs-tools/scripts/init-premount/local-backlight-brightness
#!/bin/sh\nPREREQ=""\nprereqs()\n{\n echo "$PREREQ"\n}\n\ncase $1 in\n prereqs)\n prereqs\n exit 0\n ;;\nesac\n\n. /usr/share/initramfs-tools/hook-functions\n# Begin real processing below this line\n\necho 50 > /sys/class/backlight/acpi_video0/brightness\n
Run Code Online (Sandbox Code Playgroud)\n\n之后:
\n\n$ sudo chmod a+rx /etc/initramfs-tools/scripts/init-premount/local-backlight-brightness\n$ sudo update-initramfs -u\n$ sudo …
Run Code Online (Sandbox Code Playgroud) bash ×1
binary ×1
boot ×1
colors ×1
conversion ×1
encryption ×1
initramfs ×1
linux-mint ×1
luks ×1
prompt ×1
replace ×1
terminal ×1