标签: paths

按照 github 上的说明在 Ubuntu 21.10 上安装 youtube-dl 后,许多应用程序(包括默认文本编辑器)都崩溃了

这里是一个新用户,正在运行 ubuntu 版本 21.10 impish。

我正在按照 github 页面上的说明安装 youtube-dl ( https://github.com/ytdl-org/youtube-dl#installation ):

$ sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl
$ sudo chmod a+rx /usr/local/bin/youtube-dl
Run Code Online (Sandbox Code Playgroud)

命令下载 python 脚本后,多个应用程序完全停止运行,就好像它们已被 youtube-dl 取代一样 [更新 3:应用程序本身没有被替换,只是它们的链接和快捷方式]。受影响的一些软件是 Ubuntu 的默认应用程序,例如默认文本编辑器 (gedit) 和 gnome-calculator,而其他软件则是手动安装的,例如 qbittorrent 和 steam。

有些东西,如 Firefox、Nano 和 lutris 仍然可以工作。

例如,尝试从终端运行文本编辑器会产生以下输出:

$ gedit

Usage: gedit [OPTIONS] URL [URL...]

gedit: error: You must provide at least one URL.
Type youtube-dl --help to see a list of all options.
Run Code Online (Sandbox Code Playgroud)

所有受影响的应用程序都会出现相同的错误:

$ gnome-calculator

Usage: gnome-calculator [OPTIONS] URL [URL...]

gnome-calculator: …
Run Code Online (Sandbox Code Playgroud)

paths chmod symbolic-link curl youtube-dl

7
推荐指数
1
解决办法
1540
查看次数

快速路径跳跃

我只是在听讲座,在那里我注意到讲师使用命令(可能是别名)跳转到特定文件夹。

例子:

~/code$ j sciproj
~/projects/sciproj2011/$
Run Code Online (Sandbox Code Playgroud)

这看起来很光滑,所以我开始想:

这是标准实用程序吗?如果是,名称是什么?

关于它是如何工作的,我有两种理论:

  1. 它可以以示例的样式直接从命令行创建、删除和跳转到别名,而无需在配置文件或脚本或其他内容中手动设置别名。

  2. 它在主目录中搜索与名称匹配的文件夹并跳转到该文件夹​​。

然而,第二个选项似乎有点慢,所以第一个将是首选。

command-line paths software-recommendation

6
推荐指数
1
解决办法
714
查看次数

我应该在哪里存储第 3 方 jar(Java 存档)文件?

保存我想在项目中使用的库的 jar 文件的最佳位置是什么,这些文件不在任何存储库中,我应该如何设置权限?

我应该将它们放在 /usr/share/java 中,还是将它们存储在我的主文件夹中的某个位置更好?

什么是最有用的访问权限?遵循 /usr/share/java 中的约定,将包名与特定版本的 jar 进行符号链接,并遵循那里使用的权限是否有意义?

permissions downloads java paths

6
推荐指数
1
解决办法
6565
查看次数

如何打包包含需要在 $PATH 中的二进制文件的应用程序?

我正在打包一个应用程序,其中包含通常会进入的二进制文件/usr/bin和一个可以进入的共享库/usr/lib

但是,向软件中心提交应用程序的包指南建议二进制文件应该进入/opt.

将这些文件放入/opt并确保它们在$PATH.


为了澄清起见,我所指的页面在这里:http : //developer.ubuntu.com/publish/my-apps-packages/,它指出:

“能够安装到/opt/....”

packaging paths binary application-development application-submission

6
推荐指数
1
解决办法
183
查看次数

ifconfig : 命令“ifconfig”在“/sbin/ifconfig”中可用

我的问题与另一个悬而未决的问题有关。我的 echo $PATH 给了我一个输出,就像

/home/sahil/.rvm/gems/ruby-1.9.3-p125/bin:/home/sahil/.rvm/gems/ruby-1.9.3-p125@global/bin:/home/sahil/.rvm/rubies/ruby-1.9.3-p125/bin:/home/sahil/.rvm/bin:/usr/local/bin:/usr/bin:/bin:/usr/games:/home/sahil/.rvm/bin{}:/home/android-sdks/{}:/home/android-sdks/platform-tools/{}:/home/android-sdks/tools/{}:/home/sahil/android-sdks/tools{}:/home/sahil/android-sdks/tools:/home/sahil/android-sdks/platform-tools/
Run Code Online (Sandbox Code Playgroud)

但是跑步

ifconfig 
Run Code Online (Sandbox Code Playgroud)

给我一个输出

Command 'ifconfig' is available in '/sbin/ifconfig'
The command could not be located because '/sbin' is not included in the PATH environment variable.
This is most likely caused by the lack of administrative privileges associated with your user account.
ifconfig: command not found
Run Code Online (Sandbox Code Playgroud)

在运行其他问题中给出的命令后

export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
Run Code Online (Sandbox Code Playgroud)

它运行ifconfig但阻止 ruby​​ rails 或 rvm 的其他命令。

寻求帮助如何解决这个问题。还有为什么会这样?

command-line ifconfig paths

6
推荐指数
2
解决办法
7万
查看次数

Blender 在 Ubuntu 上安装在哪里?

我正在尝试将一些导出脚本放入 Blender,但我根本找不到安装路径!

我正在使用最新版本的 Ubuntu 和 Blender,我已经安装了apt-get install.

installation apt blender paths

6
推荐指数
1
解决办法
1万
查看次数

/etc/environment 中带有 $ 语法的“指针”

使用 $FOO 语法在 /etc/environment 中有“指针”是否有效?现在我的 /etc/environment 看起来像这样:

JAVA_HOME=/usr/lib/jvm/java-6-openjdk
MAVEN_HOME=/usr/bin/apache-maven/apache-maven-3.0.4
M2_HOME=$MAVEN_HOME
M2=$MAVEN_HOME/bin
PATH=/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:$JAVA_HOME/bin:$MAVEN_HOME/bin
Run Code Online (Sandbox Code Playgroud)

我没有得到我期望的结果:

~$ echo $JAVA_HOME
/usr/lib/jvm/java-6-openjdk
~$ echo $MAVEN_HOME
/usr/bin/apache-maven/apache-maven-3.0.4
~$ echo $PATH
/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin/bin:/usr/games:$JAVA_HOME/bin:$MAVEN_HOME/bin
Run Code Online (Sandbox Code Playgroud)

paths environment-variables etc

6
推荐指数
1
解决办法
8398
查看次数

打印目录及其子目录中存在的所有文件的“完整”相对路径列表

我需要打印目录及其子目录中存在的所有文件的“完整”相对路径列表。我曾经用 du 和 grep 这样做:

du -a <path_to_directory> | grep -Po '[0-9]+\t\/\K.*'
Run Code Online (Sandbox Code Playgroud)

但是如果路径太长,du 会用点替换部分路径。

哪个是好的选择?

解析 ls 不是一个选项

command-line files paths directory

6
推荐指数
1
解决办法
7422
查看次数

正确设置 LD_LIBRARY_PATH

我正在将 Docker 与 Ubuntu 16.04 的图像一起使用。我正在使用这个 docker 来运行:

  • 借助 boost.python 在 python 中导入 C++ 类
  • 借助 Matlab Runtime (MCR) 在 python 中导入 matlab 的 python 包。

在 docker 中安装 MCR 之前,我已经使用以下命令安装了 boost:

$ sudo apt-get install -y libboost-all-dev
Run Code Online (Sandbox Code Playgroud)

我能够包装 C++ 类并在 python 中调用它们。然后我安装了 MCR,其中一项要求是设置LD_LIBRARY_PATH为 Matlab 的库。

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/MATLAB/MATLAB_Runtime/v94/runtime/glnxa64:/usr/local/MATLAB/MATLAB_Runtime/v94/bin/glnxa64:/usr/local/MATLAB/MATLAB_Runtime/v94/sys/os/glnxa64:/usr/local/MATLAB/MATLAB_Runtime/v94/extern/bin/glnxa64
Run Code Online (Sandbox Code Playgroud)

它起作用了,我能够在 python 中运行 matlab 的 python 包,但是由于LD_LIBRARY_PATH. 例如,当我尝试在 python 中导入 C++ 类时出现以下错误:

 /usr/lib/x86_64-linux-gnu/libpython3.4m.so.1.0: undefined symbol: XML_SetHashSalt
Run Code Online (Sandbox Code Playgroud)

如果我取消设置LD_LIBRARY_PATHC++ 导入工作但 MCR 失败。那么问题LD_LIBRARY_PATH应该是什么才能成功运行 C++ 类和 Matlab 的 …

paths environment-variables matlab boost

6
推荐指数
2
解决办法
1万
查看次数

如何将可执行文件放入/usr/bin?

我下载了 eclipse 并将其解压缩到/opt.

我的问题是如何让它像 javac、java.js 这样的其他程序一样从终端运行。我做了update-alternatives如下:

sudo update-alternatives --install "/usr/bin/eclipse" "eclipse" "/opt/eclipse/eclipse" 1 
Run Code Online (Sandbox Code Playgroud)

我没有收到任何错误。我穿过并看到/usr/bin/eclipse在那里,所以我做了:

sudo eclipse
Run Code Online (Sandbox Code Playgroud)

我得到了:

sudo: eclipse: command not found
Run Code Online (Sandbox Code Playgroud)
  1. 这是否可以执行命令eclipse并且我的日食会启动?
  2. 如何使我的用户程序成为终端的可执行程序之一?
  3. 我是否update-alternatives用于正确的目的?
  4. 还有其他解决办法吗?

command-line eclipse paths

5
推荐指数
1
解决办法
2万
查看次数