linux入门第二课

**linux入门基础**

linux 命令类别

内部命令和外部命令

首先我们可以用echo $SHELL 来查询shell 里面会显示我们当前在用的shell

上图是echo $SHELL

上图是echo $SHELL

也可以用cat /etc/shells来查询系统里面的shell

也可以用cat /etc/shells来查询系统里面的shell

bash其实是一个文件是一个程序 存在于 /bin/bash 目录,这是真是存在的文件,是一个可以执行的文件,但是这个程序我们用户一登陆就启用起来了,例如我们用的一些命令就集成在里面,这种集成在bash里面的命令我们就叫做内部命令,例如 history 就是集成在bash里面的她能执行,echo $SHELL 他也是集成在bash里面的。

history 查询使用过的命令 echo 打印的意思 $SHELL 查询系统下的shell cat 查询目录文件
cat /etc/shells 查询系统里面的shell

用 ll 命令可以查询他的大小如:

linux入门第二课

我们学了很多命令那我们怎么知道那些命令是外部命令或内部命令呢? 那我们可以用 type 命令,比如我们看看 history linux入门第二课

如我们在实验一下ifconfig

linux入门第二课

既然不是内部命令也就不是bash里面的,上面显示的是一个程序,自己独立出来了,既然独立出来了,像这种就是外部命令。

也这样理解内部命令用的比较频繁,所以他干脆就集成在bash里面了,外部命令用的没有内部命令多,所以就独立出来了,因为他是个文件嘛,是我们装系统的时候装进入的,那我们装系统的时候可以选择不装他啊,bash是基础所以常用的基本上都会有,就像我们人的内脏一样,不像衣服我们可以随时换,一般来说系统装的时候会装一些常用工具,供我们使用。

每一个类型shell他们的内部命令有可能不同哦童鞋们注意哦,我们默认用的是dash哦,但是有些内部命令也有他们的共通性哦,内部命令依赖于shell类型。

那怎么切换到别的shell? 如: /bin/csh

切换csh

切换csh

ifconfig 是查看电脑ip的命令

那我们怎么知道有多少种内部命令,或多少个命令呢? 可以用help 来查询 。

内部命令1

内部命令1

内部命令2

内部命令2

那help是内部还是外部?可以用 type来查询

linux入门第二课

还有一个命令也可以列出所有的内部命令那就是 enable

enable

enable

那我们内部命令可以禁用不呢?可以 命令那就是 enable -n 同时他也可以 查看所有禁用的命令和可以禁用多个命令和可以启用多个命令如:我们禁用echo

**在用help查询的时候echo 开头就会显示一个*表示禁用**

**在用help查询的时候echo 开头就会显示一个*表示禁用**

那我们 echo 命令还可以使用吗来试

既然还可以使用,那是为什么

既然还可以使用,那是为什么

我们在来看为什么

既然成了外部命令,为什么呢

既然成了外部命令,为什么呢

那表示ehco 既有内部命令,又有外部命令,这就涉及到内部和外部命令的一个优先级的问题了,那谁优先级更高,那肯定是内部命令,内部命令优先于外部命令,那为什么内部命令优先于外部命令,因为开机的时候内部命令已经在内存里面了,内存速度比硬盘快,外部命令还在硬盘里,而且系统也是这样分配的先用内存里面的命令,内部命令优先于外部命令。

那我们怎么启用禁用的内部命令呢?如:enable echo 启用ehco

启用了我们试试,用help 来看

linux入门第二课

在来看上面*号没有了

看他现在成了内部命令了

看他现在成了内部命令了

但是我们也可以用type -a来列出一个命令是否是外部还是内部命令如:echo

linux入门第二课

上面显示出了echo又是外面也是内部命令。 那我们在试ifconfig

表示他只属于外部命令

表示他只属于外部命令

也可以用-p 来显示路径

linux入门第二课

如 history

history没有外部命令所以他就不显示路径了

history没有外部命令所以他就不显示路径了

如 pwd

pwd一样

pwd一样

**小命令时间** 用mesg  n 可以关闭广播  y  可以打开广播

外部命令

既然是外部命令他就存储在硬盘某个路径下。

每个外部命令所存储的路径都不同可以用 which他是专用来查看命令所在路径,但是外部命令执行以后会缓存在内存里面,以后再执行这个命令就先执行这个命令,缓存他缓存的是路径不是命令本身删除原文件以后命令一样不能执行。

linux入门第二课
**小命令时间**whereis 可以列出外部命令路径和帮助文档路径

Hash缓存表

Hash缓存表就是在磁盘里面运行过的文件会把,文件的路径缓存在里面,这样会更快的下一次运行文件。

linux入门第二课

hash-l 会详细的显示

详细显示命令

详细显示命令

hash -p 起别名

linux入门第二课
linux入门第二课

hash -d 选择性删除缓存 linux入门第二课

hash -r 清空所有缓存

linux入门第二课

hash -t 显示别名路径

linux入门第二课

原创文章,作者:李林,如若转载,请注明出处:http://www.178linux.com/76407

(0)
上一篇 2017-05-20 15:11
下一篇 2017-05-20 21:12

相关推荐

  • 计算机的一些简单认识

      完整的计算机系统包括硬件和软件两大部分,硬件是指计算机系统中的各种看得见摸得着的物理装置。例如主板,网卡,显示器等。软件是指计算机运行所以需要的各种程序。例如操作系统:linux,windows。办公软件office等等。可以这样理解为软件是对硬件功能通过复杂的编程封装,让人们得以实现计算机应用于生活。 早期的计算机: 英国曼彻斯特科学工业博物…

    2017-09-11
  • Linux文件系统管理

    马哥教育网络班23期+第3周课程练习 Linux文件系统管理 由于第三周所学的只是比较零碎,知识量比较大,这篇博客主要讲述的是一些习题,包括怎样完成的练习的思路和截图等等。首先我们看第一个题目 1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。    [root@localhost]/media/P…

    Linux干货 2016-09-23
  • linux系统启动流程

    linux系统启动流程 CentOS(5、6)系统启动流程 具体流程: 加载BIOS的硬件信息与进行自我测试,并依据设置取得第一个可启动的设备; 读取并执行第一个启动设备内MBR的boot Loader 依据boot Loader的设置加载Kernel,Kernel会开始检测硬件与加载驱动程序 硬件驱动成功后,Kernel会主动调用init进程,而init会…

    Linux干货 2016-09-11
  • 分布式文件系统Mogilefs介绍与安装

    一、分布式文件系统简介: 什么是分布式存储:       分布式存储系统,是将数据分散存储在多台独立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储…

    Linux干货 2016-05-04
  • Linux文件系统

      文件系统是一个逻辑上的概念,本身与磁盘没有什么关系,它是一个外围性永久存储设备,我们知道,计算机共有五大部件,存储设备是一种,内存是个临时性质的存储设备,无论是关机还是断电,存在里面的数据都会消失,我们需要一个永久性存储的设备,来弥补内存只是临时存储性。   对于Linux来说,其哲学思想之一就是一切皆文件,我们L…

    Linux干货 2016-11-11
  • Linux用户、组管理和正则表达式的基础命令

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没有任何权限 [root@localhost skel]# cp -r /etc/skel /home/tuser1 [root@localhost skel]# ls -al /home/tuser1 total 12 drwxr-xr-x….

    Linux干货 2017-07-20