Pio*_*ski 8 command-line bash alias snap
如何在 Ubuntu 16.04 中创建系统范围的别名来捕捉包?
我想快速安装 Blender。我发现,有可以安装的Blender-tpaw包。不幸的是,安装它后,它可以在终端中使用 name blender-tpaw,而不是blender.
所以首先我尝试运行命令sudo snap alias blender-tpaw blender,根据:https : //insights.ubuntu.com/2017/01/28/ubuntu-core-how-to-enable-aliases-for-your-snaps-commands / . 但这就是我所拥有的:
error: cannot perform the following tasks:
- Enable aliases for snap "blender-tpaw" (cannot enable alias "blender" for "blender-tpaw", no such alias)
Run Code Online (Sandbox Code Playgroud)
然后我尝试建立符号链接,sudo ln -s /snap/bin/blender-tpaw /usr/local/bin/blender但在这种情况下发生了非常奇怪的事情:现在当我输入blender终端时,我得到了snap命令的输出......
我也试过在 /etc/profile.d/alias.sh
alias blender='blender-tpaw'
Run Code Online (Sandbox Code Playgroud)
但这仅适用于我的 Ubuntu 16.04 服务器,但不适用于 Ubuntu 16.04 桌面。
我希望这个别名对于所有用户都是系统范围的,而无需.bashrc分别为每个用户手动更改。我希望以同样的方式在 Ubuntu Server 和 Ubuntu Desktop 上工作。
去年尝试注册别名时遇到的任何问题现在似乎都已解决。相同的序列适用于 16.04,以及即将发布的 18.04。版本使用在输出中。
$ sudo snap install blender-tpaw
[sudo] password for dpb:
blender-tpaw 2.78c-tpaw0 from 'tpaw' installed
$ sudo snap alias blender-tpaw blender
Added:
- blender-tpaw as blender
$ sudo snap aliases
Command Alias Notes
aws-cli.aws aws -
blender-tpaw blender manual
conjure-up.conjure-down conjure-down -
lxd.lxc lxc -
$ snap version
snap 2.32.3.2+18.04
snapd 2.32.3.2+18.04
series 16
ubuntu 18.04
kernel 4.15.0-15-generic
Run Code Online (Sandbox Code Playgroud)
snap要使用 bash 内置函数在外部设置别名alias,您需要显式调用snap,因此在您的情况下,命令是:
alias blender='snap run blender-tpaw'
Run Code Online (Sandbox Code Playgroud)
man bash说:
当启动非登录 shell 的交互式 shell 时,bash 将从 /etc/bash.bashrc 和 ~/.bashrc 读取并执行命令(如果这些文件存在)。
因此,要使别名在系统范围内可用,只需将其添加到/etc/bash.bashrc文件中即可:
echo "alias blender='snap run blender-tpaw'" >> /etc/bash.bashrc
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2398 次 |
| 最近记录: |