在window下,如需在cmd命令行中输入窗口中运行某一程序,则需要进入到该程序所在目录才可以直接运行该程序。如果需要在不进入该目录下就运行程序的话,则需要在安装完改程序后,设置环境变量,将bin目录添加到系统环境变量中。即想要在终端运行程序,必须要程序所在的绝对路径或相对路径,以告诉终端我想要运行的程序在哪里。
创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计、做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的启东网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
在Linux中,.字符表示工作目录,斜杠/则是路径分隔符,用于工作目录和文件名。由于SRAtoolkits为非安装软件,解压即可用,解压后其bin文件下的程序并不包含在Linux系统的环境($PATH)。Linux系统在不指定路径的情况下运行程序时会只搜索环境变量$PATH,而在指定了路径的情况下,则搜索指定路径。这就是为何会造成上述问题的原因。
环境变量($PATH):决定了shell将到哪些目录中寻找命令或程序,$PATH的值是一系列目录,当你运行一个程序时,Linux 在这些目录下进行搜索。
运行echo $PATH命令,即可查看到当前所有环境变量的值。
可以通过which ls查看某一命令的bin目录的具体路径。
如果在路径名中存在 ./ 字符,那么就不搜索\ $PATH。
如果 ./ 不在路径名中,那么只在 $PATH 中搜索。
参考Linux-配置环境变量 ()。
~ 表示主目录,也就是当前登录用户的用户目录。例如,我的拥护名是shpc,则 ~ 表示/home/shpc
/是指根目录:就是所有目录最顶层的目录。
./表示当前目录,./一般需要和其他文件夹或者文件结合使用,指代当前目录下的东西。
..表示上级目录,../ 指代上级目录下的东西。
Linux 终端中可以通过ctrl + shift + c 来进行复制和ctrl + shift + v来黏贴(在window下ctrl + c 复制的内容来到Linux终端后也可以ctrl + shift + v来黏贴到指定位置。)
在linux命令前加上反斜杠,可以临时取消使用别名。比如 \rm -rf
反斜杠是直接调用rm的原命令,为了保证你使用的命令不是各种系统别名,经常会在命令前面加一个反斜杠来去除别名。
./表示当前目录,这是因为linux的默认搜索目录里没有当前目录,所以如果你在当前目录需要执行程序就要加上路径,./用全路径代替也是可以的。
win/dos的默认搜索路径里有当前目录,所以不需要加。其实加上也是一样的效果。
准确的是DOS命令,Linux和Dos基本都是跟英语相近的复制命令就是copy只是在路径上表达不太一样好像一个是\一个是/ 。还有linux前面 $ 或 #等字符不是自己输入的,但是可以修改
./ 开始表明是当前目录。
UNIX 类系统里面。 / 是目录符。. 是当前目录,.. 是上级目录,目录后面要加 / 作为分割。如果开始就是 / 表明是一级根目录。
执行一个命令,如果不给出他的目录地址,UNIX 类系统会直接到固定的位置去寻找这个命令,比如 /bin /sbin /usr/bin 等。这个可以用 PATH 环境变量定义。而不管这个程序其实就在当前目录里。
DOS/windows 也有这个变量,不过 DOS/windows 默认是只在当前目录寻找,除非 PATH 定义了别的目录。没有 path 变量,DOS/Windows 是不会搜索当前目录以外的地方的。
\ 是 UNIX 类的转义符,只有 windows 里面才是目录符。windows 这个设定非常非常的那个啥。