Unix & Linux

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

1
看到Bash变量的扩展进行调试了吗?
是否有任何工具/技巧可用于扩展变量以使bash代码更易于阅读? 例如,它将转换以下内容: DIR=/var/tmp FILE=${DIR}/file SCRIPT_ROOT=/opt/root TOOL=${SCRIPT_ROOT}/tool.sh ${TOOL} ${FILE} 至: DIR=/var/tmp FILE=/var/tmp/file SCRIPT_ROOT=/opt/root TOOL=/opt/root/tool.sh /opt/root/tool.sh /var/tmp/file 我正在将BASH代码转换为Python,并且读取BASH语法非常麻烦。

5
为什么不能在MacOS上将`pwd`传递给`open`?
这是特定于macOS的,但似乎无法在Ask Different社区中使用。 在终端中,我可以pwd复制结果,然后键入open并粘贴结果,文件夹将在Finder中打开,但是 pwd | open 打印的帮助文档open。为什么管道不起作用,但粘贴起作用?
12 osx  pipe 

3
合并两个文件,一次合并一列
我有以下格式的2个大文件(3000列,15000行) file1(制表符分隔): 1/0 0/0 0/0 0/0 1/1 0/0 1/1 0/1 0/0 file2(制表符分隔): 3 5 2 1 7 10 3 4 3 我想将每个文件的第一列中的值与“:”分隔符组合在一起,然后移至第二,第三等列。所需的输出(制表符分隔): 1/0:3 0/0:5 0/0:2 0/0:1 1/1:7 0/0:10 1/1:3 0/1:4 0/0:3 效率并不重要,因此任何语言都可以。如果这已经被问过了,我深表歉意。

7
在Ubuntu 16.04中运行Octave时出错
我只是按照以下答案回答: 如何在Ubuntu 16.04中安装不带GUI的Octave? 在Ubuntu 16.04中安装八度音阶,显然效果很好。 在终端上运行octave-cli显然可行 但是当我运行八度音阶时,单击其图标时出现以下错误: 设置文件/home/user/.config/octave/qt-settings不存在,无法创建。 确保您具有对/home/user/.config/octave的读写权限 八度GUI必须立即关闭。 任何人都可以帮我解决这个问题,以便我可以运行八度吗?
12 octave 

7
如何删除/ *…* /下的所有字符,包括/ *和* /?
我曾经尝试过sed和awk,但是它不能正常工作,因为该字符涉及“ /”,它已经在命令中作为分隔符了。 请让我知道如何实现这一目标。 下面是一个示例Example.We要删除注释的部分,即 /*.....*/ /*This is to print the output data*/ proc print data=sashelp.cars; run; /*Creating dataset*/ data abc; set xyz; run;

1
ksh93如何避免命令替换中的派生
给定 cmd='fun(){ echo "$@"; }; fun $(fun $(fun hi))' 炮弹往往需要制作两个叉子才能实现 strace-f(){ strace -f "$@" 2>&1; }; for sh in dash bash zsh ksh; do printf "$sh\t" ; strace-f $sh -c "$cmd" |grep -e clone -e fork -c; done 除了ksh英勇地使它不分叉一次: dash 2 bash 2 zsh 2 ksh 0 它是如何做到的? 编辑: 插入管道的情况如下: …

2
rpm少了些什么,如何在没有rpm的情况下获得文本
当我执行时less package.rpm,less会向我显示有关程序包的各种元信息。不太精确的操作是-它是否内置了能够提取元信息的代码,还是以第一部分看上去像文本文件的方式构建了rpm? 我认为是前者,因为head在这里不是那么有用。但是要提出一个真正的问题:如果我想grep通过这些元数据少显示给我看,我该如何完成?
12 grep  rpm  less 

