Articles of bash

终端开始给出错误bash:/ usr / bin / lesspipe

我搜索并阅读了所有可能的页面,但我找不到确切的问题。 当我打开终端时,我得到: bash: /usr/bin/lesspipe: /bin/sh: bad interpreter: No such file or directory 然后当我使用apt-get update我遇到了以下错误。 Fetched 39,9 MB in 53s (747 kB/s) Reading package lists. . . Done W: GPG error: http://archive. canonical.com/ubuntu xenial InRelease: Could not execute ‘apt-key’ to verify signature (is gnupg installed?) W: The repository ‘http://archive.canonical.com/ubuntu xenial InRelease’ is not signed. N: Data […]

如何通过bash脚本运行特定命令并添加到启动中

我想在Ubuntu 14.04中执行此命令 sudo ./crclient -u username -i eth0 我将用它登录cyberrom客户端。 因此需要一些帮助来创建一个bash脚本并添加到像Windows启动一样的启动。

逐行比较两个表

我需要逐行比较两个表上的一秒钟列。 表: 1.csv 1a 2 14 4g 2.csv 1a 2 1 4 脚本: #!/bin/bash text1=$(cat “1.csv” | awk ‘{print $2}’) text2=$(cat “2.csv” | awk ‘{print $2}’) if [[ “$text1” == “$text2” ]] then echo “true” else echo “false” fi 但我只得到一个结果 – 假。 为什么我只得到一个结果 – 假? 必须是真的(2 = 2)假(4g!= 4)

如何防止命令从历史记录中删除?

我注意到当我使用箭头键UP和DOWN上升命令时,如果我编辑命令,它会在历史记录中编辑它,我甚至可以删除这样的命令,但是我不想要它要对历史记录中的命令产生这种影响,我不希望它在历史记录中实际删除它们,只允许我编辑我正在键入的内容,但实际上并不是通过它来修改历史记录。 那么我怎样才能使它实际上不会修改历史记录,而只是修改我执行的命令?

find:路径必须在表达式之前:)xargs

mkdir dregsfolder find /home/tony/Desktop/unsorted_files/ -maxdepth 1 -not \( -type d -or -iname “*.jpg” -or -iname “*.gif” -or -iname “*.docx” \)xargs -0 –no-run-if-empty mv /home/tony/Desktop/dregsfolder 当我运行该代码时; 我被告知 find: paths must precede expression: )xargs 我很困惑,因为我认为已经使用/home/tony/Desktop/unsorted_files指定了路径。 我更加困惑,因为在Unix和Linux Stack Exchange上的这个问题中 ,我们有一个示例xargs将文件复制到名为play的目录: find /tmp/ -ctime -1 -name “x*” | xargs -I ‘{}’ mv ‘{}’ ~/play/ 而在这里,似乎是目标目录,即播放; 已经在xargs之后指定了…… 我想要澄清与xargs相关的精确机制及其中相关的细微差别,用于解析目录中不仅仅是一个文件(如上一个问题中所述),而且,它在unix世界中的广泛使用与参数。

我怎样才能写入stderr以便stderred将它变成红色?

作为背景,我之前问过这个问题 。 当我在终端上显示时,我正在使用stderred将stderr文本变成红色。 这在大多数情况下都很好用,更具体地说,对于看似二进制可执行文件而不是bash脚本。 我意识到当从终端调用的command直接引用stderr时, stderred似乎不起作用。 例如,如果我使用重定向,使用stderred我仍然没有红色,如下所示: echo “pomme” 1>&2 重定向与stderred钩子的其他情况有何不同? 如果我在/bin/bash上下文中重定向1>&2 ,如何在bash脚本(Ubuntu 15.10)中进行重定向?

用红色字打印第二个元音

如何在红色或蓝色的单词中打印第二个元音。 假设我执行名为“script1”的脚本,该脚本读取文本文件。 我的脚本应该能够以红色或蓝色打印每个单词中的第二个元音。 如果只有一个元音,则以彩色打印。 如果没有元音,则用彩色字打印第一个字母!

如何在Ubuntu 14.04上添加Red5后台启动?

我按照这里的说明通过tarball手动安装red5 ,因为apt-get不适用于Ubuntu 14.04: Ubuntu Trusty red5-server安装无法启动 即使手动安装依赖项,服务器也总是会失败。 red5服务器现在可以工作,但终端必须打开并挂在那里。 我需要一个启动脚本来在后台运行该过程。 这里的对话: http : //chat.stackexchange.com/rooms/29197/discussion-between-umi-and-pl-rock 我跟着,但它不能正常工作。 结果是: 在init.d/red5我有两行 – start on filesystem & exec /bin/bash /usr/share/red5.sh 。 update rc.d red5 defaults返回: missing LSB information sudo service red5 stop返回: stop: Unknown instance sudo service red5 start返回: red5 stop/waiting

命令在crontab中失败但在终端中有效

我已经检查过有关crontab故障的问题 。 我正在运行此命令来捕获htop命令并以html格式创建它的快照( htop输出到人类可读文件 ): /bin/echo q | /usr/bin/htop | /usr/bin/aha –black –line-fix > /tmp/htop.html 此命令在终端上正常工作,它不依赖于任何环境变量。 当我将此命令添加为cronjob时,它只生成一个空的html文件: stdin 有什么理由不能通过cron捕获输出?

如何使用’set | 正确编写脚本中的grep’以获取DBUS_SESSION_BUS_ADDRESS变量的值?

GNU bash,版本4.3.48(1)-release(x86_64-pc-linux-gnu),Ubuntu 16.04.3 LTS。 我需要获取DBUS_SESSION_BUS_ADDRESS的值并将其保存到文件中。 如果我运行set | grep DBUS_SESSION_BUS_ADDRESS > /home/user/.DBUS_temp Bash中的set | grep DBUS_SESSION_BUS_ADDRESS > /home/user/.DBUS_temp我在set | grep DBUS_SESSION_BUS_ADDRESS > /home/user/.DBUS_temp中有类似于DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-N1wmwpEVBj的.DBUS_temp ,这是正常的 。 但是当我尝试在脚本中运行命令时,会发生以下情况: 如果set | grep DBUS_SESSION_BUS_ADDRESS > /home/user/.DBUS_temp则创建一个空文件 set | grep DBUS_SESSION_BUS_ADDRESS > /home/user/.DBUS_temp 。 BASH_EXECUTION_STRING=’set | grep DBUS_SESSION_BUS_ADDRESS > /home/user/.DBUS_temp’ 如果su -c ‘set | grep DBUS_SESSION_BUS_ADDRESS > /home/user/.DBUS_temp’ user BASH_EXECUTION_STRING=’set | […]