为什么要在linux命令前加上 ./ ?

简述

执行unix或linux中除了path系统变量外的目录下的命令都要加./。

修改用户的 .bash_profile,在 PATH一行最后加上 “:.” (一个冒号,一个点) ,然后退出重新登陆用户就ok了! PATH中没有定义路径,加上就ok了。

./表示当前目录,这是因为linux的默认搜索目录里没有当前目录,所以如果你在当前目录需要执行程序就要加上路径./,用全路径代替也是可以的。

win/dos的默认搜索路径里有当前目录,所以不需要加。其实加上也是一样的效果。

什么时候才需要在命令前加上./ ?

比如:

cd /etc/init.d

运行:sshd,系统没有什么反应也不出错,而只有加上./ 后,如 ./sshd 才会出提示如:

用法:./sshd {start|stop|restart|reload|condrestart|status}

这是怎么回事,而有的时候却两者都可以。

“.”表示当前目录,“./”表示执行当前目录下可执行文件。

首先,你运行了两个sshd,都没有报错,说明两个命令都可以。 一开始的sshd应该是/usr/sbin/下面的sshd命令。 第二次的sshd是/etc/init.d/下的一个脚本,不是二进制可执行文件。

linux优先查找PATH环境变量下的路径,和m$有点不一样。环境变量可以用echo $PATH命令查看。

总之,执行unix或linux中除了path系统变量外的目录下的命令都要加./。

为什么要在linux命令前加上 ./的更多相关文章

  1. 5个相见恨晚的Linux命令

    阅读本文大概需要 2.4 分钟. 作者 | 李火清 转载自[CU技术社区] 编者按:说到Linux命令相信大家都不陌生,就连前端现在也要经常在 terminal 敲一些 node,gulp等命令,本文 ...

  2. linux命令行下使用反斜杠“\”调用别名的原命令

    经常看到linux软件的作者在介绍安装软件时,在命令前面加一个反斜杠,不解其意,后来查阅资料才知道,这是为了取消别名的调用,使用原命令. alias是shell的内置命令,可以用来设置命令的别名,如使 ...

  3. linux命令详解之(at)

    在Linux下,有两个命令可以用来作为计划任务而执行,at:一次性定时任务计划执行crontab :每天定时任务计划执行 以下仅说一下一次性任务计划执行(at)要使用一次性任务计划,linux必须要有 ...

  4. Linux命令大总结

    from http://elain.blog.51cto.com/3339379/623310 Linux命令大总结------------------------------------------ ...

  5. 5个相见恨晚的Linux命令,每一个都非常实用

    转至:https://zhuanlan.zhihu.com/p/57866239 作为一个开发人员,经常要用到终端命令,最让人头疼的是记不住繁琐的参数.用谷哥度娘检索效率低下,通过man命令显示的结果 ...

  6. linux命令(36):vimdiff文件对比

    启动方法 首先保证系统中的diff命令是可用的.Vim的diff模式是依赖于diff命令的.Vimdiff的基本用法就是: # vimdiff FILE_LEFT FILE_RIGHT 或者 # vi ...

  7. L014-第三关课前linux命令及基础知识考试手把手实战解答小节

    又是一周啊,以后保持一周一个微博吧. 这是一个堂解答考试题的课,那么就以题目来展开吧! 1.如何取得/etiantian文件的权限对应的数字内容,如-rw-r--r--为644,要求用命令获得644这 ...

  8. 转载:Linux命令经典面试题:统计文件中出现次数最多的前10个单词

    1.使用linux命令或者shell实现:文件words存放英文单词,格式为每行一个英文单词(单词可以重复),统计这个文件中出现次数最多的前10个单词 主要考察对sort.uniq命令的使用,相关解释 ...

  9. Linux shell中运行命令后加上字符“&”的作用

    上午登录服务器编译运行服务端程序的时候,学到了在命令后加上字符“&”后,退出shell,运行的命令可以继续运行.不解原因,并到网上搜索了以下,明白了点! 以下是搜索到的片段: & 放在 ...

随机推荐

  1. C#继承基本控件实现自定义控件 (转帖)

    自定义控件分三类: 1.复合控件:基本控件组合而成.继承自UserControl 2.扩展控件:继承基本控件,扩展一些属性与事件.比如继承Button 3.自定义控件:直接继承自Control 第一种 ...

  2. Ionic 3 自定义组件的使用

    1. 创建组件 ionic g component myComponent myComponent为组件名称 创建好后,生成的文件如下图 2. 在Page 中使用 使用的是home 在home.htm ...

  3. python 典型文件结构

    #/usr/bin/env/ python #(1) 起始行 "this is a test module" #(2) 模块文档(文档字符串) import sys import ...

  4. 如何使用swingbench进行oracle数据库压力测试

    如何使用swingbench进行oracle数据库压力测试 2014-10-06 08:09:02 标签:oracle 数据库压力测试 swingbench 原创作品,允许转载,转载时请务必以超链接形 ...

  5. CentOS7 安装mysql(YUM方式)

    1.下载mysql源安装包 shell> wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm   2 ...

  6. Python网络爬虫-xpath模块

    一.正解解析 单字符: . : 除换行以外所有字符 [] :[aoe] [a-w] 匹配集合中任意一个字符 \d :数字 [0-9] \D : 非数字 \w :数字.字母.下划线.中文 \W : 非\ ...

  7. SpringMVC中的重定向和转发的实现

    1.请求转发和重定向的区别 请求重定向和请求转发都是web开发中资源跳转的方式. 请求转发是服务器内部的跳转 地址栏比发生变化 只有一个请求相应 可以通过request域对跳转目标的请求 请求重定向是 ...

  8. Redis:Redis

    ylbtech-Redis:Redis 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部     6.返回顶部   7.返回顶部   8.返回顶部   9.返回顶部 ...

  9. Session的使用与Session的生命周期

    1.HttpSession的方法 Object getAttribute(String); Enumeration<String> getAttributeNames(); long ge ...

  10. Linux进程与线程概述

    进程与线程 实现方式的区别:进程是资源分配的基本单位,线程是调度的基本单位. 为什么对于大多数合作性任务,多线程比多个独立的进程更优越呢?这是因为,线程共享相同的内存空间.不同的线程可以存取内存中的同 ...