Unix & Linux

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

3
如何直接通过GRUB2引导PC-BSD实时DVD-ISO IMAGE?
通过loopback命令,GRUB2可以直接引导ISO文件。 现在,我已经配置了相应的菜单项来引导PC-BSD Live DVD ISO,但是当我尝试引导它时,FreeBSD引导加载程序输出: can't load 'kernel' 这是我当前使用的GRUB2菜单项: menuentry "PC-BSD" { search --no-floppy --fs-uuid --set root 0d11c28a-7186-43b9-ae33-b4bd351c60ad loopback loop /PCBSD9.0-RC1-x64-DVD-live.iso kfreebsd (loop)/boot/loader } 有人知道我需要如何修改才能启动PC-BSD实时系统?

3
为什么有些软件包使用“ make install”,而另一些软件包使用“ sudo make install”
我最近在服务器上安装了LAME编码器,以将wav转换为mp3,并且可以使用./configure; make; make install。 然后我尝试安装OGG编码器,并且需要'./configure,make,sudo make install'-我没有VPS(我宁愿不每月为VPN支付15美元,我也无法这样做)安装编解码器)。 我不熟悉sudo,但我知道sudo授予您权限-但我一直在尝试找出为什么有些make installs需要sudo访问而其他人则不需要sudo访问。我还没有找到答案。

