我一直在自学 bash 脚本,但遇到了一个问题。我编写了一个脚本来使用“读取”命令从用户那里获取输入,并使该输入成为稍后在脚本中使用的变量。该脚本有效,但是......
我希望能够使用“对话框”进行设置。我发现
'dialog --inputbox' 会将输出定向到 'stderr',为了将该输入作为变量,您必须将其定向到一个文件,然后检索它。我发现解释这一点的代码是:
#!/bin/bash
dialog --inputbox \
"What is your username?" 0 0 2> /tmp/inputbox.tmp.$$
retval=$?
input=`cat /tmp/inputbox.tmp.$$`
rm -f /tmp/inputbox.tmp.$$
case $retval in
0)
echo "Your username is '$input'";;
1)
echo "Cancel pressed.";;
esac
Run Code Online (Sandbox Code Playgroud)
我看到它使用 2> 将 sdterr 发送到 /tmp/inputbox.tmp.$$,但输出文件看起来像“inputbox.tmp.21661”。当我尝试 cat 文件时,它给了我一个错误。所以我仍然无法从 --inputbox 获取用户输入作为变量。
示例脚本:
echo " What app would you like to remove? "
read dead_app
sudo apt-get remove --purge $dead_app
Run Code Online (Sandbox Code Playgroud)
所以你可以看到它是一个基本的脚本。甚至有可能将变量作为一个词从dialog --inputbox?
我想让 LibreOffice Impress 中的页码使用波斯语。意思是 ??????????而不是 0123456789。
我是一名 KDE 用户,正在考虑迁移到 Unity。由于手动残疾,我使用粘滞键,并且在 KDE 中,我在系统面板中有一个小程序,显示哪些修饰键处于活动状态。我记得 Gnome 也有这个功能,Windows 和 OS X 也有。
如何将键盘修饰符状态小程序广告到 Unity 中的面板?
说明:我已经启用了粘滞键。我在问如何添加一个指示修饰键状态的小程序。该指示器将显示何时按下 Shift 键、何时按下 Alt 键、何时按下 Tux 键以及何时按下 Ctrl 键。该小程序存在于所有主要桌面环境(KDE、Windows、Mac OSX 和 Gnome)中。桌面的可访问性是必要的。
这是键盘修改器状态小程序的图像,位于键盘布局指示器小程序旁边。代表的改性剂,由左到右,Shift,Ctrl,Alt,I-dont-know-this-one,Tux/Win,NumLock,和CapsLock。可以看出 NumLock 键处于活动状态。

我刚刚在我的工作站上安装了 Ubuntu 18.04.5 LTS 以及推荐的 nvidia 驱动程序,我曾经sudo ubuntu-drivers autoinstall这样做过,并ubuntu-drivers devices建议安装nvidia-driver-450-server - distro non-free recommended.
但是,安装推荐的驱动后,我的包系统坏了。当我尝试使用“软件更新程序”更新软件时,我收到以下消息:
Run Code Online (Sandbox Code Playgroud)The package system is broken. Check if you are using third party repositories. If so disable them, since they are a common source of problems. Furthermore run the following command in a Terminal: apt-get install -f Transaction failed: The package system is broken The following packages have unmet dependencies: libnvidia-gl-450: Depends: libnvidia-common-450 but it is not installed Depends: libgcc1 …
我知道以前有人问过听起来像这样的问题,但没有一个“解决方案”对我有用。我正在使用Gnome Classic选项。
gnome-panel在我的 dconfEditor 中找不到任何条目请你帮帮我好吗。
我使用sudo apt-get install ubuntu-gnome-desktop. 我说的是下图中可见的面板:

这些是我安装的扩展列表:

