标签: scripts

与弹出命令相反?

我有大量的 CD 需要映像,我只是很好奇。我可以用eject 命令弹出。什么命令将磁盘托盘插入 CD 驱动器?

是的,它是可以将托盘拉回的类型。我搜索了弹出手册页,并猜测了命令,但我无法弄清楚。

command-line bash scripts eject

15
推荐指数
1
解决办法
3221
查看次数

如何执行路径中的所有脚本?

假设我有一个接收路径作为参数的脚本。我如何执行位于该路径中的所有脚本?

bash scripts

15
推荐指数
2
解决办法
1万
查看次数

Tee 没有从管道中获得全部输出

我有一个脚本执行命令,如:

export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH;./some_app -i $INDEX | tee $LOG
echo "Number of errors: $(grep "ERROR" $LOG | wc -l)"
Run Code Online (Sandbox Code Playgroud)

问题可能出在到tee. 它似乎没有得到整个输出。当应用程序退出时,输出的最后几行(通常是那些包含致命错误的)丢失了。当我在没有管道的情况下运行应用程序时,tee我将它们放入输出中。

如何强制脚本等待 tee 完成所有输出的处理?

command-line bash scripts pipe tee

15
推荐指数
2
解决办法
2万
查看次数

如何将命令发送到特定的终端窗口?


我想编写一个脚本,用于在不同的终端中同时打开多个程序(服务器)——不管是哪一个——并将不同的命令分配给不同的终端,命令“登陆”在正确的终端内。这可能吗?
也许,像这样:

  1. 打开终端1
  2. 打开终端2 //与1同时。
  3. command1 //在终端1中执行而不打开新的终端窗口
  4. command2 //在终端2中执行而不打开新的终端窗口
  5. ...

我可以以某种方式标记终端窗口,以便在正确的终端内执行命令吗?

我还想在他们的程序运行时观察所有终端 - 我的程序有一个参数来将跟踪/调试打印到终端。所以我想看看他们之间交换了什么消息。

注意:我不太关心交换数据的安全性,因为这个脚本应该作为一个“模拟”。我已将每个服务器配置为从本地主机上的分配端口运行。

command-line bash scripts gnome-terminal

15
推荐指数
1
解决办法
1万
查看次数

以简单的终端方式添加和删除更新频道

我知道 Ubuntu 中有一个 GUISoftware & Updates可以启用更新通道

  • 更新
  • 建议的
  • 向后移植
  • 安全

如此屏幕截图所示:

在此处输入图片说明

我正在寻找一种简单的方法来使用命令从终端内执行此操作,例如

sudo apt-add-update enable updates
sudo apt-add-update enable proposed
sudo apt-add-update enable backports
sudo apt-add-update enable security

sudo apt-add-update disable updates
sudo apt-add-update disable proposed
sudo apt-add-update disable backports
sudo apt-add-update disable security
Run Code Online (Sandbox Code Playgroud)

还有一件额外的事情

sudo apt-add-update enable default

sudo apt-add-update disable default
Run Code Online (Sandbox Code Playgroud)

一些示例以更好地理解

  1. 一个空的 sources.list

  2. 一个已启用的存储库 ( main)

command-line apt scripts development

15
推荐指数
5
解决办法
3768
查看次数

如何在 KDE 5 的 Dolphin 的上下文菜单中添加自定义项目?

我在谷歌上搜索过,但似乎找不到任何一致的教程或文档来描述如何做到这一点(就我而言,在 Kubuntu 15.10 上)。我想将自定义脚本添加到 Dolphin 的上下文菜单中(nautilus-scripts鹦鹉螺的 la )。出于某种原因,当我按照我找到的任何说明进行操作时,我只能在右键单击相关.desktop文件时显示上下文菜单。 我该如何解决这个问题?

kde customization scripts dolphin kubuntu

15
推荐指数
2
解决办法
2万
查看次数

是否可以将 Ubuntu 设置为在脚本完成之前不关闭?

我使用脚本对 btrfs 分区从一个磁盘到另一个磁盘进行增量备份。

该脚本由 cron.weekly 在一天的随机时间启动。

如果我在脚本运行时关闭系统,我会遇到删除旧备份而未创建新备份的麻烦。

有没有办法设置系统等待脚本完成?

我正在将 Ubuntu 16.04 与 systemd 一起使用。

shutdown backup scripts

15
推荐指数
1
解决办法
1688
查看次数

为什么 bash 算术中的除法将大多数百分比计算为 0?

尝试对脚本进行 bash 算术运算,但$e直到最后才更新。输出不言自明。

max=5
for e in $(seq 1 1 $max); do 
    percent=$(( $e/$max*100 ))
    echo "echo $e / $max : = $percent"
done
Run Code Online (Sandbox Code Playgroud)

Tl;DR:以百分比形式显示 1..5。

输出 :

echo 1 / 5 : = 0
echo 2 / 5 : = 0
echo 3 / 5 : = 0
echo 4 / 5 : = 0
echo 5 / 5 : = 100
Run Code Online (Sandbox Code Playgroud)

为什么是这样?

command-line bash scripts

15
推荐指数
4
解决办法
2112
查看次数

如何修复警告:命令替换:输入中忽略空字节?

我有一个运行需要使用通知发送的脚本,但以 root 身份运行。我发现唯一有效的是这个脚本。问题是在这条线上:

DBUS_SESSION=`grep -z DBUS_SESSION_BUS_ADDRESS /proc/$DBUS_PID/environ | sed -e s/DBUS_SESSION_BUS_ADDRESS=//`
Run Code Online (Sandbox Code Playgroud)

我不断收到错误

warning: command substitution: ignored null byte in input
Run Code Online (Sandbox Code Playgroud)

如何修复或抑制错误消息?
顺便说一句,以下内容不会压制它:

2> /dev/null
> /dev/null
>> /dev/null
> /dev/null 2>&1
2>&1
Run Code Online (Sandbox Code Playgroud)

command-line bash scripts

15
推荐指数
1
解决办法
2万
查看次数

Bash 等待 ping 成功

我正在编写重新启动各种服务器的脚本。重新启动后,我想“等待”直到所有服务器重新联机。(为了简单起见,我在网上为我定义了=可ping通)

所以对于我做的每台服务器

ServerXY_W=1
echo -n "waiting for ServerXY ..."
while (($ServerXY_W == 1))
do
   if ping -c 1 -w 0.2 192.168.123.123 &> /dev/null
   then
      echo "ServerXY is back online!"
      ServerXY_W=0
   else
      echo -n "."
   fi
done
Run Code Online (Sandbox Code Playgroud)

我期望(和喜欢)将是一个输出,例如

waiting for ServerXY .................
ServerXY is back online!
Run Code Online (Sandbox Code Playgroud)

点.... 会一一出现的地方。

但实际发生的是首先只有

waiting for ServerXY ...
Run Code Online (Sandbox Code Playgroud)

有一段时间,当服务器回来时,我得到最后一个点和最后一行

waiting for ServerXY ....
ServerXY is back online!
Run Code Online (Sandbox Code Playgroud)

为什么while循环只执行两次,一次ping失败,一次ping成功?我必须更改什么才能在 while 循环中添加更多点?

我也用不存在的 IP 进行了测试。但它卡住了

waiting for NonExistentServer...
Run Code Online (Sandbox Code Playgroud)

当然永远不会终止。但同样的问题为什么不........添加?

bash scripts ping

15
推荐指数
1
解决办法
3万
查看次数