热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

命令历史与别名

当用户登录linux操作系统时,就进入了当前用户的shell。shell是一个命令解释器,它提供了用户与机器之间的交互。它支持特定语法,比

   当用户登录linux操作系统时,就进入了当前用户的shell。shell是一个命令解释器,它提供了用户与机器之间的交互。它支持特定语法,比如逻辑判断、循环等。每个用户都可以有自己特定的shell。CentOS 7默认shell为bash。除了bash之外,还有zsh、ksh等shell类型。

    在shell中,用户输入命令控制操作系统。在所有可执行命令中,history和alias比较特殊。history命令是用来查看过往输入的命令历史。而alias命令是用来定义命令的别名的。这两者都是为了用户使用方便而存在的命令。


1、history

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
[root@server01 ~]# history                     ##查看内存中的命令历史
    1  logout
    2  mkdir /root/.ssh
    3  chmod 700 /root/.ssh
    ......
   84  yum list | grep 'dev' more
   85  history
[root@server01 ~]# cat /root/.bash_history     ##查看文件中的命令历史
logout
mkdir /root/.ssh
chmod 700 /root/.ssh
......
yum list | grep 'dev' more
[root@server01 ~]# echo $HISTSIZE              ##查看命令历史最大条目数
1000
[root@server01 ~]# cat /etc/profile | grep HISTSIZE=   ##配置文件中定义的最大条目数
HISTSIZE=1000
[root@server01 ~]# HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S"  ##命令历史显示格式
[root@server01 ~]# history
    1  2017/06/27 04:46:01logout
    2  2017/06/27 04:46:01mkdir /root/.ssh
    3  2017/06/27 04:46:01chmod 700 /root/.ssh
    ......
   91  2017/06/27 04:51:54HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S"
   92  2017/06/27 04:52:02history
[root@server01 ~]# chattr +a ~/.bash_history           ##永久保存
[root@server01 ~]# !!                                  ##执行上一条命令
chattr +a ~/.bash_history
[root@server01 ~]# !90                                 ##执行第90条命令
cat /etc/profile grep HISTSIZE=
HISTSIZE=1000
[root@server01 ~]# !cat                                ##执行最近一条cat命令
cat /etc/profile grep HISTSIZE=
HISTSIZE=1000


2、alias

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[root@server01 ~]# alias                          ##查看命令别名
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
[root@server01 ~]# alias wv='w -V'                ##定义别名
[root@server01 ~]# wv
w from procps-ng 3.3.10
[root@server01 ~]# cat ~/.bashrc | grep alias     ##别名配置文件,自定义的alias需要放入
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
[root@server01 ~]# ls /etc/profile.d/             ##用户环境变量
256term.csh  colorgrep.csh  colorls.csh  lang.csh  less.csh  which2.csh
256term.sh   colorgrep.sh   colorls.sh   lang.sh   less.sh   which2.sh


    除此以外,利用tab键补全命令的方式在实际操作中也很常见。如果需要补全参数,需要安装bash-completion软件包。












本文转自Grodd51CTO博客,原文链接:http://blog.51cto.com/juispan/1942862,如需转载请自行联系原作者






推荐阅读
  • centos安装Mysql的方法及步骤详解
    本文介绍了centos安装Mysql的两种方式:rpm方式和绿色方式安装,详细介绍了安装所需的软件包以及安装过程中的注意事项,包括检查是否安装成功的方法。通过本文,读者可以了解到在centos系统上如何正确安装Mysql。 ... [详细]
  • 本文详细介绍了在Linux虚拟化部署中进行VLAN配置的方法。首先要确认Linux系统内核是否已经支持VLAN功能,然后配置物理网卡、子网卡和虚拟VLAN网卡的关系。接着介绍了在Linux配置VLAN Trunk的步骤,包括将物理网卡添加到VLAN、检查添加的VLAN虚拟网卡信息以及重启网络服务等。最后,通过验证连通性来确认配置是否成功。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • Gitlab接入公司内部单点登录的安装和配置教程
    本文介绍了如何将公司内部的Gitlab系统接入单点登录服务,并提供了安装和配置的详细教程。通过使用oauth2协议,将原有的各子系统的独立登录统一迁移至单点登录。文章包括Gitlab的安装环境、版本号、编辑配置文件的步骤,并解决了在迁移过程中可能遇到的问题。 ... [详细]
  • 本文介绍了使用readlink命令获取文件的完整路径的简单方法,并提供了一个示例命令来打印文件的完整路径。共有28种解决方案可供选择。 ... [详细]
  • 第四讲ApacheLAMP服务器基本配置Apache的编译安装从Apache的官方网站下载源码包:http:httpd.apache.orgdownload.cgi今 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 本文讨论了在使用Git进行版本控制时,如何提供类似CVS中自动增加版本号的功能。作者介绍了Git中的其他版本表示方式,如git describe命令,并提供了使用这些表示方式来确定文件更新情况的示例。此外,文章还介绍了启用$Id:$功能的方法,并讨论了一些开发者在使用Git时的需求和使用场景。 ... [详细]
  • C++ STL复习(13)容器适配器
    STL提供了3种容器适配器,分别为stack栈适配器、queue队列适配器以及priority_queue优先权队列适配器。不同场景下,由于不同的序列式 ... [详细]
  • 由于同源策略的限制,满足同源的脚本才可以获取资源。虽然这样有助于保障网络安全,但另一方面也限制了资源的使用。那么如何实现跨域呢,以下是实现跨域的一些方法。 ... [详细]
author-avatar
至尊白云_878
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有