以下终端命令ubuntu.css
将从文件结构的任何位置打开文本文件:
$ gedit admin:///usr/share/gnome-shell/theme/ubuntu.css
但是,如果我已经在目录中,并且我想用/usr/share/gnome-shell/theme
打开文件,我应该如何提交上述命令而不必再次输入完整路径?ubuntu.css
gedit
编辑: 我正在添加链接在这里我刚刚发现它对上述命令进行了简短介绍。但它并没有解决我在问题中发现的问题。
答案1
不幸的是,不可以,无法使用此admin://
URI 传递相对路径。这个答案可能令人失望,但这就是它目前(Ubuntu 18.04、Ubuntu 19.10)的工作方式。
使用简短的包装脚本
但是,您可以使用包装器脚本非常方便地解决该问题。使用脚本sedit
,您只需键入命令和文件名(如)即可以管理员权限正确编辑文件sedit ubuntu.css
。
sedit
):
```bash
#!/bin/bash
gedit admin://$(readlink -f "$1")
```
如果您将其放在路径中的文件夹中,该命令sedit ubuntu.css
将使用管理 URI 打开该文件。提供完整路径或任何有效路径也可以。
其他选择
不需要输入路径名的其他更标准的选项是:
Tab输入 URI 的三个斜杠后,即可使用扩展。
您可以将文件从 Files(nautilus)拖到终端中。因此,您可以在终端中输入“gedit admin://”,在 Files 中找到该文件,然后将文件从 Files 拖到终端中。这可以更轻松地在终端中输入 URI。
$(pwd)filename
您可以避免使用或输入路径$(readlink -f filename)
。gedit admin://$(pwd)/ubuntu.css
或者
gedit admin://$(readlink -f ubuntu.css)`
您可以安装 nautilus python 扩展
nautilus-admin
。使用命令sudo apt install nautilus-admin
或使用 Synaptic 包管理器安装它(不幸的是,您无法使用软件找到它)。这个小型 python 扩展集成在右键菜单中,并将选定的文件转换为“admin://”URI,以便使用 root 权限进行编辑。
答案2
使用pwd
当前目录的命令
该pwd
命令返回当前目录,以便您可以将其嵌入到命令行中:
gedit admin://$(pwd)/rootfilename
选择其他方法
正如这个问题以 root 身份使用 gedit 的最佳做法是什么?指出:
我的研究给我带来了这些建议,它们是等效的还是应该被拒绝:
pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY gedit
gedit admin:///path/to/document
sudo -i gedit
sudo -H gedit
您正在使用选项 2,但我更喜欢选项 4,sudo -H gedit
因为它允许在编辑根拥有的文件时使用相对路径。
直接从 Nautilus 编辑
如果你正在使用 Nautilus,请考虑扩展以管理员身份编辑这极大地改善了您的工作流程:
使用您的用户个人资料gedit
使用 root 权限的问题gedit
在于,您会丢失主题颜色、字体大小、制表符设置、换行设置和插件。我写了一个名为sgedit
(sudo gedit)解决了该问题。
下面的动画中,gedit 插件在右侧窗格中显示文档的缩略图概览。用鼠标抓住滑块迷你窗口Left Click并将其向下拖动,即可快速找到文档中的部分。
以 身份运行时,可以使用主题、字体大小、换行、制表位设置、将制表符转换为空格等其他用户设置以及所有常规用户配置文件插件sudo
。