可悲的是,我在编码方面完全没有经验。我正在尝试使用程序来处理 GRIB 文件,此处: http: //www.nws.noaa.gov/mdl/degrib/compile.php? os= windows 。我正在编译,因为安装包中存在大量错误。
我已经安装了 Cygqin 和 MinGW。现在,我尝试将 MinGW 插入到我的 Cygwin 用户的环境路径中,按照 MinGW 文档中大约页面一半处的说明:http: //www.mingw.org/wiki/FAQ(“将 MinGW 与 Cygwin 结合使用”) 。问题是,我只是不知道执行此操作的命令。我知道这很简单,但今天已经是我被困在这个问题上的第三天了。提前致谢。
在 Ubuntu 14.04 上我尝试通过 Composer 建立 Drush。
我添加 PATH="~/.composer/vendor/bin:$PATH到服务器.bashrc或.bash_profile服务器上。
Drush 在服务器上正确调用。
但它不适用于远程:
ssh myalias 'drush'
bash: drush: command not found
我检查echo $PATH了网络服务器和远程,我看到:
/home/<MY_USER>/.composer/vendor/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games为什么有差异(没有差异/home/<MY_USER>/.composer/vendor/bin)?如何添加远程回调的正确路径?
我最近安装了cryptsetup. 我已经仔细检查过sudo apt-get install cryptsetup。
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
cryptsetup is already the newest version (2:2.3.7-1+deb11u1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试使用该命令时,它无法识别它。
bash: cryptsetup: command not found
Run Code Online (Sandbox Code Playgroud)
然后我尝试使用 查找命令的位置which。
which cryptsetup
但是该命令不会返回任何内容。man cryptsetup说这cryptsetup确实是正确的命令名称。这里有什么问题吗?
我正在阅读 Sobell 的《Linux 命令、编辑器和 Shell 编程实用指南》,4e。早些时候,他谈到了.和..,并说它们是工作目录和工作目录父目录的“路径名的同义词”。我的问题是我是否应该将它们视为相对路径名或绝对路径名的同义词。最后,我认为我的误解与不了解 Linux 系统如何解析路径名有关。
举个例子:假设我输入如下命令
cd ..
我是否应该将 shell 视为用 .. 替换当前工作目录的父目录的绝对路径名?或者,当我给出相对路径名时,“分辨率”的行为是否有所不同(这里似乎是这种情况,因为我没有以斜杠 / 开始我的路径)?在某种程度上,我想这个问题可以表述为“相对路径命名是绝对路径命名的特殊情况吗?因为每个相对路径名都替换为适当的绝对路径?”
我test在完整路径下有一个可执行脚本/home/sawa/foo/bar/test。该目录/home/sawa/foo/bar在 内$PATH,并且优先于默认目录,包括/usr/bin. 当我做
`which test`
Run Code Online (Sandbox Code Playgroud)
查看这个命令是否被正确识别,它返回
/home/sawa/foo/bar//test
Run Code Online (Sandbox Code Playgroud)
用双斜线//。我知道有一个同名的内置命令test,当我删除我的命令时,下面的这个命令/usr/bin/test是由 返回的which,所以我认为它以某种方式进行了干扰。
test似乎无法正常工作。这是为什么?不知何故mpirun未能承认我的$PATH. PyroDist我所拥有的程序$PATH有效:
$ PyroDist
Can't find asked option -in
PyroDist - pairwise distance matrix from flowgrams
-in string flow file name
-out stub out file stub
Options:
-ni no index in dat file
-rin string lookup file name
Run Code Online (Sandbox Code Playgroud)
并使用mpirun完整路径运行它也可以:
$ mpirun -np 4 ../bin/PyroDist -in C005.dat -out foo
0: Read data
0: Broadcast data
0: Broadcast flows
nN=2094 nM=360 nSize=753840
Run Code Online (Sandbox Code Playgroud)
但这失败了:
$ mpirun -np 4 PyroDist
Missing: program name
Program PyroDist …Run Code Online (Sandbox Code Playgroud) 可能重复:
如何设置用户环境变量?(永久,不是会话)
我用的是suse。首先我安装了 jdk7,所以JAVA_HOME是:
/usr/java/jdk1.7.0_05/
Run Code Online (Sandbox Code Playgroud)
我卸载了 jdk7 并安装了 jdk6,但我不知道如何更改JAVA_HOME. .bashrc并且.profile不包含任何关于JAVA_HOME.
有另一个文件吗?
当然,这是一个简单的问题,我只是不知道如何搜索,但是如果我有两个同名的可执行文件,一个在/usr 中,一个在/usr/local 中(例如),我该如何更改哪个默认情况下执行一个而不指定路径,如/usr/local/file,如果$ which返回/usr ?
Centos6.4顺便说一句。
我已经在我的 Solaris 11 机器上安装了 JDK 和 Groovy。我现在想设置一些东西,以便每当我打开 shell 时 PATH 变量都会包含 bin 目录。
我的理解是在/etc/profile文件末尾添加的以下几行应该可以解决问题。
JAVA_HOME=/usr/jdk/instances/jdk1.7.0
PATH=${PATH}:${JAVA_HOME}/bin
GROOVY_HOME=/usr/local/bin/groovy-2.1.3
PATH=${PATH}:${GROOVY_HOME}/bin
export PATH
Run Code Online (Sandbox Code Playgroud)
但是,当我重新启动我的腻子会话时,只有 JAVA_HOME 和 GROOVY_HOME 变量受到影响。PATH 变量保持不变,例如
/usr/bin:/usr/sbin
Run Code Online (Sandbox Code Playgroud)
我想知道是否有另一个脚本在 /etc/profile 之后运行,它可能会覆盖 PATH 变量。但我不知道在哪里看。
还是有其他问题?
正如评论中提出的那样,我尝试使用以下几行,但不幸的是效果相同。
JAVA_HOME=/usr/jdk/instances/jdk1.7.0
GROOVY_HOME=/usr/local/bin/groovy-2.1.3
export PATH=${PATH}:${GROOVY_HOME}/bin:${JAVA_HOME}/bin
Run Code Online (Sandbox Code Playgroud) 我正在运行 Mountain Lion 10.8.4,并且我的环境都经过自定义,~/.profile这样当我从命令行运行Sublime Text或 Eclipse等 GUI 应用程序时
open /Applications/Sublime\ Text\ 2.app
Run Code Online (Sandbox Code Playgroud)
它们继承了我的$PATH设置,允许应用程序运行不在 OSX 非常有限的默认路径中的外部命令。但是,我真的很希望能够通过 Finder 或 Dock 打开程序,并为它们提供我在命令行上使用的相同路径。launchctl setenv PATH $PATH在 10.8 中不起作用。我该如何设置?