Linux命令执行过程

  1.判断用户是否以绝对路径或相对路径的方式输入命令(如 /bin/ls) ,如果是的话则直接执行

  2.Linux系统检查用户输入的命令是否为”别名命令”.

    即用一个自定义的命令名称来替换原本的命令名称(格式 : alias 别名=命令)

    若要取消一个命令别名,则用unalias,格式 : unalias 别名

  3.Bash解释器判断用户输入的是内部命令还是外部命令.内部命令时解释器的内部指令,会被直接执行;而用户在绝大部分时间输入的是外部命令,这些命令会交由步骤4继续处理.可以使用”type命令名称”来判断用户输入的命令是内部的命令还是外部命令.

  4.系统在多个路径中查找用户输入命令文件,而定义这些路径的变量叫做PATH,可以简单的把它理解成是”解释器小助手”,作用是告诉Bash解释器待执行的命令可能存放的位置,然后Bash解释器就会乖乖的的在这些位置中逐个查找.PATH是由多个路径值组成的变量,每个路径值之间用冒号间隔,对这些路径的增加和删除操作将影响到Bash解释器对Linux命令的查找.

  注:

    1.为什么不能将当前目录(.)添加到PATH变量中呢?

      答 : 尽管可以将当前目录(.)添加到 PATH 变量中,从而在某些情况下可以让用户免去输入命令 所在路径的麻烦。但是,如果黑客在比较常用的公共目录/tmp 中存放了一个与 ls 或 cd 命令同 名的木马文件,而用户又恰巧在公共目录中执行了这些命令,那么就极有可能中招了。

    2.接收任何一台Linux系统后一定会在执行命令前检查PATH变量是否有可疑目录

Linux系统中最重要的10个环境变量

变量名称

作用

HOME

用户的主目录(即家目录)

SHELL

用户在使用shell解释器名称

HISTSIZE

输出的历史命令记录条数

HISTFILESIZE

保存的历史命令记录条数

MAIL

邮件的保存路径

LANG

系统语言,语系名称

RANDOM

生成一个随机数字

PS1

BASH解释器的提示符

PATH

定义解释器搜索用户执行命令的路径

EDITOR

用户默认的文本编辑器


变量的组成 : 固定的变量名与用户或系统设置的变量值两部分组成的

提升全局变量的命令 : export

 

Linux就该这么学——重要的环境变量的更多相关文章

  1. 【linux草鞋应用编程系列】_2_ 环境变量和进程控制

    一. 环境变量     应用程序在执行的时候,可能需要获取系统的环境变量,从而执行一些相应的操作.     在linux中有两种方法获取环境变量,分述如下.   1.通过main函数的参数获取环境变量 ...

  2. Linux下Jdk的安装和jdk环境变量的设置

    我们在Linux下安装系统软件的时候,经常遇到一些系统环境变量配置的问题.什么是环境变量?如何定制环境变量?我将在下面做一些介绍.一.什么是环境变量?Linux是一个多用户的操作系统.多用户意味着每个 ...

  3. Linux上安装jdk1.8和配置环境变量

    前言 Linux 上安装jdk1.8 和配置环境变量,参考相关文档,本人在此总结,操作归纳如下. 第一步:创建jdk安装目录(该/usr/local/src 目录是空的,最好把我们自己下载的放到这,容 ...

  4. Linux—export命令查看、修改用户环境变量

    Linux export 命令用于设置或显示环境变量. 在 shell 中执行程序时,shell 会提供一组环境变量. export 可新增,修改或删除环境变量,供后续执行的程序使用. export ...

  5. 常见linux命令释义(第六天)——shell环境变量

    太懒了,这几天好像得了懒癌,一点都不想写博客.后来想想,知识嘛,还是分享出来的好.第一治自己的懒癌:第二顺便巩固下自己的知识. Linux的变量分为两种,一种是系统变量,是系统一经启动,就写进内存中的 ...

  6. Linux和Windows下查看、设置环境变量的比较

    [一]查看环境变量: 1.windows 查看所有的变量:set    范例:>set    查看某个变量的值:set 环境变量名    范例:     >set JAVA_HOME    ...

  7. linux下JDK,tomcat的安装与环境变量配置

    先从网上下载jdk(jdk-1_5_0_02-linux-i586.rpm) ,下载后放在/home目录中,当然其它地方也行. 进入安装目录#cd /home#cp jdk-1_5_0_02-linu ...

  8. linux下export命令添加、删除环境变量(转载)

    转自:http://blog.csdn.net/shenshendeai/article/details/49794699 export命令 功能说明:设置或显示环境变量. 语 法:export [- ...

  9. Linux下发布javaWeb项目,配置环境变量,tomcat,和安装mysql数据库

    如果不懂,可以联系微博本人:QQ:3111901846 (原创) 1.配置java中jdk 注意一切操作,都是在root这个目录下进行的,不要选择其他目录,不然会出现一些小问题的 第一步: 你需要一个 ...

随机推荐

  1. Java线程优先级及守护线程(二)

    简述 在操作系统中,线程是可以划分优先级的,优先级较高的线程,得到CPU优先执行的几率就较高一些.设置线程的优先级,有助于帮助线程规划期选择下一个哪一个线程优先执行,但是线程优先级高不代表一定会优先执 ...

  2. fiddler无法生成证书

    在win7有可能无法生成证书打开安装Fiddler的路径下,按住shift   右击在此处打开命令行窗口 输入以下命令 makecert.exe -r -ss my -n "CN=DO_NO ...

  3. Vue小实例

    最近刚学习Vue的官方文档,了解了指令.模板.组件.数据双向绑定等有关Vue的知识点.因此估摸着做点实例出来练练手. 下面介绍一个简单的例子,模拟购物车自动统计金额,效果图如下: 代码如下: < ...

  4. 5.使用Ribbon实现客户端侧负载均衡

                                Ribbon实现客户端侧负载均衡 5.1. Ribbon简介 Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法 ...

  5. httpClinent工具类

    package com.juchn.gateway.common.utils; import java.io.BufferedReader; import java.io.IOException; i ...

  6. MySQL Cluster 集群部署

    前言 此篇博客用以介绍 MySQL Cluster 集群部署方法 一.节点规划 序号 IP地址 节点名称 1 172.16.1.201 mysql-manage 2 172.16.1.202 mysq ...

  7. SQL-W3School-基础:SQL 简介

    ylbtech-SQL-W3School-基础:SQL 简介 1.返回顶部 1. SQL 是用于访问和处理数据库的标准的计算机语言. 什么是 SQL? SQL 指结构化查询语言 SQL 使我们有能力访 ...

  8. Python安装以及简单使用教程

    以windows版本举例: 1.首先去Pycharm官网,或者直接输入网址:http://www.jetbrains.com/pycharm/download/#section=windows,下载P ...

  9. 你应该知道的 MySQL 的锁

    背景 数据库的锁是在多线程高并发的情况下用来保证数据稳定性和一致性的一种机制.MySQL 根据底层存储引擎的不同,锁的支持粒度和实现机制也不同.MyISAM 只支持表锁,InnoDB 支持行锁和表锁. ...

  10. es6 单例

    class Singleton { constructor() { this.conn = this.connect(); } static getInstance() { if (!Singleto ...