Unix & Linux

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

4
为什么扎根于车轮和操作员?扎根在团队中能有所作为吗?
我刚刚在我的FreeBSD机器上注意到根源在wheel和operator中。我试图考虑这样一种情况,即UID 0处于一个组中会对...产生任何影响……好吧,任何事情,我都显得空白。因此,root甚至在/ etc / passwd中是否需要一个主登录组?还是如果用户的主组字段为空,login(3)会窒息而死吗? (要澄清:由于文件需要组所有者,因此我理解“根”组存在的目的。我不理解用户root / toor /具有该组成员身份的用户的重要性。) 这仅仅是几十年前的产物,还是有真正的原因?
18 freebsd  login  root  group 

3
如何从Linux系统转储内存映像?
我知道要在Windows中转储内存映像。(例如,dumpit)但是我不知道如何在Linux中转储内存映像。 我想在Linux中以及通过ssh连接或其他方式从Linux到Linux获取内存映像。 如何获得Linux?
18 memory  forensics  dump 

6
现在停止在SSH会话中运行的程序的输出
问题 我执行通过SSH输出很多信息的命令。例如,我愚蠢地在执行一百万次的循环中添加调试信息,或者只是为了执行cat /dev/urandom踢而运行。 终端充斥着信息。 我想尽快终止命令并修复程序。我不在乎它显示什么。现在,事情是我按Ctrl+ CASAP(在上面的示例中,我在运行命令后立即按了它),但是打印我什至不需要的所有信息仍然需要花费时间。 我尝试过的 我尝试用力按下Ctrl+,C以至于终端最终出现问题时,它会产生有趣的结果: OUTPUT HERE^C rr-@burza:~/xor$ ^C rr-@burza:~/xor$ ^C rr-@burza:~/xor$ ^C ^C^C ^C^C^C^C^C^C^C^C^C^C^C ^C^C^C^C^C^C^C^C^C^C ^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C ^C^C^C^C^C^C^C ^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C ^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C^C ^C^C^C^C^C^C^C^C^C^C^C^C^C rr-@burza:~/xor$ ^C rr-@burza:~/xor$ ^C rr-@burza:~/xor$ ^C rr-@burza:~/xor$ ^C rr-@burza:~/xor$ ^C rr-@burza:~/xor$ ^C rr-@burza:~/xor$ ^C rr-@burza:~/xor$ ^C rr-@burza:~/xor$ ^C 我还阅读了有关Ctrl+的信息S,该信息显然用于告诉终端“停止输出,我需要赶上进度”,但显然它什么也没做。 杂项详细信息 我不希望更改我运行的命令,以便即使在任何情况下我都无法挽救自己,即使我不记得自己运行的程序最终可能会那样。 我的SSH客户端CYGWIN_NT-6.1-WOW64 luna 1.7.30(0.272/5/3) 2014-05-23 10:36 …
18 ssh  terminal  cygwin 

2
什么时候编写可移植脚本很重要?
我写的大多数代码都在PHP中。我最近开始学习Shell脚本。我遇到的大多数资源和教程都是针对Bash的。有些警告关于洗礼,有些则没有。我在这里和Stack Overflow上已经读了很多东西。 每当答案使用Bashisms时,不可避免地会有人评论说: 您不应该使用<在此处插入bashism>。它不是便携式的。 即使将问题标记为,也会发生这种情况bash。对我来说,这就像告诉一个PHP程序员,他们不应该使用PHP 5中的新代码,因为它不能与PHP 4一起使用。或者告诉某人,他们不应该为Mac写一些东西,因为它不能被使用。在Windows上。 当我用PHP编写时,我选择了最低要求,并编写了向前兼容的代码。我不担心使其向后兼容。 如果我使用#!/bin/bashshebang,为什么不使用bashisms?我开始得到的印象是有些人就是喜欢bash的 bash化(双关语意)只是为了它的缘故。 人们经常使用bash并且shell可以互换使用-可能是由于bash是许多系统上的默认shell。因此,我可以理解添加注释以警告该代码使用了bashisms,但我不明白使用它们的含义是错误的。 显然,如果我编写的脚本严格仅供个人使用,则可以用我想要的任何语言编写。但我想认为我编写的某些代码可能对其他人有用。 发布前,我尝试过寻找问题的答案。我发现了很多有关如何测试可移植性的信息,但是找不到什么时候进行此操作很重要。 那么,什么时候编写可移植脚本很重要? 例如, 哪种类型的脚本应尽可能地可移植? 没有安装Bash的系统有多普遍? 如果系统已安装Bash,它还会具有GNU版本的find和其他实用程序吗?

1
同步文件的最佳方法-仅复制现有文件,并且仅复制比目标更新的文件
我正在Ubuntu 12.04上本地进行此同步。这些文件通常是小的文本文件(代码)。 我想从source目录复制(保留mtime戳)到,target但是我只想复制中的文件target 已存在并且早于中的文件source。 因此,我只复制中的较新文件source,但它们必须存在于其中target,否则将不会被复制。(source文件将比得多target。) 我实际上将复制source到多个target目录。我提到这一点是为了避免影响解决方案的选择。但是,target如果需要的话,我可以轻松地多次运行命令,每次都指定新命令。

2
如何使用管道组成bash函数?
我用这种方式定义的功能很少: function f { read and process $1 ... echo $result } 我想将它们组合在一起,以便调用看起来像f | g | h。 我应该使用哪种惯用法将用于参数的函数转换为从stdin读取参数的函数?是否可以从流中读取成对的参数元组而无需将其转义(例如,空终止)?