Ubuntu 中的许多日常操作都可以使用dbus. 主要优点是它可以完全按照 GUI 完成,使用一个衬垫,例如更改亮度、复制文件等。
例如,降低亮度的标准终端方法是:
xbacklight +30% #-30%
Run Code Online (Sandbox Code Playgroud)
而 dbus 方法(我为了更好的可读性而断行):
dbus-send --session --print-reply --dest="org.gnome.SettingsDaemon" \
/org/gnome/SettingsDaemon/Power \
org.gnome.SettingsDaemon.Power.Screen.SetPercentage uint32:30
Run Code Online (Sandbox Code Playgroud)复制文件
cp ./a/source ./b/destination
Run Code Online (Sandbox Code Playgroud)
和:
qdbus org.gnome.Nautilus /org/gnome/Nautilus \
org.gnome.Nautilus.FileOperations.CopyFile \
"file:///source/directory" "*" \
"file:///destination/directory" ""
Run Code Online (Sandbox Code Playgroud)在qdbus图形指示器中显示速度和canel 按钮。
所以这dbus很有趣,我真的很想学习 D-Bus 的东西。请通过提供一些电子书、链接等来指导我。
我最近更新到 phpstorm 9.5,它说我应该将 ibus 更新到 1.5.11 或更高版本(此时是当前版本)。
好的。我从源代码下载了 1.5.11 并尝试安装它。我解决了一些依赖关系,但有一次我遇到了一个奇怪的配置错误,即未满足包要求 (dconf >= 0.7.5)。
安装 dconf-tools 和 dconf 包的其他部分后,我仍然得到这个按摩。比我做 sudo apt-cache show dconf-tools 并在输出中发现 libdconf0 (<< 0.7.3-2) 导致问题,因为 libdconf1 是 0.20.0-1,这似乎是更新的。
假设在 14.04 上不再使用 libconfd0,此信息对于编译 ibus 已过时。
我该如何解决这个问题?
编辑1:
检查 dconf 的 ibus/configure 机制:
if test x"$enable_dconf" = x"yes"; then
# check dconf
PKG_CHECK_MODULES(DCONF,
[dconf >= 0.7.5],
)
PKG_CHECK_EXISTS([dconf >= 0.13.4],
[AC_DEFINE(DCONF_0_13_4, TRUE, [dconf is 0.13.4 or later])],
[])
# check …Run Code Online (Sandbox Code Playgroud)我正在尝试在 Ubuntu 14.04 中使用 3.5 插孔麦克风,问题是 Ubuntu 默认没有噪音抑制,所以我得到了非常大的静态噪音。
我安装libwebrtc-audio-processing-0并libwebrtc-audio-processing-dev尝试使用 激活它pactl load-module module-echo-cancel aec_method=WebRTC,但出现错误:
失败:模块初始化失败
我还尝试通过以下方式启用它/etc/pulse/default.pa:
load-module module-echo-cancel source_name=echosource aec_method=webrtc
set-default-source echosource
Run Code Online (Sandbox Code Playgroud)
但它使声音小程序崩溃,无论如何都不起作用。
我怎样才能使这项工作?
关于可能重复的注意事项:
AFAIK,这不是添加 PPA 后如何解决未满足的依赖项的重复项?否则请通过使用那里的任何答案解决我在下面提到的测试问题来证明它。
我在How to fix installation wine on Ubuntu 14.04.3LTS 64 bit之前遇到过这个问题。它是通过手动/人工审查目标包 ( wine)的所有递归依赖项来解决的。
让我们用 1 个麻烦包创建相同的情况,安静地简化。
software-properties-gtk并启用backports存储库。获取最后一个包列表
sudo apt-get update
Run Code Online (Sandbox Code Playgroud)运行apt-get -s install wine确认wine可以安装。
libcgmanager0从 backports安装令人不安的包
$ apt-cache policy libcgmanager0
libcgmanager0:
Installed: 0.24-0ubuntu5
Candidate: 0.24-0ubuntu7.5
Version table:
0.39-2ubuntu2~ubuntu14.04.1 0
100 http://dz.archive.ubuntu.com/ubuntu/ trusty-backports/main amd64 Packages
0.24-0ubuntu7.5 0
500 http://dz.archive.ubuntu.com/ubuntu/ trusty-updates/main amd64 Packages
0.24-0ubuntu7.1 0 …Run Code Online (Sandbox Code Playgroud)