Unix & Linux

Linux,FreeBSD和其他类似Un * x的操作系统用户的问答


3
定制bash shell:加粗/上色命令
在线上有许多教程/帖子(例如http://www.cyberciti.biz/faq/bash-shell-change-the-color-of-my-shell-prompt-under-linux-or-unix/)有关如何通过设置在bash中自定义提示的信息PS1。有没有一种方法可以自定义我键入的命令的颜色/粗体? 换句话说,举例来说,我想要一个绿色提示,一个粗体蓝色命令,然后以任何默认颜色输出。在下面的示例中,我已经知道如何joe>通过设置使“ ”显示为绿色,蓝色,粗体PS1。但是,有什么方法可以使我git status以粗体显示吗? joe> git status # On branch master # Your branch is ahead of 'origin/master' by 2 commits. # ...
13 bash  colors 

2
递归更改文件权限,但不更改目录?
我正在对已经迁移到UNIX系统的某些文件进行权限的大规模递归更改。我将它们更改为ug + rw,但是后来我发现无法遍历子目录。我查看了手册页chmod,但没有找到排除目录的任何解释,因此我搜索了一下,发现人们习惯于find递归地更改目录的权限以对用户和组“执行”。我这样做了,然后我可以调查一下。 但是在我看来,我应该能够做到这一点chmod-递归地将文件更改为读/写,但不会使目录不可遍历。我是否以“正确”的方式完成此操作,或者有更简单的方法来执行此操作?

5
归位键在终端中不起作用
我正在使用GNOME Terminal 2.7.3和zsh 4.3.9(x86_64-unknown-linux-gnu) Home并且End不起作用。当我按它们时,什么也没发生,什么也没显示。但是当我按shift + Home(滚动到shell输出的开头。)时它们也可以工作,并且在其他GUI程序中也可以工作。我用谷歌搜索并尝试了以下方法。不用找了 :( 885 bindkey "\e[1~" beginning-of-line 886 bindkey "\e[H" beginning-of-line 887 bindkey "\e1~" beginning-of-line 888 bindkey "\eH" beginning-of-line 889 bindkey "\e[0H" beginning-of-line PS:当我在最后一个选项卡,然后按Ctrl + pagedown我被;5~打印在屏幕上。这有什么线索吗?

1
窗口是否将可用内存最小化?
最终用户看不到未显示的最大化窗口和最小化窗口。未显示是指由活动窗口覆盖的非活动最大化窗口。 但是有一个区别-在应用程序切换服务中,如Compiz一样明显:窗口管理器“知道”最大化的窗口外观(因此它可以产生缩略图),而最小化的窗口由图标表示。仅(不计算窗口的外观/内容)。 那么这是否意味着在最小化窗口时释放了内存?内存对WM可以最大化的窗口数有限制吗?如果有这样的限制,那么它是实质性/相关性吗? 想象一个不允许最小化的WM(只能在最大化的窗口之间切换):由于内存使用情况,此WM是否会对终端用户施加相当大的限制? 感谢您解决此问题---我可能有一个错误的主意。

3
如何制作那些老式的GUI(例如debian / arch安装程序)
我最近做了很多安装,并且在可能的情况下,我通常会选择从Live CD的GRUB菜单中进行文本安装。大多数安装程序如下所示: 我一直认为这些GUI(如果可以这样称呼它们)确实很棒而且轻巧。看到很多应用程序/发行版都在使用它们,它一定是共享库还是对的?有什么办法可以制作这样的东西吗?
13 scripting  distros  gui 

2
如何使“黑白”成为默认设置?
当我打印某些内容(Firefox 5和其他应用程序)时,选项“颜色”始终设置为“颜色(CMYK)”。如何使“单色”或“黑白”成为默认设置? 这是带有CUPS 1.4.6-5ubuntu1.3 的Kyocera FS- C5100DN。 [编辑]输出lpstat -d -v: system default destination: FS-C5100DN device for FS-C5100DN: socket://192.168.0.24 现在的问题是:我可以在自己的计算机上以某种方式更改默认设置,而不更改服务器上的设置吗?
13 printing  cups 

3
在Vim中选择代码块
给定这样的代码: 588 while ($linecounter > 0) { 589 $token = " "; 590 while ($token != PHP_EOL) { 591 if (fseek($handle, $pos, SEEK_END) == -1) { 592 $beginning = true; 593 break; 594 } 595 $token = fgetc($handle); 596 $pos--; 597 } 598 $linecounter--; 599 if ($beginning) { 600 rewind($handle); …




2
如何安全地将变量传递给启用了root的脚本?
这个问题是完全笼统的,不仅适用于我的情况,而且...我有一个小型busybox设备,希望非root用户能够使用root特权执行特定脚本。例如,类似以下这样$1的小脚本来启用DHCP,其中在cmdline(!!)上发送的唯一变量()是要发送的主机名: #!/bin/bash udhcpc -b -i eth0 -h $1 像这样运行udhcpc需要root用户访问权限,因此,我计划进行修改/etc/sudoers以包含此行: joe ALL = NOPASSWD: /path/to/enable_dhcp.sh 只需运行以下命令,即可使“ joe”轻松地以root特权运行该脚本: sudo /path/to/enable_dhcp.sh 而不是要求输入密码(这是我想要的,因为我希望joe能够编写此脚本)。 现在..我知道(或者至少我认为这样做),$1在可以轻松使用root特权运行的脚本中使用是一个可怕的想法,因为您可以向其中注入任何内容。 那么...解决此问题的最佳方法是什么?我如何让Joe用root特权执行我想做的事情,如何允许他传入变量(或者像使用环境变量那样有效地传递变量),同时又不对注入攻击敞开大门?

2
基于权重的VM块IO控制
我使用KVM管理我的虚拟机。我试图限制为VM提供的资源。我可以使用libvirt / cgroups限制为VM分配的CPU和内存。现在,我想通过应用一些权重来控制为每个VM分配的磁盘时间。我从cgroups看了blkio控制。由于VM只是一个Linux进程,因此我将能够使用cgroups,但是我不确定它是否也适用于异步IO。如果没有,有人可以提出一个好的替代解决方案吗?

1
关闭后绑定的TCP本地套接字地址多长时间不可用?
在Linux上(我的实时服务器在RHEL 5.5上-下面的LXR链接是其中的内核版本),man 7 ip说: 除非已设置SO_REUSEADDR标志,否则已绑定的TCP本地套接字地址在关闭后的一段时间内不可用。 我没有使用SO_REUSEADDR。“一段时间”是多长时间?我如何知道它有多长时间,以及如何更改它? 我一直在仔细研究这个问题,发现了一些信息,但是从应用程序程序员的角度来看,这些信息都无法真正解释。以机智: TCP_TIMEWAIT_LEN in net/tcp.h是“等待破坏TIME-WAIT状态的时间”,固定为“大约60秒” / proc / sys / net / ipv4 / tcp_fin_timeout为“如果套接字已被我们关闭,则将套接字保持在状态FIN-WAIT-2的时间”,并且“默认值为60秒” 我遇到的困难是弥合TCP生命周期的内核模型与程序员的端口模型不可用之间的差距,即了解这些状态与“某个时间”的关系。

3
在(和排除)两个模式之间打印行
我将使用cURL提交表单,其中某些内容来自其他文件,使用 sed 如果使用param1来匹配其他文件的行匹配模式sed,则以下命令可以正常运行: curl -d param1="$(sed -n '/matchpattern/p' file.txt)" -d param2=value2 http://example.com/submit 现在,解决问题。我只想显示2个匹配模式之间的文本(不包括匹配模式本身)。 可以说file.txt包含: Bla bla bla firstmatch It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. secondmatch The point of using Lorem Ipsum is …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.