3
重击字符串用一个替换多个字符
我从提要标题中将字母和数字以外的所有字符替换为破折号,以将结果用作任何文件系统的安全文件名: $ t="Episodie 06: No hope of riding home (NEW) - Advanced grammar" $ echo ${t//[^A-Za-z0-9]/-} Episodie-06--No-hope-of-riding-home--NEW----Advanced-grammar 但是我想将所有重复的破折号压缩成一个 Episodie-06-No-hope-of-riding-home-NEW-Advanced-grammar 我发现我可以使用两遍替换来实现: $ t="Episodie 06: No hope of riding home (NEW) - Advanced grammar" $ tmp=${t//[^A-Za-z0-9]/-} $ echo ${tmp//--/-} Episodie-06-No-hope-of-riding-home-NEW--Advanced-grammar 我以为我可以像这样通过一个步骤: $ echo ${t//[^A-Za-z0-9]+/-} 但这不起作用。 有什么线索吗? 注意:我不想使用sed或其他工具
8 bash  shell  string 


2
(G)VIM使用与我的系统不同的$ PATH
因为Ubuntu没有提供TeXLive的最新软件包,所以我手动安装了它。但是,某些程序需要TeXLive作为依赖项。因此,我要做的是从2009版本安装了Ubuntu存储库中的TeXLive软件包。然后,我将$ PATH更改为包含手动安装的2011版本,因此程序仍然始终指向并使用最新的TeXLive版本。到目前为止,一切正常。 但这很简单:当我切换到VIM来编辑LaTeX文件时,我感到头疼的是,VIM只看到TeXLive2009!看到此屏幕截图,左为VIM,右为终端: 然后,我检查了$ PATH VIM使用的是什么,事实证明,它使用的是另一种,没有指向TeXLive2011。请参见此屏幕截图: VIM: :! echo $PATH /usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games 终奌站: echo $PATH /usr/local/texlive/2011/bin/x86_64-linux:/usr/local/texlive/2011/bin/x86_64-linux:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games 您是否知道如何解决此问题,以便我的LaTeX插件可以使用TeXLive 2011,也许可以使VIM使用相同的$ PATH?任何帮助将不胜感激!

3
什么是元数据,它对“ fsck”过程有何帮助?
如果我对它的理解正确,那么在崩溃之后,UNIX系统中会使用“ fsck”来检查磁盘内部的一致性。那么,我想知道它如何使用“元数据”来确保文件系统中的所有内容都是一致的,例如fsck进程需要采取哪些步骤来还原和修复? ->编辑:如果有人也可以澄清这张图片中的“同步写入”,这也将很有帮助。

1
如何在Bash中修复字符编码(Arch Linux)
我在bash中使用德国变音符号编码时遇到一些问题。它通常工作正常,但是当我键入无效命令时,bash生成的错误消息包含奇怪的转义序列,而不是实际字符。 这是显示问题的日志: [root@myhost ~]# mkdir ä [root@myhost ~]# ä -bash: $'\303\244': Kommando nicht gefunden. [root@myhost ~]# ü -bash: $'\303\274': Kommando nicht gefunden. [root@myhost ~]# ls ä äöü Projects tbb [root@myhost ~]# cat äöü äüö [root@myhost ~]# rm ä rm: Entfernen von „ä“ nicht möglich: Ist ein Verzeichnis [root@myhost ~]# rmdir …

3
使用选项卡的Emacs缩进
有没有一种方法可以使全局仅使用制表符而不使用空格来使Emacs缩进代码。我知道tabify命令。我希望自动缩进使用制表符,而不是像默认配置那样使用制表符和空格的混合。
8 emacs 

1
socat通过TCP进行可靠的文件传输
我知道netcat通常提出的“ wait-> stop”设计的缺点: server$ cat test.dat | nc -q 10 -l -p 7878 client$ nc -w 10 remotehost 7878 > out.dat (这是不可靠的:没有仪表可以等待多长时间,总有可能出现网络瓶颈一秒钟以上。-另一件事->如果您立即知道数据已传输并开始处理它们,为什么还要等待10秒!) 我想要解决方案,并提供可靠且不错的tcp流关闭功能。 我找到了socat,并按如下所述进行关闭man socat: 当其中一个流有效到达EOF时,关闭阶段开始。Socat将EOF条件转移到另一个流,即尝试仅关闭其写流,从而有机会优雅地终止。 我发现以下命令有效: 服务器发送文件: server$ socat -u FILE:test.dat TCP-LISTEN:9876,reuseaddr client$ socat -u TCP:127.0.0.1:9876 OPEN:out.dat,creat 服务器接收文件: server$ socat -u TCP-LISTEN:9876,reuseaddr OPEN:out.txt,creat && cat out.txt client$ socat -u …

5
了解Linux可执行格式和软件分发包
我在理解Linux可执行格式和软件分发软件包时遇到了麻烦。Linux本身有很多不同的发行版,似乎每个发行版的每个软件包都是单独编译的。为什么是这样?我了解有些“软件包”是要安装在不同发行版上的,但是该软件的可执行格式是否有所不同? 另外,为什么许多Linux用户更喜欢应用程序的命令提示符版本而不是GUI版本?我可以理解需要较小的占用空间,但是,如果对它们进行正确编码,即使GUI应用程序也可以占用较小的占用空间。

2
vim-搜索和替换后不突出显示搜索词吗?
执行搜索和替换后,我的GVIM安装会突出显示仍与搜索模式匹配的所有剩余文本。 输入文本示例: foo foo fighters 我跑步:%s/foo/bar/gc并确认我只想替换一个foo。其他foo仍然突出显示。 可以禁用吗?
8 vim 

4
在当前目录中列出符号链接?
这个问题涉及在当前目录中查找目录。解决方案基本上是: ls -d */ 很好,但是我如何轻松列出符号链接?我是否必须使用类似 find . -xtype l -d 1 (intended to find symlinks max depth 1 - doesn't work) 还是有更简单的方法?请问可以使用ls吗?
8 find  ls  symlink 

3
谁在做这个工作:ffmpeg还是shell?
我的问题的第一部分: 我在ffmpeg文档(section 3.2 How do I encode single pictures into movies?)上阅读了以下内容: 要将单张图片编码为电影,请运行以下命令: ffmpeg -f image2 -i img%d.jpg movie.mpg 注意,“%d”已替换为图像编号:img%03d.jpg表示序列img001.jpg,img002.jpg等。 我的问题是:谁在img%03d.jpg和之间进行翻译img001.jpg, img002.jpg, etc?是shell还是ffmpeg? 第二部分: 我想请ffmpeg将一系列图像编码为视频。但是,我的序列通常以不同于1的索引开头(例如,我们可以称之为start_index),并以可以调用的索引结尾end_index。此外,该序列使用value的增量increment,例如: img_0025.png, img_0030.png, img_0035.png, ... img_0100.png 其中start_index是25,end_index100,和increment为5。 我想将类似上述的图像序列输入ffmpeg,而不必先重命名该序列。该文档解释了如何使用符号链接来执行此操作,但是我想知道是否有一种方法可以完全避免使用它们,也许在zsh上使用高级glob。
8 shell  ffmpeg 

5
通过CLI锁定屏幕?
有什么方法可以锁定屏幕CLI样式?我正在尝试针对尽可能多的桌面管理器(主要是LightDM,但是GDM,KDM,SLiM,XScreensaver等也将是不错的选择),但是我只能为GDM和XScreensaver进行挖掘。 对于GDM,它将是: gnome-screensaver-command -l 对于XScreensaver: xscreensaver-command -lock KDM和LightDM是否有类似的命令?

2
从C程序获取CPU利用率统计信息
我想从C程序中读取CPU使用率统计信息,我对CPU使用率,窃取时间等感兴趣。这些统计信息显示在top命令的第三行中。 我试图top用awk(top -n 1 -b | awk '{print $0}')解析输出,但似乎top在开始显示正确的统计信息之前,总是给出相同的“虚构”值。 有没有办法通过代码或通过解析某些命令的输出来获取CPU利用率统计信息? 编辑: 该平台是Linux 谢谢。
8 monitoring  cpu  c  top 

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.