基础命令

1,对于Linux的实验环境我们要用到虚拟机,往往每次上线都要登录,这时候如果把用户设为自动登录就会方便许多,接下来就介绍下设置虚拟机的自动登录

, /etc/gdm/custom.conf 这个就是设置自动登录的一个配置文件,我们先来使用nano打开这个文件,如下

# GDM configuration storage

这是GDM的一个配置存储

[daemon]

这个是守护程序的意思,在古希腊神话中也被翻译成半神半人的精灵,

[security]

安全

[xdmcp]

X显示监控协议

[greeter]

欢迎者

[chooser]

选择器

[debug]

调试

 

我们就在这个被称为精灵的[daemon] 下添加如下图所示的内容

 

共和国环境

AutomaticLoginEnable=true

使自动登录成为真的

AutomaticLogin=root

自动登录为root

看到这想必大家已经明白了,至此咱们就设置完成了,Ctrl+x存盘,快去设置你的自动登录吧

 

2.Shell概述

Echo $SHELL查看当前登录用户的shell 默认是/bin//bash,

/etc/shells 这个文件中存放着所有支持的shell

咱们通常执行一个命令时会输入一个字符串,输入的这个字符串就会发送到/bin/bash中去判断它,如果是一个命令就执行,如果不是就会报错 command not found… 提示命令没发现

我们的命令又分为两种内部命令跟外部命令

(1)内部命令:由shell自带的, /bin/bash是一个可执行文件,默认的/bin/bash程序集成放置了很多内置命令,也就是所谓的内部命令,如 cd ,pwd ……

/bin/bash 在用户开机时就会自动在后台运行,所以它是缓存在内存中的,内存中的数据运行时非常快的,不需要再去磁盘中找文件 所以当你运行内部命令是非常快的

 

enable 这个命令就可以查看到当前bash的内部命令 它也同样是一个内部命令

help        内部命令列表 也可以查看内部命令,还有内部命令的详细用法

enable -n cmd  是禁用内部命令

观察下图,命令前面带*的就是被禁用的命令

21

enable cmd    启用内部命令

enable -n    查看所有禁用的内部命令

3

(2)外部命令:在文件系统路径下有对应的可执行程序文件

查看的路径:which -a | –skip-alias; whereis

大部分外部命令都在 /bin  /sbin/  /usr/bin  /usr/sbin 下 以/bin为例

4

这里只列出一部分

type command 可以用来区别一个命令是内部或是外部命令

5

6

执行type cd  显示是cd is a shell builtin ,告诉我们cd是一个内置的shell 命令

执行type cat  显示是cat is /usr/bin/cat , 这里是一个具体路径也就是外部命令

 

在执行外部命令时由于它是一个磁盘文件,想想看如果我们在执行时它真要去找这个文件是不是效率会大打折扣会很慢,所以就给外部命令定义了一个PATH变量,通常在变量前有个$,$PATH表示它是一个变量

echo $PATH 查看PATH变量,如下

7

这里显示的是一个个路径

在我们执行一个命令时,首先会看你是不是一个内部命令,如果在bash中集成了这个   令就会直接执行,如果不是就会在PATH变量对应的路径中从左至右一个个路径中去找,找到就执行,如果还是没有找到就会报错 “命令没有找到”

 

执行过一次的命令就会缓存在hash中

(3)hash缓存表

系统初始的hash表为空,当执行一个命令时会先去PATH变量中记录的路径去找,如果找到该命令就会执行并记录在hash缓存表中,当下次要执行该命令时,首先会到hash表中寻找,如果hash表中存在就会执行,如果没有,再去PATH变量中的路径中去寻找。

利用hash表可以显著的提高我们调用命令的效率

hash用法

hash      显示hash缓存

hash -l    显示hash缓存的详细信息,可做输入使用

hash -p path name   将命令的全路径path起别名为name

8

使用hash -p 命令将缓存表中的/usr/bin/ls 命名为a,执行a 就相当于执行ls这条命令

 

hash -t name        打印缓存中name的路径

hash -d name       清除name 缓存

9

使用hash -d 来清除指定命令的缓存路径,如上图使用hash -d ls 命令将ls的缓存清除

hash -r   清除缓存(清除缓存表中的所有缓存

………

 

好了今天就给大家介绍这几条命令如有需要改正之处请联系小编 Bye!

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/88655

(0)
liuyongweiliuyongwei
上一篇 2017-11-19 20:41
下一篇 2017-11-19 21:21

相关推荐

  • lvm 逻辑卷 和 网络管理

    lvm 逻辑卷 和 网络管理 逻辑卷管理器(LVM) LVM:      Logical Volume Manager, Version: 2  dm: device mapper:     将一个或多个底层块设备组织成一个 逻辑设备的模块   设备名:     /dev/d…

    Linux干货 2016-09-01
  • 快速运用NFS共享web页面

    环境:centos7.3最小化三台,前期准备关闭防火墙和selinux 目的:通过文件共享,使客户端访问web服务器时是同样的页面。 拓扑图: 优势:减少WEB服务器的压力。 一、安装软件 NFS、WEB1、WEB2: #yum install nfs-utils -y WEB1、WEB2: #yum install httpd -y 二、配置 NFS: #…

    2017-04-27
  • Nginx反向代理原理、压测及模块功能的实现

    基本架设 反向代理模块 缓存功能的实现 修改报文首部IP 向后端转发时是否让客户端知道 在http中定义缓存基本属性 定义当后端服务宕机时过期缓存生效条件 报文首部模块,自定义报文首部 负载均衡模块1 负载均衡模块2 负载均衡模块的常用调度方法1 负载均衡常用调度方法2 与http想等的动态负载均衡模块1 与http想等的动态负载均衡模块2 这里让我们对之前…

    2016-10-30
  • 【招聘福利】三生石/郑州/6-10K

    三生石科技 岗位职责: 1、熟悉Linux系统环境/内核参数/系统调用接口等,对系统、网络和应用的原理等有较深刻的理解; 2、熟悉Linux操作系统的管理部署、配置和调优; 3、熟悉服务器架构部署、负载均衡、CDN等; 4、了解mysql数据库的基本管理技能,有Apache/Tomcat/MySQL等服务的优化配置经验; 5、了解常用系统自动化监控软件的使用…

    Linux干货 2015-11-10
  • 关于shell脚本编程基础第三篇

                          关于shell脚本编程基础第三篇   本章主要内容:循环的特殊用法;while;for;select 循环与菜单       &nbsp…

    系统运维 2016-08-21
  • N23-卡卡琦-第二周

    1、文件管理类命令 常规命令:copy、mv、rm (1).copy 文件复制 用法: 注意:复制文件只是复制文件的数据而不是元数据,但是可以保留元数据的信息。 单源复制:目录是否存在都可以 多源复制:目录必须是存在的 -i:提醒用户操作确认(交互式) -f:强行覆盖 -r:递归复制目录 -p:保留源数据 -a:用于实现归档,做备份 -d:不跟踪符号链接所指…

    Linux干货 2016-12-11