1
根无法chmod?
在我的部门中,我们有一台带有CentOS和samba的小型文件服务器。我具有root访问权,能够执行一些基本维护。 今天,我将一些文件夹设为只读,所以我继续进行了chmod -R -w some-folder/,但是对于一些文件,我得到了响应: chmod:./somefile.pdf:新权限是r-xrwxr-x,而不是r-xr-xr-x 添加后,-v我得到的信息不多: './somefile.pdf'的模式保留为0575(r-xrwxr-x) 我尝试以下操作只是为了确保: # touch test-file # chmod -v -R -w . mode of `./somefile.pdf' retained as 0575 (r-xrwxr-x) chmod: ./somefile.pdf: new permissions are r-xrwxr-x, not r-xr-xr-x mode of `./test-file' changed to 0444 (r--r--r--) 我想不出为什么root无法执行chmod的任何充分理由? 一些花絮: 该文件系统不是 只读的(仅某些文件被拒绝修改)。 我以root用户身份运行chmod命令,但没有任何效果。 文件所在的分区是ext4。 更新:这是lsattr文件上包含文件夹的输出: # lsattr somefile.pdf …
12 chmod 

3
如何在不再次调用sed或awk的情况下从字符串中删除点字符?
我有一个hostlist.txt包含以下内容的文件: host1.mydomain.com host2.mydomain.com anotherhost www.mydomain.com login.mydomain.com somehost host3.mydomain.com 我有以下小脚本: #!/usr/local/bin/bash while read host; do dig +search @ns1.mydomain.com $host ALL \ | sed -n '/;; ANSWER SECTION:/{n;p;}'; done <hostlist.txt \ | gawk '{print $1","$NF}' >fqdn-ip.csv 输出到fqdn-ip.csv: host1.mydomain.com.,10.0.0.1 host2.mydomain.com.,10.0.0.2 anotherhost.internal.mydomain.com.,10.0.0.11 www.mydomain.com.,10.0.0.10 login.mydomain.com.,10.0.0.12 somehost.internal.mydomain.com.,10.0.0.13 host3.mydomain.com.,10.0.0.3 我的问题是如何删除.逗号前的内容而不进行调用sed或gawk再次调用?我可以在现有步骤中执行某些步骤,sed还是gawk可以删除点的调用? hostlist.txt 将包含数千个主机,因此我希望我的脚本快速高效。

1
在json.tool上找不到文档
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为Unix&Linux Stack Exchange 的主题。 3年前关闭。 我可以在网上找到分散的文章,这些文章使用json.tool生成漂亮的python,但没有关于用法的清晰文档。我检查了docs.python。但是没有json.tool的正式文档。 我有几个工作流程(由其他人编写),它们使用json.tool来验证json,但是我也看到过一些警告json.tool并不总是产生有效json的帖子。所以我想更多地了解json.tool的工作原理。 任何人都可以在json.tool上推荐包含清晰,全面文档的地方吗?
12 python  json 

3
完全删除我安装的所有软件包吗?
我当时使用一台装有CentOS7的Linux服务器来测试和安装一些工具。现在我不记得我安装了多少个软件包。 我想删除所有这些软件包,以便我的服务器像以前一样是新的。我不想搜索每个软件包并一一删除。有什么方法可以仅通过一个命令将其删除?

4
在特定行号处插入文本
我正在开发一个bash脚本,该脚本将根据行中的数据拆分文本文档的内容。 如果原始文件的内容与 01 line 01 line 02 line 02 line 我如何使用bash插入此文件的第3行 01 line 01 line text to insert 02 line 02 line 我希望使用heredoc或脚本中的类似内容来执行此操作 #!/bin/bash vim -e -s ./file.txt <<- HEREDOC :3 | startinsert | "text to insert\n" :update :quit HEREDOC 上面的方法当然行不通,但是我可以在此bash脚本中实现的任何建议呢?


4
我需要为C库编写手册页吗?
我为Linux和FreeBSD编写了一个小型C库,并将为其编写文档。我试图学习有关创建手册页的更多信息,但是没有找到制作图书馆手册页的最佳实践的说明或描述。特别是,我对放置函数手册页的哪个部分感兴趣?3?也许有好的例子或手册?为库中的每个函数创建手册页是个坏主意吗?
12 linux  freebsd  man 

4
lsof -p PID与lsof | grep PID
我不了解lsof命令的输出。 当我写 lsof -p PID 我得到4行,当我写 lsof | grep PID 我得到数百行。 它不应该返回相同的结果吗? 谢谢你的回复。这是输出。看起来是子流程,还是这个任务是什么意思? lsof -p 29076 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME java 29076 pr cwd unknown /proc/29076/cwd (readlink: Permission denied) java 29076 pr rtd unknown /proc/29076/root (readlink: Permission denied) java 29076 pr txt unknown /proc/29076/exe (readlink: …
12 process  lsof 

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.