Linux History&man

(一).第一周作业

1).Linux常见发行版本以及区别

  1. debian: ubuntu,mint
  2. slackware:SUSE Linux Enterprise Server (SLES)
    OpenSuse桌面
  3. redhat: RHEL: RedHat Enterprise Linux
    每18个月发行一个新版本
    CentOS:兼容RHEL的格式
    中标麒麟:中标软件
    Fedora:每6个月发行一个新版本
  4. ArchLinux:轻量简洁
  5. Gentoo:极致性能,不提供传统意义的安装程序
    摘自CSDN:
    Linux发行版,就是在内核的基础上,加入用户界面,各种软件的支持 所以发行版很多, 因为各个公司可以配置使用不同的用户界面,和软件,就出现了不同的发行版。总而言之,不同的发行版之间的联系在于它们所使用的内核是相同的。而区别在于不同的厂商制作出的发行版里的命令和软件都有细微的不同。

    2).打印显示当前时间,格式是:2018 1209 21 10 08

                        ~]# date +%Y(显示当前年份)
                        ~]# date +%m(显示当前月份)
                        ~]# date +%d(显示当前日)
                        ~]# date +%H(显示当前小时)
                        ~]# date +%M(显示当前分)
                        ~]# date +%S(显示当前秒)
                按照要求的格式显示
                        ~]# date +%Y%m%d%H%M%S
                其它具体操作查看man帮助

    3).实现晚上20:30自动关机,并提示用户

                    ~]# shutdown -P 23:30 Hello everyone ! The computer will shut down at 23:30 

    4).总结历史命令管理以及用法

                    查看命令历史history
                    保存的路径 /ls/.bash_hisory.  命令保存于内存中,只有在退出时会保存在磁盘内。
                                ~]# echo $ HISTSIZE
                                    查看命令历史保存上限
                                ~】# cat /etc/profile
                                    查看相关参数
                                ~]# HISTSIZE=n
                                        保存上限被修改为n
        history [-c] [-d offset] [n]
        history -anrw [filename]
        history -ps arg [arg...]
                            -c: 清空命令历史
                            -d offset: 删除历史中指定的第offset个命令
                            n: 显示最近的n条历史
                            -a: 追加本次会话新执行的命令历史列表至历史文件
                            -r: 读历史文件附加到历史列表
                            -w: 保存历史列表到指定的历史文件
                            -n: 读历史文件中未读过的行到历史列表
                            -p: 展开历史参数成多行,但不存在历史列表中
                            -s: 展开历史参数成一行,附加在历史列表后
    
    **命令行历史**
                    保存你输入的命令历史。可以用它来重复执行命令登录shell时,
                    会读取命令历史文件中记录下的命令~/.bash_history。登录进
                    shell后新执行的命令只会记录在缓存中;这些命令会用户退出
                    时“追加”至命令历史文件中
          **重复前一个命令,有4种方法**
                    1.重复前一个命令使用上方向键,并回车执行
                    2.按 !! 并回车执行
                    3.输入 !-1 并回车执行
                    4.按 Ctrl+p 并回车执行
                        ~】# !:0 执行前一条命令(去除参数)
                        ~】# Ctrl + n 显示当前历史中的下一条命令,但不执行
                        ~】# Ctrl + j 执行当前命令
                        ~】# !n 执行history命令输出对应序号n的命令
                        ~】# !-n 执行history历史中倒数第n个命令
                        ~】# !string 重复前一个以“string”开头的命令
                        ~】# !?string 重复前一个包含string的命令
                        ~】# !string:p 仅打印命令历史,而不执行
                        ~】# !$:p 打印输出 !$ (上一条命令的最后一个参数)的内容
                        ~】# !*:p 打印输出 !*(上一条命令的所有参数)的内容
                        ~】# ^string 删除上一条命令中的第一个string
                        ~】# ^string1^string2 将上一条命令中的第一个string1替换为string2
                        ~】# !:gs/string1/string2 将上一条命令中所有的string1都替换为 string2
                        ~】# 使用up(向上)和down(向下)键来上下浏览从前输入的命令
                        ~】# ctrl-r来在命令历史中搜索命令
                            (reverse-i-search)`’:
                            Ctrl+g:从历史搜索模式退出
                           要重新调用前一个命令中最后一个参数
                            !$ 表示
                            Esc, .(点击Esc键后松开,然后点击 . 键)
                            Alt+ .(按住Alt键的同时点击 . 键)
    
    ****调用历史参数****
                    ~】# command !^ 利用上一个命令的第一个参数做cmd的参数
                    ~】# command !$ 利用上一个命令的最后一个参数做cmd的参数
                    ~】# command !* 利用上一个命令的全部参数做cmd的参数
                    ~】# command !:n 利用上一个命令的第n个参数做cmd的参数
                    ~】# command !n:^ 调用第n条命令的第一个参数
                    ~】# command !n:$ 调用第n条命令的最后一个参数
                    ~】# command !n:m 调用第n条命令的第m个参数
                    ~】# command !n:* 调用第n条命令的所有参数
                    ~】# command !string:^ 从命令历史中搜索以 string 开头的命令,并获取它的第一个参数
                    ~】# command !string:$ 从命令历史中搜索以 string 开头的命令,并获取它的最后一个参数
                    ~】# command !string:n 从命令历史中搜索以 string 开头的命令,并获取它的第n个参数
                    ~】# command !string:* 从命令历史中搜索以 string 开头的命令,并获取它的所有参数
    
    **命令历史相关环境变量**
    
                    HISTSIZE:命令历史记录的条数
                    HISTFILE:指定历史文件,默认为~/.bash_history
                    HISTFILESIZE:命令历史文件记录历史的条数
                    HISTTIMEFORMAT=“%F %T “ 显示时间
                    HISTIGNORE=“str1:str2*:… “ 忽略str1命令,str2开头的历史
                    控制命令历史的记录方式:
          **环境变量:HISTCONTROL**
                            ~]# HISTCONTROL=ignoredups 默认,忽略重复的命令,连续且相同为“重复”
                            ~]# HISTCONTROL=ignorespace 忽略所有以空白开头的命令
                            ~]# HISTCONTROL=ignoreboth 相当于ignoredups, ignorespace的组合
                            ~]# HISTCONTROL=erasedups 删除重复命令
                        export 变量名="值“
                        存放在 /etc/profile 或 ~/.bash_profile命令history

    5).Linux使用帮助

                    获取帮助的能力决定了技术的能力!
                    多层次的帮助
                            (1) 命令自带简要格式的使用帮助
                            (2) 使用手册:manual
                            (3) info COMMAND
                            (4) 很多应用程序会自带帮助文档:/usr/share/doc/APP-VERSION
                            (5) 主流发行版官方文档
                            (6) 程序官方的文档
                            (7) 搜索引擎
                            whatis
                            command -h ;--help
                            man and info
                            /usr/share/doc/
                            Red Hat documentation
                            其它网站和搜索
            whatis:
                        显示命令的简短描述
                        使用数据库
                        刚安装后不可立即使用
                        makewhatis(CentOS6) | mandb(Centos7)制作启用数据库
                        使用示例:
                        whatis cal 或 man –f cal
    1.内部命令
                        help COMMAND 或 man bash
    2外部命令
                (1) 命令自带简要格式的使用帮助
                            ~] # COMMAND --help | ~]# COMMAND -h
                            显示用法总结和参数列表
                            使用的大多数,但并非所有的
                            示例:
                        date --help
                            Usage: date [OPTION]... [+FORMAT] or: date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
                 (2) 使用手册:manual
                              位置:/usr/share/man
    ***     # man COMMAND***
    
                    SECTION:
                                        NAME:功能性说明
                                        SYNOPSIS:语法格式
                                        DESCRIPTION:描述
                                        OPTIONS:选项
                                        EXAMPLES:使用示例
                                        AUTHOR: 作者
                                        BUGS: 报告程序bug的方式
                                        SEE ALSO: 参考
                                        ...
    
                    SYNOPSIS:
                                    []:可选内容;
                                    <>:必须提供的内容;
                                    a|b|c:多选一;
                                    ...:同类内容可出现多个;
    
                    使用手册:压缩格式的文件,有章节之分;
                            /usr/share/man
                                    man1, man2, ...
    
                                    1:用户命令;
                                    2:系统调用;
                                    3:C库调用;
                                    4:设备文件及特殊文件;
                                    5:文件格式;(配置文件格式)
                                    6:游戏使用帮助;
                                    7:杂项;
                                    8:管理工具及守护进行;
    
                                    ~]# man CHAPTER COMMAND
    
                    注意:并非每个COMMAND在所有章节下都有手册;
                            查看:
                                            ~]# whatis COMMAND
                                                查看哪些章节有使用手册
                    注意:其执行过程是查询数据库进行的;
                                            手动更新数据库:
                                            ~]# makewhatis
    
            man命令打开手册以后的操作方法:
                翻屏:
                        空格键:向文件尾翻一屏;
                        b: 向文件首部翻一屏;
                        Ctrl+d:向文件尾部翻半屏;
                        Ctrl+u:向文件首部翻半屏;
                        回车键:向文件尾部翻一行;
                        k: 向文件首部翻一行;
                        G:跳转至最后一行;
                        nG: 跳转至指定的第n行;
                        1G:跳转至文件首部;
    
            文本搜索:
                        /keyword(关键词):从文件首部向文件尾部依次查找;不区分字符大小写;
                        ?keyword:从文件尾部向文件首部依次查找;
                        n: 与查找命令方向相同;
                        N: 与查找命令方向相反;
    
            退出:
                    q: quit
    
            选项:
                   -M /PATH/TO/SOMEDIR:到指定目录下查找命令手册并打开之;
    
            练习:获取useradd命令的用法
                        (1) 添加用户gentoo;
                            # useradd gentoo
                        验证方法# id gentoo
                        (2) 添加用户slackware,要求指定其所用的shell为/bin/tcsh;
                            # useradd -s /bin/tcsh slackware
                            # tail -1 /etc/passwd
    
        (3) info COMMAND
                 获取命令的在线文档;
    
        (4) 很多应用程序会自带帮助文档:/usr/share/doc/APP-VERSION
                    README:程序的相关的信息;
                    INSTALL: 安装帮助;
                    CHANGES:版本迭代时的改动信息;
    
        (5) 主流发行版官方文档
                    http://www.redhat.com/doc
    
        (6) 程序官方的文档:
                官方站点上的“Document”
    
        (7) 搜索引擎
               google
    
                ...

原文地址:https://blog.51cto.com/14308074/2392778

时间: 2024-10-11 18:13:22

Linux History&man的相关文章

linux history

Linux命令总结-history命令 (1)命令功能 history命令用于显示指定数目的指令命令,读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入历史命令文件. 说明:bash启动的时候会读取~/.bash_history文件并载入到内存中,这个变量就用于设置.bash_history文件,bash退出时也会把内存中的历史回写到.bash_history文件,即history中显示的命令只保存在当前历史命令缓冲区中,只有退出登陆后系统才会把缓冲区的内容写入到历史命令文件

linux history历史记录命令详解

一.什么是history在bash功能中,它能记忆使用过的命令,这个功能最大的好处就是可以查询曾经做过的举动!从而可以知道你的运行步骤,那么就可以追踪你曾下达过的命令,以作为除错的工具! 二.History的保存那么命令记录在哪里呢?在家目录内的 .bash_history 里! 不过,需要留意的是,~/.bash_history 记录的是前一次登陆以前所运行过的命令,而至于这一次登陆所运行的命令都被缓存在内存中,当你成功的注销系统后,该命令记忆才会记录到 .bash_history 当中! 查

Linux History安全问题【保存记录防止删除】+完善Linux/UNIX审计 将每个shell命令记入日志

2011-09-27 22:11:51|  分类: rhel5_033|举报|字号 订阅 Linux利用PROMPT_COMMAND实现审计功能 这个系统审计,记录什么用户,在什么时间,做了什么操作. 然后将查到的信息记录到一个文件里. 一. 配置 1. 在/etc/profile 文件的最后,添加如下2行代码: export HISTORY_FILE=/var/log/`date ‘+%Y%m’`.log export PROMPT_COMMAND=’{ date “+%Y-%m-%d %T

Linux history时间用户ip设置

在使用linux服务器的时候发生一些不知道谁操作的问题,google一下说history命令可以查看到历史记录,用过之后发现还是不够详细,再google,原来可以自己设置history的显示. 1.用vi编辑器打开/etc/profile 2.最后加两句代码 USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'` export HISTTIMEFORMAT="[%F %T][`whoami`][${US

