bash的基础特性之一

bash的基础特性之一

命令历史:shell进程会保存会话中此前用户使用过的命令;

history:命令的用法
history 【-c】【-d #】 【n】或者【文件名】
    -c:清空命令历史
    -d 【#】:删除指定的命令历史
    -r:从文件读取至历史列表
    -w:把历史列表中的命令追加到历史文件中
history # 显示最近的#条命令
命令调用:
   !#:调用历史列表中的第#条命令
   !!:再次执行上一条命令
historyd 环境变量可以定制history命令
HISTSIZE:shell进程可保留的历史条数
HISTFILE:长期保存的命令历史文件
HISTFILESIZE:命令历史文件的大小

调用上一条命令的最后一个参数:
组合键 按ESC后按.
字符串:!$

命令补全

命令补全:根据PATH环境变量中设定的目录,自左而右逐个搜索目录下的文件名;给定的打头字符串如果能惟一标识某命令程序文件,则直接补全; 不能惟一标识某命令程序文件,再击tab键一次,会给出列表;

路径补全:

在给定的起始路径下,以对应路径下的打头字串来逐一匹配起始路径下的每个文件:

tab:如果能惟一标识,则直接补全;

否则,再一次tab,给出列表;

命令行展开:

~:自动展开为用户的家目录,或指定的用户的家目录;

{}:可承载一个以逗号分隔的路径列表,并能够将其展开为多个路径;

命令的执行状态结果:

bash通过状态返回值来输出此结果:

成功:0

失败:1-255

失败状态返回值脚本可自定义用 exit=#(1-255)

命令执行完成之后,其状态返回值保存于bash的特殊变量$?中;命令正常执行时,有的还回有命令返回值;根据命令及其功能不同,结果各不相同

引用命令的执行结果:

$(COMMAND)
`COMMAND`

引用

    强引用:''
    弱引用:""
    命令引用:``

快捷键

    Ctrl+a:跳转至命令行行首
    Ctrl+e:跳转至命令行行尾

    Ctrl+u:删除行首至光标所在处之间的所有字符;
    Ctrl+k:删除光标所在处至行尾的所有字符;

    Ctrl+l:清屏,相当于clear

常用基本命令

alias:定义别名
    alias NAME='COMMAND'
    unalias NAME
    **注意:仅对当前shell进程有效**

which:显示shell命令的完整路径
    --skip-alias:忽略别名

whereis:查找命令的二进制程序路径
        b: 仅搜索二进制程序路径;
        -m:仅搜索使用手册文件路径;

who:显示登陆用户
    -b: 系统此次启动的时间;
    -r: 运行级别;

w:显示登陆用户及其正在运行的进程

terr:以树状格式列出目录的内容

文件查看类命令

more和less:分屏查看文件
    more FILE
    less FILE

head:查看文件的前n行
    tail [options] FILE
    -n #
    -#
    -f:查看文件尾部内容结束后不退出,跟随显示新增的行

stat:查看文件的时间戳
    stat FILE...

touch:更改文件时间戳(可创建文件)
    touch [OPTION]... FILE...
            -c: 指定的文件路径不存在时不予创建;
            -a: 仅修改access time;
            -m:仅修改modify time;
            -t STAMP
                [[CC]YY]MMDDhhmm[.ss]

文件管理工具

cp:复制

    源文件 目标文件

    单源复制:cp [OPTION]... [-T] SOURCE DEST
    多源复制:cp [OPTION]... SOURCE... DIRECTORY
             cp [OPTION]... -t DIRECTORY SOURCE...

    单源复制:cp [OPTION]... [-T] SOURCE DEST
            如果DEST不存在:则事先创建此文件,并复制源文件的数据流至DEST中;
            如果DEST存在:
            如果DEST是非目录文件:则覆盖目标文件;
            如果DEST是目录文件:则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流;

    多源复制:cp [OPTION]... SOURCE... DIRECTORY
             cp [OPTION]... -t DIRECTORY SOURCE...
            如果DEST不存在:错误;
            如果DEST存在:
                如果DEST是非目录文件:错误;
                如果DEST是目录文件:分别复制每个文件至目标目录中,并保持原名;

    常用选项:
            -i:交互式复制,即覆盖之前提醒用户确认;
            -f:强制覆盖目标文件;
            -r, -R:递归复制目录;
            -d:复制符号链接文件本身,而非其指向的源文件;
            -a:-dR --preserve=all, archive,用于实现归档;
            --preserv=
                mode:权限
                ownership:属主和属组
                timestamps: 时间戳
                context:安全标签
                xattr:扩展属性
                links:符号链接
                all:上述所有属性

mv命令:move
       mv [OPTION]... [-T] SOURCE DEST
       mv [OPTION]... SOURCE... DIRECTORY
       mv [OPTION]... -t DIRECTORY SOURCE..         

       常用选项:
            -i:交互式;
            -f:force 强制

rm命令:remove
        rm [OPTION]... FILE...

        常用选项:
            -i:互交式
            -f:force 强制
            -r: recursive 递归

            删除目录:rm -rf /PATH/TO/DIR

原创文章,作者:N24-执念,如若转载,请注明出处:http://www.178linux.com/63993

(0)
N24-执念N24-执念
上一篇 2016-12-17
下一篇 2016-12-18

相关推荐

  • 再不自动化就晚啦!优云教你4步打造基于CentOS的产品镜像

    随着Linux程序的增多,软件的安装过程中经常出现如下问题: 1、硬件配置类似或者相同时,批量安装系统和软件,希望实现自动化安装,减少安装时间和人为出错。 2、工程实施人员在不同客户现场进行系统和软件安装(硬件配置不同),由于硬件有差别,不容易实现自动化。 笔者针对以上场景,从提高生产效率,减少误操作的立场,提出如下解决方案,希望能达到抛砖引玉的目的,并能与…

    系统运维 2016-07-16
  • N25期第八周作业

    1.请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别 主要功能: 网桥是一个局域网与另一个局域网之间建立连接的桥梁,属于数据链路层的一种设备。 集线器是可以将一些机器连接起来组成一个局域网的设备。 二层交换机是工作于OSI模型的第2层(数据链路层)的设备,作用和集线器类似。 三层交换机就是具有部分路由器功能的二层交换机。 路由器是互联…

    Linux干货 2017-03-08
  • DHCP简介及简单实践

    一、引言 DHCP全称Dynamic Host Configure Protocol,动态主机配置协议,用于向网络中的计算机分配IP地址及一些TCP/IP配置信息。DHCP提供了安全,可靠且简单的TCP/IP网络设置,避免了TCP/IP网络地址的冲突,同时大大降低了工作负担。 二、DHCP工作流程 DHCP采用C/S架构,即Server/Client,它的简…

    Linux干货 2017-01-10
  • linux 简单命令

    前面介绍一些基本基础篇 后面主要介绍screen命令的用法。

    2017-11-19
  • Linux基础指令(2)

    4.文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?  元数据定义:      数据(Metadata),又称中介数据、中继数据,为描述 数据的数据(data about data),主要是描述数据属性(property)的信息,用来支持如…

    Linux干货 2016-11-09
  • 8-2 作业

    8-2作业     1.在/data/testdir里创建的新文件自动属于g1组,组g2的成员如:alice能对这些新文件有读写权限,组g3的成员如:tom只能对新文件有读权限,其它用户(不属于g1,g2,g3)不能访问这个文件夹。 2.创建组sales,gid 3000,passwd:centos,sales admins:user2。…

    Linux干货 2016-08-05

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-23 12:45

    赞~可以再继续扩充一下博客内容,继续加油~