• Linux


    命令编修能力 (history):

            bash 的功能里头,相当棒的一个就是『他能记忆使用过的命令!

    』 这功能真的相当的棒!由于我仅仅要在命令列按『上下键』就能够找到前/后一个输入的命令!

    而在非常多 distribution 里头。默认的命令记忆功能能够到达 1000 个!也就是说, 你以前下达过的命令差点儿都被记录下来了。

            这么多的命令记录在哪里呢?在你的家文件夹内的 .bash_history 啦!

    只是,须要留意的是。~/.bash_history 记录的是前一次登陆曾经所执行过的命令, 而至于这一次登陆所执行的命令都被缓存在内存中,当你成功的注销系统后。该命令记忆才会记录到 .bash_history 其中!

            这有什么功能呢?最大的优点就是能够『查询以前做过的举动。』 如此能够知道你的执行步骤。那么就能够追踪你曾下达过的命令。以作为除错的工具! 但如此一来也有个烦恼。就是假设被黑客入侵了。那么他仅仅要翻你以前执行过的命令, 刚好你的命令又跟系统有关 (比如直接输入 MySQL 的password在命令列上面),那你的主机可就伤脑筋了!

    究竟记录命令的数目越多还是越少越好?这部份是见仁见智啦,没有一定的答案的。



    命令与文件补全功能: ([tab] 按键的优点)

        [Tab] 接在一串命令的第一个字的后面,则为命令补全。
        [Tab] 接在一串命令的第二个字以后时。则为『文件补齐』!


    命令别名配置功能: (alias)

    能够在命令列输入 alias 就能够知道眼下的命令别名有哪些了。也能够直接下达命令来配置别名:



    工作控制、前景背景控制: (job control, foreground, background)

            使用前、背景的控制能够让工作进行的更为顺利!

    至于工作控制(jobs)的用途则更广, 能够让我们随时将工作丢到背景中执行!而不怕不小心使用了 [Ctrl] + c 来停掉该程序。真是好样的!

    此外,也能够在单一登录的环境中。达到多任务的目的呢!


    程序化脚本: (shell scripts)

            在 DOS 年代还记得将一堆命令写在一起的所谓的『批处理文件』吧?在 Linux 底下的 shell scripts 则发挥更为强大的功能,能够将你平时管理系统常须要下达的连续命令写成一个文件, 该文件而且能够透过对谈交互式的方式来进行主机的侦測工作!也能够藉由 shell 提供的环境变量及相关命令来进行设计。曾经在 DOS 底下须要程序语言才干写的东西,在 Linux 底下使用简单的 shell scripts 就能够帮你达成了!


    通配符: (Wildcard)

            除了完整的字符串之外。 bash 还支持很多的通配符来帮助用户查询与命令下达。 举例来说,想要知道 /usr/bin 底下有多少以 X 为开头的文件吗?使用:『 ls -l /usr/bin/X* 』就行知道啰~此外。还有其它可供利用的通配符。 这些都可以加快使用者的操作呢!


    Bash shell 的内建命令: type

            怎么知道这个命令是来自于外部命令(指的是其它非 bash 所提供的命令) 或是内建在 bash 其中的呢? 嘿嘿!

    利用 type 这个命令来观察就可以!

    举例来说:

    [root@www ~]# type [-tpa] name
    选项与參数:
        :不加不论什么选项与參数时,type 会显示出 name 是外部命令还是 bash 内建命令
    -t  :当增加 -t 參数时,type 会将 name 以底下这些字眼显示出他的意义:
          file    :表示为外部命令。
          alias   :表示该命令为命令别名所配置的名称;
          builtin :表示该命令为 bash 内建的命令功能;
    -p  :假设后面接的 name 为外部命令时。才会显示完整文件名称。
    -a  :会由 PATH 变量定义的路径中。将全部含 name 的命令都列出来,包括 alias
    
    范例一:查询一下 ls 这个命令是否为 bash 内建?
    [root@www ~]# type ls
    ls is aliased to `ls --color=tty' <==未加不论什么參数,列出 ls 的最主要使用情况
    [root@www ~]# type -t ls
    alias                             <==仅列出 ls 执行时的根据
    [root@www ~]# type -a ls
    ls is aliased to `ls --color=tty' <==最先使用 aliase
    ls is /bin/ls                     <==还有找到外部命令在 /bin/ls
    
    范例二:那么 cd 呢?
    [root@www ~]# type cd
    cd is a shell builtin             <==看到了吗? cd 是 shell 内建命令
    

  • 相关阅读:
    Flume_常见的几个问题
    Flume_使用
    Flume_初识
    日志分析_对一号店日志分析
    Hadoop_UDTF示例
    Hadoop_UDAF示例
    Hadoop_UDF示例
    Hive_数据倾斜处理
    Hadoop openssl false
    饶过验证后,用post的方式发送Http请求,获得response相应内容
  • 原文地址:https://www.cnblogs.com/gccbuaa/p/7140539.html
Copyright © 2020-2023  润新知