linux history简单笔记!

添加:rm -f $HOME/.bash_history history行为审计: [[email protected] ~]# history     33  node6 2016-09-06-13-13-22 root 192.168.1.243 ./history.sh     34  node6 2016-09-06-13-13-22 root 192.168.1.243 cat history.sh     35  node6 2016-09-06-13-13-22 root 192.

让linux history命令显示命令的执行时间、在哪个机器执行的这个命令

1.在/etc/profile的最后添加如下部分: USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'` export HISTTIMEFORMAT="[%F %T][`whoami`][${USER_IP}] " 2. source /etc/profile 3.随便执行一下什么命令, 4.执行history,看效果: 311  [2013-08-28 14:39:20][root][19

linux history命令优化

主要功能: 1, 可以记录哪个ip和时间(精确到秒)以及哪个用户,作了哪些命令 2,最大日志记录增加到4096条 把下面的代码直接粘贴到/etc/profile后面就可以了 #history modify export HISTTIMEFORMAT="[%Y.%m.%d %H:%M:%S-$USER_IP-$USER]" USER_IP=`who -u am i &>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'` if [

Linux history命令

echo $HISTSIZE    #显示命令历史缓存条目数量 history -c        #清除命令历史记录 history 其它使用技巧: ![字母]         #执行匹配该字母的最近使用的命令. !!             #执行上一条命令 !$             #引用上一个命令的最后一个参数 给history:操作历史记录 添加日期.执行的用户等信息: echo 'HISTTIMEFORMAT="%F  %T  `whoami` "' >> 

[Linux]history 显示命令执行的时间

显示历史命令之行时间 这里的环境是centos5.8 vim ~/.bashrc 或者 ~/.bash_profile 增加 export HISTTIMEFORMAT="%F %T " 一次会话的话先执行 export HISTTIMEFORMAT="%F %T " 然后使用history 命令就行了 # history 500|grep get_charge_by_month 1002 2014-09-02 10:17:34 history -500|grep