尝试仅对标题中包含关键字 'mono' 的文件在文件夹中使用 dpkg
Trying to use dpkg within a folder only on files with the keyword 'mono' in the title
我目前正在尝试使用 dpkg 安装单声道,并使用 apt-get 安装同一文件夹中的所有其他文件,我知道我需要使用这种形式:
sudo grep 'mono' | dpkg -R --install >/dev/null
然而,未知数太多,我无法完成它并填补可能存在的任何空白,将不胜感激任何帮助!
试试这个:
ls | grep "mono" | sudo xargs dpkg -R --install >/dev/null
ls 只会给出当前目录中的文件。您也可以使用 ls -d *mono*
代替 ls 和 grep,但我认为 ls 和 grep 更容易理解
grep 与您之前的一样,但现在有来自 ls 的输入到 grep on。您可以尝试 ls | grep "mono"
看看它选择了哪些文件。
然后将 sudo 移动到脚本的 dpkg 部分,使 dpkg 运行 成为 root。你的方式 grep 运行s 作为 root 和 dpkg 作为你的用户
xargs 将接受您的任何输入,并将其放在下一个命令之后。它将考虑命令行长度限制并在命令行变得太大时执行多个 dpkg 命令。请注意,如果您的文件名称中包含 space,xargs 会将 space 视为新文件的开头,您将遇到问题。有解决方案,但实际上,最简单的解决方案是不包含 spaces.
的文件
在这个例子中,假设有 2 个文件来自 grep“mono1.deb 和“mono2.deb”,执行的命令将是 dpkg -R --install mono1.deb mono2.deb
。如果出于某种原因你只想每个 dpkg 执行一个 deb 你可以将它更改为 ...xargs -n1 dpkg...
它将 运行 dpkg -R --install mono1.deb
并且 dpkg -R --install mono2.deb
>/dev/null
确保您不会得到任何输出。请注意,您仍然会遇到错误!
我目前正在尝试使用 dpkg 安装单声道,并使用 apt-get 安装同一文件夹中的所有其他文件,我知道我需要使用这种形式:
sudo grep 'mono' | dpkg -R --install >/dev/null
然而,未知数太多,我无法完成它并填补可能存在的任何空白,将不胜感激任何帮助!
试试这个:
ls | grep "mono" | sudo xargs dpkg -R --install >/dev/null
ls 只会给出当前目录中的文件。您也可以使用 ls -d *mono*
代替 ls 和 grep,但我认为 ls 和 grep 更容易理解
grep 与您之前的一样,但现在有来自 ls 的输入到 grep on。您可以尝试 ls | grep "mono"
看看它选择了哪些文件。
然后将 sudo 移动到脚本的 dpkg 部分,使 dpkg 运行 成为 root。你的方式 grep 运行s 作为 root 和 dpkg 作为你的用户
xargs 将接受您的任何输入,并将其放在下一个命令之后。它将考虑命令行长度限制并在命令行变得太大时执行多个 dpkg 命令。请注意,如果您的文件名称中包含 space,xargs 会将 space 视为新文件的开头,您将遇到问题。有解决方案,但实际上,最简单的解决方案是不包含 spaces.
的文件在这个例子中,假设有 2 个文件来自 grep“mono1.deb 和“mono2.deb”,执行的命令将是 dpkg -R --install mono1.deb mono2.deb
。如果出于某种原因你只想每个 dpkg 执行一个 deb 你可以将它更改为 ...xargs -n1 dpkg...
它将 运行 dpkg -R --install mono1.deb
并且 dpkg -R --install mono2.deb
>/dev/null
确保您不会得到任何输出。请注意,您仍然会遇到错误!