Questions tagged «path»

PATH(全部大写)是类Unix操作系统,DOS,OS / 2和Microsoft Windows上的环境变量的名称,指定一组目录,在目录中搜索可执行程序。


4
路径独立shebangs
我有一个脚本,希望能够在两台计算机上运行。这两台机器从相同的git存储库中获取脚本的副本。该脚本需要使用正确的解释器(例如zsh)运行。 不幸的是,这两个 env和zsh住在本地和远程计算机不同的位置: 遥控机器 $ which env /bin/env $ which zsh /some/long/path/to/the/right/zsh 本地机器 $ which env /usr/bin/env $which zsh /usr/local/bin/zsh 如何设置shebang,以便像/path/to/script.sh往常一样运行脚本中的Zsh可用脚本PATH?
20 shell  zsh  cron  path 

4
`哪个`,但全部
我认为大多数人都熟悉该which命令,并且经常使用它。我只是碰到了,我很好奇,不只是它的命令是第一个在我的道路情况,但究竟有多少和在那里所有在我所有的路径命令。我尝试了哪个手册页(打字man which让我发笑),但是什么也没看到。
19 path 

1
为什么root的路径中没有/ usr / local?
我注意到我的虚拟机和服务器上root的默认路径不包含/ usr / local / bin sudo -s echo $PATH /sbin:/bin:/usr/sbin:/usr/bin 而服务器上的普通用户确实具有/ usr / local / bin /usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/sowen/bin 为什么root在路径中不需要/ usr / local? 用户的默认路径在哪里定义?
19 root  path 

2
在Linux中,unix域套接字路径开头的@符号表示什么?
当我运行时,netstat --protocol unix或lsof -U看到某些unix套接字路径前面带有@符号,例如@ / tmp / dbus-qj8V39Yrpa。然后,当我运行时,我在ls -l /tmp那里看不到名为dbus-qj8V39Yrpa的文件。 问题是,@符号前面表示什么?第二个相关的问题是-我实际上在文件系统上哪里可以找到该unix套接字文件(@ / tmp / dbus-qj8V39Yrpa)?
17 linux  path  socket 

3
我的“哪个”命令有时可能是错误的?
我已经从源代码(v24.2)编译了最新的emacs版本,因为我的计算机上安装的版本(v21.3)很旧。我已经照常做了: $configure --prefix=$HOME make make install 现在,我正在测试emacs,并意识到它仍会启动以前的版本...而我的$HOME/bin路径应该覆盖系统路径(因为它在我的.bashrc文件中位于$ PATH之前)。 我首先想到的是查看which命令输出。令人惊讶的是,它为新的emacs开辟了道路。我不明白这里的差异在哪里。在同一会话中,这里是不同的输出: $ emacs --version GNU Emacs 21.3.1 $ `which emacs` --version GNU Emacs 24.2.1 我没有涉及emacs的别名。完全没有 $ alias | grep emacs $ 你知道发生了什么吗?
17 bash  emacs  path  which 

4
如何设置crontab PATH变量
我在从crontab运行脚本时遇到问题。经过一些研究,我了解到问题是因为PATH参数不包含/ sbin。 我查看了它在/ etc / crontab中包含的内容: PATH=/sbin:/bin:/usr/sbin:/usr/bin 作为测试-简单的cron作业来打印PATH变量: * * * * * echo $PATH &> /root/TMP.log 输出为: cat /root/TMP.log /usr/bin:/bin 我不了解这种行为...如何设置PATH变量..?或更好-如何为其添加路径?
17 centos  cron  path 

4
bash中PATH变量设置位置的完整视图
我已经读过几个PATH设置了/etc/profile或.profile主目录中文件。 这些是设置路径的唯一位置吗?我希望对此有更好的理解。 在/etc/profile文件中,如以下注释所示"system-wide .profile file for the Bourne shell"。这是否意味着概要文件是bash的主要配置文件? 在该文件中,我完全看不到PATHvar。在.profile主目录的文件中,有以下行: PATH="$HOME/bin:$PATH" 这是PATH通过外观重置的,因为它将正确设置的$PATH字符串连接起来了$HOME/bin:吗?但是,如果etc/profile和~/.profile是唯一的文件设置PATH($PATH如果未在其中定义)/etc/profile? 有经验的人可以对PATH变量进行广泛而详细的解释吗?谢谢!

