Unix & Linux

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

1
如何将许多压缩文件合并到一个存档中?
我有几百个.tar.xz几乎相同的文件(它们是每天的数据库转储,并且数据库更改缓慢)。 我相信,由于未压缩文件的相似性,它们将非常好地进行压缩,小规模测试表明,压缩任意数量的这些未压缩文件会创建一个仅比其中一个大的档案。 我的问题是所有未压缩的文件都将是几TB(压缩比约为25:1),而且我没有那么多的磁盘空间可以用作工作区。 有没有一种方法可以一次处理单个压缩文件,将它们添加到单个存档中,并保留将它们压缩在一起的好处?
10 tar  compression 

1
使“大多数”传呼机正确处理标准输入的颜色
如何使most传呼机在从标准输入接收的文本中正确显示颜色? 注意:我不确定这是否是中的错误most。 我less和和more,仅与most,不会遇到相同的问题,否则,它可以很好地用作的寻呼机man。 我不会发布图片,而是邀请其他人尝试此图片(仅在您已most安装的情况下): $ command apropos zip | command grep --color=always zip | command less $ command apropos zip | command grep --color=always zip | command more $ command apropos zip | command grep --color=always zip | command most less并more正确显示颜色,同时most显示带有^[[K包裹所有彩色文本区域的“垃圾” 颜色。 令人惊讶的是,这可以: $ (export PAGER=most; command man zip) 我是否错过了某些内容(手册页most没有帮助),滥用了命令,或者这是我应报告为错误的东西? …
10 colors  most 

1
使用Ctrl + C时Vim延迟,但仅在SQL文件中
我正在使用JavaScript和SQL源文件进行副项目。当我编辑JavaScript时,Vim表现正常。但是,当我编辑SQL文件时,从按下CtrlC到Vim退出插入模式之间大约有一秒钟的延迟。当我使用Escape键或将ShiftEnter其映射~/.vimrc为测试键时,它没有延迟。 我以为可能与语法突出显示有关,但是当我:syntax off尝试对其进行修复时,延迟仍然出现。我也试过了:setf text,也没有用。我只安装了几个插件(CtrlP,NerdTree和Jade,Less和CoffeeScript的荧光笔),所以我认为这不是干扰。 有人知道会发生什么吗?
10 vim  gvim 

6
ssh和运行命令的脚本不起作用
下面是脚本。 我想登录几台服务器并检查内核版本。 #!/bin/bash #input server names line by line in server.txt cat server.txt | while read line do sshpass -p password ssh root@$line << EOF hostname uname -r EOF done 我希望输出像.. server1_hostname kernel_version server2_hostname kernel_version 等等.. 我在server.txt中运行了约80个服务器的脚本 我得到的输出就像..... Pseudo-terminal will not be allocated because stdin is not a terminal. Pseudo-terminal …
10 bash  shell-script  ssh 


3
从管道检查md5sum
我很困惑应该如何md5sum --check工作: $ man md5sum -c, --check read MD5 sums from the FILEs and check them 我有一个文件,可以将其传送到md5sum: $ cat file | md5sum 44693b9ef883e231cd9f90f737acd58f - 当我明天要检查文件的完整性时,如何检查md5sum是否仍然是44693b9ef883e231cd9f90f737acd58f? 注意 cat file可能是流。因此,我想像我的示例一样使用管道,而不是md5sum file。
10 pipe  hashsum 

1
为什么会有这么多的回送地址?
据我了解,所有形式为127.xyz的IP地址都是环回地址。现在这对我来说似乎是浪费。确实,已经有多个地址似乎是浪费。 有这么多环回地址有什么用吗?
10 networking 

4
为什么即使$ 1不是1,也总是选择'if [$ 1 =“ 1”]'分支?
我有一个名为“ teleport.sh”的shell脚本,如下所示: if [ $1="1" ]; then shift mv "$@" ~/lab/Sun elif [ $1="2" ]; then shift mv "$@" ~/lab/Moon elif [ $1="3" ]; then shift mv "$@" ~/lab/Earth fi 当我执行时: sh teleport.sh 2 testfile 这testfile被移到了~/lab/Sun目录,这让我很困惑,因为我没有将1或1传递给该脚本。 怎么了
10 bash  shell  test 

1
Unix编程到底是什么意思?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为Unix&Linux Stack Exchange 的主题。 5年前关闭。 我以为我了解Unix编程一词的含义,但是现在,在内核/ C编程上下文中阅读它之后,我觉得需要澄清该术语的含义。 我不清楚这是否意味着: Shell编程 Unix编程工具, Unix命令行工具的特定编程方式/模式(例如,与“ Unix shell编程”的管道方式一致),或者 其他的东西。

2
通知发送在SSH下不起作用
也许这是在其他地方回答的,但我没有看到。 我正在运行Ubuntu 14.04。例如,当我通过SSH进入计算机时: ssh <user>@<machineip> notify-send "Hello" 我登录到计算机的监视器上没有任何显示。如果我前缀notify-send与DISPLAY=:0.0或DISPLAY=:0没有不同情况。我只是从未在当前会话中看到任何通知。 有一些技巧/开关来使它起作用吗? 如果不清楚,请允许我重申:从计算机A,我通过SSH进入计算机B。在SSH会话中,我希望执行notify-send以在计算机B上运行。我希望会出现咆哮类型的通知。在计算机B的显示器上。
10 ssh  libnotify 

4
如何在终端中绘制单个像素?
直到现在,我还使用字符在终端中绘制图像,形状等。 可以画一个像素吗? 比方说: foo 1 1 red 这将在坐标处绘制一个红色像素(1, 1)。 是否有现有的应用程序可以完成这项工作? 当前正在运行Ubuntu 14.04。
10 terminal  images 

5
删除文件名中的空格,连字符和下划线?
从目录中的所有文件或选定文件中删除空格,连字符和下划线的好命令是什么? 我将以下命令与Thunar自定义操作一起使用,以对文件名进行压缩: for file in %N; do mv "$file" "$(echo "$file" | tr -s ' ' | tr ' A-Z' '-a-z' | tr -s '-' | tr -c '[:alnum:][:cntrl:].' '-')"; done 但是该命令仅用破折号/连字符替换空格,并用小写的带帽字符。 我在终端中使用以下命令从文件夹中成千上万个文件名中删除空格,并且运行速度非常快: rename "s/ //g" * 同样,它仅删除空格,而不删除连字符/破折号和下划线。 理想情况下,我不需要文件名中的空格,连字符/短划线和下划线。如果该命令可以与Thunar自定义动作一起使用在选定的文件上,那就太好了。

5
为bash脚本创建别名
因此,我尝试进行实验并创建了一个aliasin .bashrc。但是,当我测试命令时,我得到: [rkahil@netmon3 ~]$ menu -bash: menu: command not found 这是.bashrc文件中的内容: # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi # User specific aliases and functions alias menu='./menuScript.sh' alias vi='vim' 有趣的是,当我创建别名时vi,它起作用了。但是菜单没有。我在UnixStackExchange上查找了以前的帖子,并尝试关注其他帖子,但无济于事。其他人有什么建议吗?
10 bash  alias 

3
除非按下shift键,否则如何隐藏grub引导菜单?
我已经阅读过论坛,但是看来我的grub启动菜单没有遵循配置文件的形式。 我希望菜单不出现,除非Shift按下。 我的grub菜单在每次启动时都会出现,并且一直停留在该菜单中,直到您选择菜单项为止。 我目前/etc/default/grub是: GRUB_DEFAULT=0 GRUB_HIDDEN_TIMEOUT=3 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=0 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomdmonddf nomdmonisw" GRUB_CMDLINE_LINUX="" GRUB_FORCE_HIDDEN_MENU="true" export GRUB_FORCE_HIDDEN_MENU (我尝试true用既有引号又没有引号的,这没什么区别) 我也做了update-grub和update-grub2。 谁能告诉我为什么,当我的系统启动时,它只位于Grub菜单上吗?这是一个无头系统,效果不好,因为我必须添加键盘才能重新启动。 这不是双引导系统。
10 grub2 

2
如何对文件进行就地修改?
对文件的“原位”修改(例如,通过sed -i或perl -i表示)是什么? 我的问题是有关此就地修改是如何完成的。复制的文件是否在副本中完成修改,然后替换原始文件?还是以某种方式修改了原始文件?
10 files  sed  perl 

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.