3
从grep输出中排除文本行很长的文件
我经常运行grep命令来查找代码中的内容,但是Web项目的问题是,经常会有压缩的JavaScript和CSS文件创建一行巨大的文本,因此,如果找到匹配项,则整个终端窗口将填充了超过1000行,因此很难找到我要的内容。 那么有没有办法避免文件中的单行文字超过200个字符?
18 grep 

1
如何在FreeBSD上更新软件包和端口的组合
我主要在FreeBSD上使用软件包,因为其中大多数都适合我。但是,有些不适合我的东西,例如vim不包含图形化的软件包gvim。 没问题。我可以使用portmaster editors/vim并选择GTK2选项来安装端口。这很好。 但是,pkg upgrade一段时间后,我看到以下内容: Reinstalling vim-7.4.110_3 (options changed) 是什么赋予了?我没有更改任何选项,也没有新版本(也没有端口)。是否将我安装的端口与没有的远程版本进行比较GTK2? 当然,我可以让它pkg upgrade工作,然后再重新安装端口,但这很愚蠢。建议使用哪种方式来更新软件包和端口的组合?

2
`logger'在Arch Linux中将消息记录到哪里?
该logger命令通过syslog记录一个条目,该条目通常将该行放入诸如之类的文件中/var/log/messages。 如果我在Arch Linux中正确理解了文档,则所有日志记录都是通过systemd完成的,但是我找不到logger使用的条目journalctl。 logger在Arch Linux中给出的消息究竟会发生什么? 日志条目存储在哪里?(快速grep建议/var/log/journal/*/system.journal。) 如何访问此日志?(我需要任何特殊选择journalctl吗?)

2
shell变量的扩展以及glob的影响和拆分
这篇文章实际上包含两个独立的问题,但我认为将它们组合在一起将提供更多的上下文。我已经在变量引号上讨论了这个问题,但我不太了解变量扩展首先是什么意思。所以我的第一个问题是: 在unix / linux中,变量扩展是什么? 我的问题的第二部分涉及以下术语: 球状 分裂 以上是什么意思,它们如何影响变量扩展?原始问题的答案提到以下内容: 将没有引号(在列表上下文中)视为split + glob运算符。 好像echo $ test是echo glob(split(“ $ test”))一样。 我找不到任何直接解决“ 遍历和分裂 ”概念的答案,而是直接将这些术语用于回答其他问题,例如最近的问题。

2
在当前语言环境中检索给定字符类中的字符列表的命令
有什么能检索在给定的人物类中的所有字符(如列表的方式blank,alpha,digit...)在当前的语言环境。 例如, LC_ALL=en_GB.UTF-8 that-command blank 理想情况下,在我的Debian系统上,将显示以下内容: 09 U+0009 HORIZONTAL TAB 20 U+0020 SPACE e1 9a 80 U+1680 OGHAM SPACE MARK e1 a0 8e U+180E MONGOLIAN VOWEL SEPARATOR e2 80 80 U+2000 EN QUAD e2 80 81 U+2001 EM QUAD e2 80 82 U+2002 EN SPACE e2 80 83 U+2003 EM …

8
使用Python解析JSON?
我有一个JSON文件members.json,如下所示。 { "took": 670, "timed_out": false, "_shards": { "total": 8, "successful": 8, "failed": 0 }, "hits": { "total": 74, "max_score": 1, "hits": [ { "_index": "2000_270_0", "_type": "Medical", "_id": "02:17447847049147026174478:174159", "_score": 1, "_source": { "memberId": "0x7b93910446f91928e23e1043dfdf5bcf", "memberFirstName": "Uri", "memberMiddleName": "Prayag", "memberLastName": "Dubofsky" } }, { "_index": "2000_270_0", "_type": "Medical", "_id": …
18 bash  python  json 

5
不能将chmod应用于文件
我的硬盘上有一个文件, cd /media/celebisait/5AC69788C6976355 我的档案叫做myFile.tar.gz。我做了ls -l, -rw------- 2 celebisait celebisait 1387745311 Jun 6 2013 myFile.tar.gz 一切似乎都很好。但是,当我这样做时 $ sudo chmod 755 myFile.tar.gz 我没有任何错误,但是什么也没发生,即当我ls -l再次执行此操作时,得到的输出是相同的, -rw------- 2 celebisait celebisait 1387745311 Jun 6 2013 myFile.tar.gz Chmod不会更改。为什么? PS:我使用Ubuntu 13.04。 编辑: $ cd /media/celebisait/5AC69788C6976355 $ df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda2 89873576 42976028 …
18 ubuntu  chmod 

2
在正在运行的LXC内执行命令
我想在现有的lxc中执行命令,而无需通过常规的Linux初始化。lxc-execute该命令是针对我的猜测,但是在现有的测试lxc上运行此命令时出现以下错误。 sudo lxc-execute -n test -- service apache2 start 我收到以下错误: lxc-execute: Failed to find an lxc-init lxc-execute: invalid sequence number 1. expected 4 lxc-execute: failed to spawn 'test'
18 linux  lxc 

3
如何解释“ lsusb”的输出-这些Linux Foundation根集线器是什么?
我最近在对耳机问题进行故障排除时发现了有关lsusb命令的信息。 我的笔记本电脑运行的是debian,目前没有任何东西插入USB,但是当我运行“ lsusb”命令时,我仍然得到很多输出: root@t500:~# lsusb Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus …
18 debian  usb 

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.