linux enable命令学习
shell命令用来启动或关闭shell内建命令。
通过type命令查看可以知道,enable命令本身也是一个shell内建命令。
sh-# type enable
enable is a shell builtin
使用enable命令可以查看到当前系统中有哪些shell内建命令,
也可以确认enable是一个shell builtin命令。
sh-# enable
enable .
enable :
enable [
enable alias
enable bind
enable break
enable builtin
enable caller
enable cd
enable command
enable compgen
enable complete
enable continue
enable declare
enable dirs
enable echo
enable enable
enable eval
enable exec
enable exit
enable export
enable false
enable fc
enable getopts
enable hash
enable help
enable history
enable kill
enable let
enable local
enable logout
enable popd
enable printf
enable pushd
enable pwd
enable read
enable readonly
enable return
enable set
enable shift
enable shopt
enable source
enable test
enable times
enable trap
enable true
enable type
enable typeset
enable ulimit
enable umask
enable unalias
enable unset
enable wait
sh-#
linux shell命令执行时,shell总是先在自己的shell builtin中查找该命令,如果找到则执行该命令;
如果找不到该命令,则会从环境变量$PATH指定的路径中依次去查找待执行的命令。
因为了解了这一点,所以看起来好像没有办法编写用户自己的命令来替代shell builtin命令。
幸运的是,有了enable命令我们就能做到了。
我们以shell内建命令hostory命令为例进行说明。
1. 可以看到history是一个shell builtin命令,并且也可以正常执行history命令。
sh-# type history
history is a shell builtin
sh-# history
1 type enable
2 type ooxx
3 type ooxx
4 enable -all
5 enable -all
6 enable all
7 enable
8 enable
9 enable
10 pwd
11 enable -n pwd
12 pwd
13 type
14 type pwd
15 en
16 history
2. 使用enable命令来关闭history命令。
sh-# enable -n history
sh-#
3. 通过实验验证,history命令真的被关闭了。
所以,用户可以根据需求编写自己的history命令了。
sh-# type history
sh: type: history: not found
sh-# history
sh: history: command not found
sh-#
sh-# enable
enable .
enable :
enable [
enable alias
enable bind
enable break
enable builtin
enable caller
enable cd
enable command
enable compgen
enable complete
enable continue
enable declare
enable dirs
enable echo
enable enable
enable eval
enable exec
enable exit
enable export
enable false
enable fc
enable getopts
enable hash
enable help
enable kill
enable let
enable local
enable logout
enable popd
enable printf
enable pushd
enable read
enable readonly
enable return
enable set
enable shift
enable shopt
enable source
enable test
enable times
enable trap
enable true
enable type
enable typeset
enable ulimit
enable umask
enable unalias
enable unset
enable wait
4. 被关闭的命令,仍然可以使用enable命令将其启动。
sh-# enable history
sh-#
5. 可以看到,history命令被启动起来了。
sh-# type history
history is a shell builtin
sh-# enable
enable .
enable :
enable [
enable alias
enable bind
enable break
enable builtin
enable caller
enable cd
enable command
enable compgen
enable complete
enable continue
enable declare
enable dirs
enable echo
enable enable
enable eval
enable exec
enable exit
enable export
enable false
enable fc
enable getopts
enable hash
enable help
enable history
enable kill
enable let
enable local
enable logout
enable popd
enable printf
enable pushd
enable read
enable readonly
enable return
enable set
enable shift
enable shopt
enable source
enable test
enable times
enable trap
enable true
enable type
enable typeset
enable ulimit
enable umask
enable unalias
enable unset
enable wait
但是我们也发现了一个随之而来的问题,一旦用enable命令关闭了enable命令,
那如何才能将enable命令启动起来呢?
sh-# type enable
enable is a shell builtin
sh-# enable -n enable
sh-# enable
sh: enable: command not found
sh-# enable enable
sh: enable: command not found
linux enable命令学习的更多相关文章
- linux基础命令学习笔记(二)
linux基础命令学习笔记(二) 1.kill :终止进程 kill pid (唯一标示一个进程) kill -9 强制终止 kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...
- Linux常用命令学习4---(挂载命令mount umount、用户登陆查看和用户交互命令 w who last lastlog)
紧接着上一篇Linux的命令行的学习:Linux学习3---(文件的压缩和解压缩命令zip unzip tar.关机和重启命令shutdown reboot……) 1.挂载命令 简介 ...
- 【Linux】命令学习笔记和总结
莫名的想学习一下Linux了,因为对这方面的知识储备为0.对于命令行界面始终是零接触零了解,对一个程序员来说这几乎是致命的,所以简单了解一下. 一.教程参考 参考菜鸟教程即可: Linux 教程 | ...
- Linux常用命令学习
1.ls命令 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录.文件夹.文件权限)查看目录信息等等 常用参数搭配: ls -a 列出目录所有文 ...
- linux sort命令学习
linux sort命令以行为单位对文本文件进行排序. 接下来我们会以/tmp/sort_test.txt这个文本文件为例对sort命令的用法进行说明. sh-# cat /tmp/sort_test ...
- linux source命令学习
1. linux source命令的作用? 我们可能经常需要修改到诸如/etc/profile,~/.bash_profile等这样的配置文件, 一方面我们希望所作的修改在当前的环境中立即生效: 另一 ...
- linux systemctl 命令学习
转载:http://www.cnblogs.com/sparkdev/p/8472711.html systemctl 命令有两大类功能: 控制 systemd 系统 管理系统上运行的服务 在介绍这些 ...
- linux (ubuntu) 命令学习笔记
1, md5sum 输出字符串的MD5值 echo -n 123456 | md5sum //-n表示不打印回车符 2, ubuntu设置dock任务栏鼠标点击效果 16.04: 调整位置:gsett ...
- linux基础命令学习(六)文件的特殊属性
Linux chattr命令用于改变文件属性. 这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式: a:让文件或目录仅供附加用途. b:不更新文件或目录的最后存取 ...
随机推荐
- CSS入门学习(转)
一.基础学习 1.何为CSS CSS是Cascading Style Sheets(层叠样式表)的简称,是一种标记语言,它不需要编译,可以直接由浏览器执行(属于浏览器解释型语 言). CSS文件也可以 ...
- angular中ueditor插件的使用
#在angularjs中使用ueditor编辑器需要注意事项: 在ui-view中使用放置ueditor的div,页面加载时编辑器在页面中是不显示的,需要通过指令手动replay 例: /** * u ...
- Android开发笔记:安卓程序截屏方法
1,基于Android SDK的截屏方法 (1)主要就是利用SDK提供的View.getDrawingCache()方法.网上已经有很多的实例了.首先创建一个android project,然后进行L ...
- 《编写高质量代码--Web前端开发修炼之道》读书笔记
前言 这两周参加公司的新项目,采用封闭式开发(项目成员在会议室里开发),晚上加班到很晚,所以没时间和精力写原创博客了,今天就分享下这篇<编写高质量代码--Web前端开发修炼之道>读书笔记吧 ...
- onresize的定义方式
1.直接在html中定义如<body onresize="doResize()"/> 2.直接给onresize赋值给window和body的onresize赋值如wi ...
- gui线程
package thread; import java.awt.BorderLayout; import java.awt.EventQueue; import java.awt.event.Acti ...
- inline-block(行内区块元素)的详解和应用
说inline-block(行内区块元素)之前,先说下他另外的2个兄弟 display:inline; 内联元素,简单来说就是在同一行显示.他没有高度,给内联元素设置width和height是没效果的 ...
- css 雪碧图 及jquery定位代码
无意间发现了一个很神奇的事情,就是 鼠标悬停在图片上方会切换,起初以为图标是单独插入的.但发现居然是一张完整的图片. 一万只草泥马在心中奔腾.这是怎么实现的? 后来询问得知,这是css精灵技术(spr ...
- sizeof(int *) 和 sizeof(int)型的大小问题
小问题,暂时记录注意一下 printf("sizeof(int): %d\n", (int)sizeof(int)); printf("sizeof(int ...
- PHP获取当前文件路径信息的方法
文件名 test.php 1.__FILE__ 获取 “路径 + 文件名” : /var/www/test/test.php echo __FILE__; //取得当前文件的路径:用魔术常量 __ ...