如何制作用 Python 编写的 Nautilus 脚本在终端中运行

如何制作用 Python 编写的 Nautilus 脚本在终端中运行

我用 python 语言编写了一个使用subprocess.call()方法和print方法的代码,我正在将此代码用作 nautilus 脚本,并且运行良好。但是现在无法知道脚本是否正在运行,只有在脚本完成后我才能看到效果。

我希望这个脚本在终端中运行,这样我就可以知道脚本正在运行,并且print代码中有一个方法,当脚本失败时需要打印文本,但它不会显示出来。

如果除了终端之外还有其他方法,请告诉我。

答案1

这里是 bash 中的一小段代码,您可以轻松地用 python 重写,它会通知用户正在尝试寻找一种可能的方法:

#!/usr/bin/env bash

have_command() {
  type -p "$1" >/dev/null
}

try() {
  have_command "$1" && "$@"
}

in_terminal() {
  [ -t 0 ]
}

notify_user() {
  local msg="${2:-Error}: $1"
  echo "$msg" >&2
  in_terminal && return
  try notify-send "$msg" && return
  try yad --info --text="$msg" && return
  try zenity --info --text="$msg" && return
  try xmessage -buttons Ok:0 -nearmouse "$msg" -timeout 10 && return
  return
}

安装通知发送,你会收到好消息

相关内容