• linux bash的命令行操作 简单


    转自:http://os.51cto.com/art/201006/207323.htm

    http://os.51cto.com/art/201006/207329.htm

    在向大家详细介绍LINUX Bash之前,首先让大家了解下命令行进行编辑,然后全面介绍LINUX Bash,希望对大家有用。在LINUX Bash中可以对命令行进行编辑,以便用户在执行所键入的命令之前能够修改所键入的命令。

    命令行编辑

    在LINUX Bash中可以对命令行进行编辑,以便用户在执行所键入的命令之前能够修改所键入的命令。如果在键入命令时出现拼写错误,只需在运行所键入的命令之前,使用编辑命令来纠正编辑错误,然后执行它,而不用重新输入整行命令。这个功能对以长路径文件名作参数的命令特别有用。

    表10-2是对命令行编辑操作的一个总结。表10-2 命令行编辑操作

    LINUX Bash命令行编辑操作

    功能
    Ctrl+b            或左箭头键 左移一个字符(移至前一个字符)
    Ctrl+f            或右箭头键 右移一个字符(移至后一个字符)
    Ctrl+a            移至行首
    Ctrl+e            移至行尾
    Esc b             左移一个单词
    Esc f             右移一个单词
    Del               删除光标所在处的字符
    Ctrl+d            删除光标所在处的字符
    BACKSPACE或Ctrl+h 删除光标左边的字符
    Ctrl+k            删除至行尾

    命令历史

    在LINUX Bash中,history命令能够保存最近所执行的命令。这些命令的历史记录号从1开始,只有有限个命令可以被保存起来,最多500个,即history命令的历史记录号缺省值为500。要查看最近执行的命令,只要键入history命令,然后键入回车键,最近执行过的命令即按先后顺序被显示出来(各条命令前的数字为历史记录号)。
    $ history
    1 cp mydata today
    2 vi mydata
    3 mv mydata reports
    4 cd reports
    5 ls

    所有这些LINUX Bash命令都被称为事件(event),一个事件表示一个操作已经发生,即一个命令已被执行。这些事件根据它们被执行的先后顺序用数字标识,这一标识称为历史事件号。最后执行的历史事件的事件号最大。每个事件都可由它的历史事件号或命令的初始字符或字符串等确定。

    顺便总结一下bash命令行历史的用法:

    • history: 命令查看以前用过的命令行列表。
    • !123: 执行命令历史中编号为123的命令。
    • !cat: 执行最后一条以cat开头的命令。
    • !!: 执行上一条命令。
    • fc: 打开编辑器(vim)编辑上一条命令。
    • fc 123: 编辑命令历史中编号为123的命令。
    • fc 123 130: 编辑命令历史中123-130的八条命令,退出后依次执行
    • fc ls: 编辑最后一条以ls开头的命令。
    • fc -s ls=cat ls: 将最后一条以ls开头的命令中的ls替换成cat,然后执行

    主要Shell内置命令

    Shell有很多内置在其源代码中的命令。这些命令是内置的,所以Shell不必到磁盘上搜索它们,执行速度因此加快。不同的Shell内置命令有所不同。

    A.2.1  bash内置命令

    .:执行当前进程环境中的程序。同source。

    . file:dot命令从文件file中读取命令并执行。

    : 空操作,返回退出状态0。

    alias:显示和创建已有命令的别名。

    bg:把作业放到后台。

    bind:显示当前关键字与函数的绑定情况,或将关键字与readline函数或宏进行绑定。

    break:从最内层循环跳出。

    builtin [sh-builtin [args]]:运行一个内置Shell命令,并传送参数,返回退出状态0。当一个函数与一个内置命令同名时,该命令将很有用。

    cd [arg]:改变目录,如果不带参数,则回到主目录,带参数则切换到参数所指的目录。

    command comand [arg]:即使有同名函数,仍然执行该命令。也就是说,跳过函数查找。

    declare [var]:显示所有变量,或用可选属性声明变量。

    dirs:显示当前记录的目录(pushd的结果)。

    disown:从作业表中删除一个活动作业。

    echo [args]:显示args并换行。

    enable:启用或禁用Shell内置的命令。

    eval [args]:把args读入Shell,并执行产生的命令。

    exec command:运行命令,替换掉当前Shell。

    exit [n]:以状态n退出Shell。

    export [var]:使变量可被子Shell识别。

    fc:历史的修改命令,用于编辑历史命令。

    fg:把后台作业放到前台。

    getopts:解析并处理命令行选项。

    hash:控制用于加速命令查找的内部哈希表。

    help [command]:显示关于内置命令的有用信息。如果指定了一个命令,则将显示该命令的详细信息。

    history:显示带行号的命令历史列表。

    jobs:显示放到后台的作业。

    kill [-signal process]:向由PID号或作业号指定的进程发送信号。输入kill-l查看信号列表。

    let:用来计算算术表达式的值,并把算术运算的结果赋给变量。

    local:用在函数中,把变量的作用域限制在函数内部。

    logout:退出登录Shell。

    popd:从目录栈中删除项。

    pushd:向目录栈中增加项。

    pwd:打印出当前的工作目录。

    read [var]:从标准输入读取一行,保存到变量var中。

    readonly [var]:将变量var设为只读,不允许重置该变量。

    return [n]:从函数中退出,n是指定给return命令的退出状态值。

    set:设置选项和位置参量。

    shift [n]:将位置参量左移n次。

    stop pid:暂停第pid号进程的运行。

    suspend:终止当前Shell的运行(对登录Shell无效)。

    test:检查文件类型,并计算条件表达式。

    times:显示由当前Shell启动的进程运行所累计用户时间和系统时间。

    trap [arg] [n]:当Shell收到信号n(n为0、1、2或15)时,执行arg。

    type [command]:显示命令的类型,例如:pwd是Shell的一个内置命令。

    typeset:同declare。设置变量并赋予其属性。

    ulimit:显示或设置进程可用资源的最大限额。

    umask [八进制数字]:用户文件关于属主、属组和其他用户的创建模式掩码。

    unalias:取消所有的命令别名设置。

    unset [name]:取消指定变量的值或函数的定义。

    wait [pid#n]:等待pid号为n的后台进程结束,并报告它的结束状态。

  • 相关阅读:
    体验用yarp连接websocket
    从 ASP.NET Core 5.0 迁移到.NET 6
    对接网易云信音视频2.0呼叫组件集成到vue中,实现web端呼叫app,视频语音通话。
    .NET6 WebAPI 自定义过滤器
    .NET6 WebApi 获取访问者IP地址
    .NET6 部署到 IIS
    .NET6 WebApi JSON传到前台默认变成小驼峰
    开发环境 测试环境 生产环境
    .NET6 WebApi 使用 log4net
    .NET6 WebApi 解决跨域问题
  • 原文地址:https://www.cnblogs.com/chyong168/p/2960725.html
Copyright © 2020-2023  润新知