我已经成为 Linux 用户有一段时间了,我对大多数常见的命令行实用程序有相当不错的了解。然而,那些上来,再次相对于编程是grep,awk和sed。
关于我使用 grep 的唯一目的是将内容输送到它以查找日志文件中的文件、输出ps等。我没有使用过awk或根本没有使用sed过。这些实用程序有什么好的教程吗?
作为 Linux 用户,我一直只使用 bash,因为它是我使用的每个发行版的默认设置。使用其他 Unix 系统(如 BSD)的人似乎更频繁地使用其他 shell。为了多学习一点,我决定尝试一下 zsh。
作为 bash 用户:
我一直在尝试找出用于小脚本的窗口大小。我目前的技术是wmctrl -lG用来找出尺寸。然而,问题是这样的:
它给出的 x 和 y 数字用于窗口装饰的左上角,而高度和宽度仅用于内容区域。这意味着如果窗口装饰添加 20px 的高度和 2px 的宽度,wmctrl 将报告一个窗口为 640x480,即使它在屏幕上占据 660x482。这是一个问题,因为我的脚本的下一步是使用该区域来告诉 ffmpeg 记录屏幕。我想避免在当前设置中对窗口装饰的大小进行硬编码。
适合的是获取窗口装饰大小的方法,以便我可以使用它们来确定 640x480 内容区域的位置,或者直接获取内容区域位置的方法,而不是窗口装饰的位置.
我正在使用 gtk-recordmydesktop 将视频输出记录到我的桌面。但是,视频没有声音。我发现的所有与此相关的教程都涉及从麦克风录制声音,而我对录制声音输出很感兴趣。我怎样才能做到这一点?官方常见问题解答说“解决方案在您的混音器设置中。继续使用它;)” 这没有澄清任何事情。
如何在录制声音输出的同时自己也能听到它?
当我ssh进入我的 VPS 时,我irssi在屏幕上运行。当有人发送 unicode 字符(例如 © 或 €)时,irssi当我在ssh会话中通过屏幕使用它时会显示垃圾。如果我irssi使用 irssi 的代理模块连接到它,从我本地计算机上运行的 irssi,它会正确显示。
同样,如果我在 VPS(屏幕外)上运行 ghci 并输入其中一个字符,它就会崩溃。
因此,显然,无论是在 ssh 还是系统设置中,我与 VPS 的连接都存在某种字符编码问题。
我怎样才能找出导致这种情况的原因并解决它?
细节:
客户系统
VPS系统
目前,如果我下载压缩文件,它可以是 .tar.gz 存档、tar.bz2 存档、.zip 存档或 .gz 存档中的任何一个。每次这样做时,我都必须记住该程序的命令行选项是什么。
有没有我可以去的 CLI 程序:
解压缩某个文件。?
并让它弄清楚存档的格式是什么?(用于避免与任何真实程序冲突的过长名称)
在 vim 中编辑文件时,有一个小烦恼,当我用 j 和 k 移动行时,它是按文件行移动的,而不是像其他编辑器那样按屏幕行移动。对于我自己的文件,我可以通过在 vim 选项中自动换行到一定长度来解决这个问题,但这对其他人的文件没有好处。是否有一个 vim 命令可以临时将行的处理切换为屏幕行,或者用于移动使用屏幕行的替代命令?
我的电视是飞利浦 19PFL4322。它的原始分辨率是 1440x900 。我的笔记本电脑的显卡是 ATI Radeon HD 3650,使用radeonX.org 服务器 1.10 上的开源驱动程序。
如果我通过 Linux 中的 VGA 或 Windows 中的任何东西连接它们,它会以该分辨率正确显示。
如果我在 Linux 中通过 HDMI 连接它,它默认为 1024x768 分辨率,而 GUI 工具只允许我将其设置为 1360x768,所有这些看起来都很糟糕。
如果我通过使用生成cvt 1400 900模式行然后使用 xrandr 将其设置为模式来强制问题,则该监视器上没有输出。
通过 VGA 连接时,Linux 将其正确识别为飞利浦 19" 电视。通过 HDMI 连接时,它错误地将其识别为 18" 电视。
如何使用 HDMI 使显示器在 Linux 上正确显示?
编辑: xrandr 输出。VGA-0和HDMI-0都是我的电视,LVDS是我的笔记本电脑显示器,HDMI-0 下列出的 1280x960 不是我电视的有效输出。未列出的 1440x900 是有效输出。
Screen 0: minimum 320 x 200, current 2880 x 900, maximum 8192 x …Run Code Online (Sandbox Code Playgroud) 我有一个 irssi 会话在我的 VPS 中运行。我使用笔记本电脑上的 Xchat 或 Android 手机上的 Andchat 通过 irssi-proxy 连接到它。有什么办法可以让它在我连接时发送自上次代理连接到我的客户端以来包含我的昵称的所有消息?
我的家庭网络使用 WPA2 进行加密。为了从我的 Arch Linux 安装连接到它,我首先尝试使用 NetworkManager,但是,在断开连接之前最多只能连接一分钟。
我用 wicd 替换了它,直到最近它都令人满意地工作。此后,如果在启动时无法建立连接,或者失去连接,将无法建立连接。尝试重新连接 GUI 会大大降低系统速度,以至于我不得不从 X 切换到 tty 并终止进程。在这些情况下,curses 接口无法建立连接,但不会影响系统性能。
重新启动守护程序不足以将其从错误状态修复。我需要关闭并重新打开系统电源。
同一台笔记本电脑上的 Windows 安装确实遇到了一些间歇性连接问题(这是一个为网络供电的蹩脚 ISP 路由器),但从它们中恢复,只需要重新连接到网络。在使用 Arch Linux 之前,我曾经使用 Ubuntu 作为笔记本电脑上的 Linux 发行版,这与 Windows 的结果相同。
是什么导致了这个问题(我怀疑这可能与之前的 NetworkManager 问题有关),我该如何解决?
值得一提的是,我的无线网卡是 Broadcom BCM4312,它使用的是 b43 驱动程序。
编辑:在 wicd 无法连接时尝试运行 wpa_supplicant 会产生以下输出:
ioctl[SIOCSIWSCAN]:设备或资源繁忙
无法启动 AP 扫描。
ioctl[SIOCSIWSCAN]:设备或资源繁忙
无法启动 AP 扫描。
No network configuration found for the current AP
CTRL-EVENT-DISCONNECTED bssid=00:00:00:00:00:00 reason=0
ioctl[SIOCSIWSCAN]: Device or resource busy
无法启动 AP 扫描。
进一步编辑:当系统使用电池电源运行时,该问题更有可能发生,但在插入电源时仍可能发生。
编辑 3:这几乎肯定与省电选项有关。更要注意的是,当系统使用电池电源运行时,当系统长时间处于单独状态时,或者当盖子关闭时,总是会发生这种情况。