1
$ PATH环境变量中的百分比
我的$ PATH看起来像这样: /home/torbjorr/deployed/vector/x86_64-GNU%2fLinux:/home/torbjorr/deployed/typewriter/x86_64-GNU%2fLinux:/home/torbjorr/deployed/mustudio/x86_64-GNU%2fLinux:/home/torbjorr/deployed/mathext/x86_64-GNU%2fLinux:/home/torbjorr/deployed/doxymax/x86_64-GNU%2fLinux:/home/torbjorr/deployed/c2tex/x86_64-GNU%2fLinux:/home/torbjorr/deployed/x86_64-GNU%2fLinux/wand:/home/torbjorr/deployed/x86_64-GNU%2fLinux/spellesc:/home/torbjorr/deployed/x86_64-GNU%2fLinux/projinit:/home/torbjorr/deployed/x86_64-GNU%2fLinux/herbs:/home/torbjorr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games 在bash中,我可以毫无问题地调用位于 /home/torbjorr/deployed/x86_64-GNU%2fLinux/wand 喜欢 $ wand (i) Mål från "main.cpp" har registrerats (i) Skapar katalog "__wand_targets_dbg" (i) Kör g++ "main.cpp" -fpic -L"/home/torbjorr/deployed" -g -Wall -std=c++11 -I"/home/torbjorr/deployed" -o "__wand_targets_dbg/cb-template 但是,在bourne shell兼容模式下,找不到魔杖: $ wand sh: 2: wand: not found 看来问题出在这些路径中的%符号。该符号已通过URL编码添加,因此即使名称不是有效的文件名,也可以在目录名称中使用名称“ GNU / Linux”。是否可以在sh中使用该名称,或者使sh命令作为bash使用。也就是说,即使使用/ bin / sh命令调用了bash,make bash的行为也一样,该命令还是链接到bash。
16 shell  path  dash  ash 

3
如何设置PATH或其他环境变量,以便X应用程序可以访问它?
如何设置环境变量,以便KDE识别它们? 如何在非Shell环境(KDE)中设置路径? 与以上两个问题不同,我想知道如何为GNOME执行此操作。或者更好的是,有没有一种独立于窗口管理器的方法。对于外壳/终端,我通常进行编辑~/.bashrc。无论在何处使用窗口管理器,我都可以在哪里放置导出语句,以便所有X应用程序都可以使用环境变量?

4
使用多行语法将路径添加到PATH
据我了解,将路径添加到PATH环境变量的通常方法是串联由:字符分隔的路径。 例如,如果我想三个路径添加到它/my/path/1,/my/path/2并且/my/path/3,我会做到这一点,如下所示: PATH=$PATH:/my/path/1:/my/path/2:/my/path/3 这不容易阅读。 有没有一种方法可以使用多行语法来定义或向变量添加路径?也许使用数组?我正在寻找这样的东西:PATH PATH = $PATH /my/path/1 /my/path/2 /my/path/3 如果有一些特定于Shell的有趣解决方案,那么我正在zsh中寻找解决方案。

1
为什么找不到rsync?
rsync -avP /home/user/.profile hpux3:/home/user/.profile bash: rsync: command not found 如果我对hpux3机器执行了ssh rsync version 3.1.1 protocol version 31 Copyright (C) 1996-2014 by Andrew Tridgell, Wayne Davison, and others. Web site: http://rsync.samba.org/ output truncated 我已PATH在$HOME/.profile和$HOME/.bashrc。我应该在/etc/profile文件中设置它吗?
16 rsync  path 

3
在PATH中运行与现有函数同名的可执行文件
有时,我定义了一个函数,该函数会遮盖可执行文件并调整其参数或输出。因此,该函数与可执行文件具有相同的名称,并且我需要一种方法,该方法如何从该函数运行该可执行文件而无需递归调用该函数。例如,要自动运行fossil diffthrough colordiff和less -R我的输出,请使用: function fossil () { local EX=$(which fossil) if [ -z "$EX" ] ; then echo "Unable to find 'fossil' executable." >&2 return 1 fi if [ -t 1 ] && [ "$1" == "diff" ] ; then "$EX" "$@" | colordiff | less -R return fi …
16 bash  path  function 

2
在什么情况下将不使用在路径中首先找到的可执行文件
我在osx上使用zsh(5.4.2_1和homebrew一起安装)有一些奇怪的行为,没有在路径中首次使用可执行文件。 这是场景: echo $PATH 返回: /usr/local/Cellar/zplug/HEAD-9fdb388/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin 两者都 酿造 /usr/local/Cellar/zplug/HEAD-9fdb388/bin 和 usr/local/bin/brew 通过运行哪个-a brew返回以下内容可以确认这一点: /usr/local/Cellar/zplug/HEAD-9fdb388/bin/brew /usr/local/bin/brew 但是当我运行哪种冲泡时,它会返回: /usr/local/bin/brew 而且酿造确实运行/usr/local/bin/brew而不是/usr/local/Cellar/zplug/HEAD-9fdb388/bin/brew 当酿造走得更早时,这怎么会发生? 帮助表示赞赏。
15 zsh  path 

4
bash:adduser:在centOS上找不到命令
我最近在VMWare 8上安装了CentOS 5.5,并且试图在系统上添加新用户。除非使用su -选项,否则无法添加用户。我认为它必须在路径设置不正确的情况下执行某些操作。 我更新了路径,这是它的样子 /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/uone/bin:/sbin 我相信该命令位于/ sbin dir中,该目录已经是路径的一部分。谁能建议我可能还会缺少的东西?
15 shell  path 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.