我注意到 root 帐户 $PATH 不包括/usr/local/bin或/usr/local/sbin默认情况下。将这些目录添加到路径中是否会出现任何潜在问题?如果是这样,确保您的 shell 在这些目录中找到可执行文件而不影响系统的稳定性和安全性的最佳方法是什么?
我目前正在为我的网吧开发定制的 CafeSuite 系统。我正在使用 Java 和 JNI(Java 本机接口)来访问 Windows 注册表。但是我有这个模块我无法获得或查看是否可以在 Windows XP 上工作。
当我命令在命令行,tasklist或者tlist它会返回我所有正在运行的*.exe系统。但是对于可以添加到行中的所有参数,我看不到将返回目录或path*.exe 执行位置的参数。
不幸的是,我没有使用任何 Windows Server 操作系统,也不依赖操作系统的任何防火墙UAC或用户帐户控制功能。
以给定的手段,是否有可能追求这样的概念?
git 存储库“文件”的实际路径应该是什么?从 github 克隆执行以下操作时的常见做法:
git clone https://user@github.com/repo.git
Run Code Online (Sandbox Code Playgroud)
我已经习惯了。
如果我使用 git init 在本地机器上初始化一个 repo,我可以参考的“git 文件”是什么?我正在尝试使用 Symfony2 项目设置Capifony,并且需要设置存储库路径。指定存储库的文件夹不起作用。我应该引用的每个存储库都有一个 .git 文件吗?
编辑:
例如,如果我执行以下操作:
mkdir /path/to/project cd /path/to/project git init
我的路径应该是什么来引用那个 git repo?
编辑2:
所以这是 Capifony 配置的摘录:
set :application, "My App"
set :deploy_to, "/var/www/my-app.com"
set :domain, "my-app.com"
set :scm, :git
set :repository, "ssh-gitrepo-domain.com:/path/to/repo.git"
role :web, domain
role :app, domain, :primary => true
set :use_sudo, false
set :keep_releases, 3
Run Code Online (Sandbox Code Playgroud)
我需要将我的存储库设置为本地存储库,我一直在尝试使用以前路径的所有组合,例如:
set :repository, "file:///c:/path/to/repo.git"
Run Code Online (Sandbox Code Playgroud)
但是没有路径适用于我的(有效)git repo?
我刚刚在我的 Linux 机器上安装了一个新程序(我们称之为 foo)。该程序的文件位于一个不寻常的位置,当前不属于我的$PATH. 如果我希望能够在任何目录中轻松地从终端运行该程序,那么更改我的 $PATH 变量或创建别名更好吗?有关系吗?
例如,别名方法将添加以下内容:alias foo="/path/to/program/foo.sh"
$PATH 方法为:export PATH=/path/to/program;$PATH
哪个更好?为什么?
我试图/opt/texbin在 Ubuntu 上找到哪个文件将文件夹添加到我的 PATH 变量中。它不存在于我的/etc/environment文件中。文件夹中不sudo grep -lr texbin . 2>/dev/null输出任何内容/etc。而且,如果我添加set -x到/etc/zshenv 文件的开头,我可以/opt/texbin在 zsh 获取此文件之前看到它在我的 PATH 中。
有任何想法吗?
我想在控制台会话的路径中添加一些二进制文件,我正在这样做
if not defined WIXTOOLKIT_IN_PATH (
set WIXTOOLKIT_IN_PATH=1
set MY_PATH=%~dp0..\tools\wix
SET PATH=%MY_PATH%;%PATH%
)
Run Code Online (Sandbox Code Playgroud)
但它发生了,我的 PATH 包含空格,我收到\Skype\Phone\ was unexpected at this time.带有set PATH回显命令的消息
SET PATH=;C:\Python34\;C:\Python34\Scripts;C:\ProgramData\
Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\Sy
stem32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Pr
ogram Files (x86)\Skype\Phone\;C:\Program Files\Microsoft SQL Server\120\Tools\Binn\;C:\Pr
ogram Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\Program Files (x86)\Mic
rosoft SDKs\TypeScript\1.0\;C:\Program Files (x86)\CMake\bin
Run Code Online (Sandbox Code Playgroud)
我敢肯定,这是微不足道的情况,但我找不到任何解决方案。我该如何解决?
由于某种原因,某些环境变量在系统变量中的“PATH”变量中使用时不会扩展。
例如,%SystemRoot%可以正常工作,但%WinDir%不能。%ProgramFiles%并且%ProgramFiles(x86)%也不起作用。
显然我知道我可以使用完整路径而不是变量,但这不是重点。
有任何想法吗?
这是屏幕截图/示例:
我docker-compose按照https://docs.docker.com/compose/install/上的说明安装在我的 Ubuntu 16.04 机器上,用于curl将二进制文件直接下载到/usr/local/bin/:
$ ls -lh /usr/local/bin/docker-compose
-rwxr-xr-x 1 root root 16M Jul 11 15:55 /usr/local/bin/docker-compose
Run Code Online (Sandbox Code Playgroud)
/usr/local/bin/ 在我的路径中:
$ echo $PATH
/home/me/anaconda3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
Run Code Online (Sandbox Code Playgroud)
请注意,它/usr/bin实际上是在 之前。
当我尝试检查它的版本时,我得到了一个与 PATH 相关的错误:
$ docker-compose --version
bash: /usr/bin/docker-compose: No such file or directory
Run Code Online (Sandbox Code Playgroud)
通过指定可执行文件的完整路径,我得到了正确的行为,
$ /usr/local/bin/docker-compose --version
Run Code Online (Sandbox Code Playgroud)
docker-compose 版本 1.24.0,构建 0aa59064
或通过使用sudo,
$ sudo docker-compose --version
docker-compose version 1.24.0, build 0aa59064
Run Code Online (Sandbox Code Playgroud)
为什么我不能跑$ docker-compose --version?为什么 Bash 会/usr/bin特别抱怨,什么时候它应该在/usr/local/bin.
可能与我之前 …
我尝试了解文件路径的最大有效长度是多少。
为此,我使用 Windows 7 上的默认 Windows 文件管理器和以下 PowerShell 脚本:
Get-ChildItem | Select Name, FullName, @{N="Path Length";E={$_.FullName.Length}} | Format-List
Run Code Online (Sandbox Code Playgroud)
abc.txt我打开管理器,在 中创建文件C:\,然后在abc文件管理器允许的情况下添加字母。(当然,实际上我使用复制粘贴。这要快得多。)
C:\aaa然后我在和中进行相同的测试C:\aaa\bbb。
由于某种原因,结果有所不同。C:\aaa和中的最大长度C:\aaa\bbb为 259 个字符,但 in 中的最大长度C:\为 258 个字符。为什么?
C:\abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefgh.txt
258 characters
C:\aaa\abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcde.txt
259 characters
C:\aaa\bbb\abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_abcdefghijklmnopqrstuvwxyz_a.txt
259 characters
Run Code Online (Sandbox Code Playgroud)
更新
来自 mail-archive.com,Python 列表:
(https://www.mail-archive.com/python-list@python.org/msg444514.html)
经典的 DOS 路径长度限制(例如 247、258 或 259 个字符,具体取决于上下文)。
以下解释是我的。
247 代表目录路径的最大长度:260 - 12 - 1 = 247。这里,12 代表 8.3 文件名,1 代表 NUL 终止符。例如, …
使用 Ubuntu 21.04、GNOME 3.38.5 Wayland 和 zsh 作为我的 shell,
$ systemctl --user show-environment
PATH=/home/tony/.cargo/bin:/home/tony/.cargo/bin:/home/tony/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/snap/bin
我想知道如何~/.cargo/bin重复三遍,但找不到一处设置它的地方。 ~/.pam_environment根本没有提到“PATH”,而且我从来没有运行过 rust 工具链sudo,所以这个变量不太可能在位于/etc.
如何跟踪 PATH 环境变量的设置?
path ×10
linux ×4
windows ×3
alias ×1
bash ×1
command-line ×1
filenames ×1
git ×1
root ×1
shell ×1
systemd ×1
task-manager ×1
unix ×1
whitespace ×1
windows-xp ×1
zsh ×1