假设我有一个附加的屏幕,但我screen -L
最初忘记执行。是否可以在不重新执行屏幕的情况下启用和禁用当前附加屏幕的日志记录?
我知道可以通过按Ctrl+a h
(该组合键后跟h
)来获取当前附加屏幕的屏幕截图,但我想启用附加屏幕的持久日志记录。是否可以?
当我通过 SSH 登录到我的家用 Linux 机器时,我每分钟都会收到几次以下调试输出:
debug2: channel 0: request window-change confirm 0
Run Code Online (Sandbox Code Playgroud)
当我在 nano 中编辑文件时,调试消息显示在文本顶部。要删除调试消息,我必须关闭 nano,执行clear
,然后重新打开文件。无论我使用的是 Secure Shell(Google Chrome 扩展程序)、PuTTY 还是 Terminator(来自本地机器),我都会得到这个,尽管前两者要差得多。
有没有办法抑制这些消息?执行会执行sshd -q
吗,还是在编译过程中指定了调试输出级别?
我有一个 Bash 脚本,用于检查我的笔记本电脑电池并向我发送 Android 通知(通过 Shuttle,我编写的一个 Bash 脚本用作 Pushbullet API 的 cli 接口)。它运行良好,但当电池电量达到 100% 时,它会反复通知我拔掉笔记本电脑的电源。相反,我宁愿它只通知我一次 100% 收费,然后就是这样(即继续检查但不通知)。但是,我确实希望它在电池电量不足时反复通知我,以便我记得插入笔记本电脑(目前它正在这样做)。
我认为在循环中使用 continue 和 break 命令是可能的,但我不确定这是否是我想要的(我对这些不是很熟悉)。
无论如何,我很感激有关如何使用 Bash 最好地实现这一点的建议。我怀疑这很简单,但由于某种原因我没有得到它。
这是我的脚本:
#! /bin/bash
while true;
do
percent=$(acpi | awk '{ print $4}' | sed -e 's/%//g' | sed -e 's/,//g')
if [ "$percent" -le "20" ];
then
shuttle push note Chrome "Aurora: Plug in now" "Battery is at $percent percent"
fi
if [ "$percent" -eq "100" ];
then
shuttle push note Chrome "Aurora: Battery charged" …
Run Code Online (Sandbox Code Playgroud) 是否可以效仿(这是正确的词吗?)以前版本的 Bash?
我使用的是 4.3.11,我很想知道我的脚本是否与某些早期版本兼容,但我不想实际安装早期版本。我可以翻阅更改日志并找出我正在使用的以前版本缺少的功能,但这似乎有点乏味。我希望有某种神奇的命令行选项或脚本命令(可能是一厢情愿)。
terminal ×2
bash ×1
battery ×1
command-line ×1
gnu-screen ×1
logs ×1
scripting ×1
shell-script ×1
ssh ×1
sshd ×1
testing ×1