• Linux入门


    用户与管理:

        root用户:超级管理员,权限已接近完整的系统控制

          对系统的损害几乎有无限的能力,除非必要,不要使用root登录机器

        普通用户:权限有限


    终端 terminal:

      • 服务器非必要部件 

      • 用户与主机交互,必然用到的设备

    物理终端:直接接入本机的显示器和键盘设备 /dev/console 虚拟终端:

    附加在物理终端之上的以软件方式虚拟实现的终端,设备文件路径:/dev/tty#,

    CentOS 6默认启动6个虚拟终端 Ctrl+Alt+F#: [1,6] 

    图形终端:属于虚拟终端,附加在物理终端之上的以软件方式虚拟实现的终端,但额外会提供桌面环境; 

    模拟终端:图形界面打开的命令行以及基于ssh协议或 telnet协议等远程打开的界面,设备文件:/dev/pts/# [0, ∞)

    • 查看当前的终端设备:tty


    什么是shell?

    •  Shell 是Linux系统的用户界面,提供了用户与内核进行交互操作 的一种接口。它接收用户输入的命令并把它送入内核去执行。 

    •  shell也被称为LINUX的命令解释器(command interpreter)

    •  shell是一种高级程序设计语言

      如图所示:


    bash shell:

        bash 是GNU计划重要的工 具软件之一,目前也是 Linux标准的shell ,与sh兼容。 

    1. 显示当前使用的shell命令:  echo ${SHELL}
    2. 显示当前系统所使用的所有shell: cat /etc/shells
        

    命令运行过程:

        输入命令后,回车,shell程序找到键入命令所对应的可执行程序或代码 ,并由其分析后提交给内核分配资源将其运行起来 

        shell中可执行的命令分为两大类,可以用  type COMMADN 查看

            内部命令:由shell自带的,而且通过某命令形式提供 enable命令可以启用或禁用内部命令 

            外部命令::在当前系统的某文件系统路径下有对应的可执 行程序文件

        hash命令:搜寻到的外部命令路径结果缓存至kv(key-value)存储中 

        

      注意:

    •  多选项,以及多参数和命令之间使用空白字符分隔 

    •  取消和结束命令执行:Ctrl+c,Ctrl+d

    •  多个命令可以用;符号分开 

    •  一个命令可以用\分成多行


    具有补全功能的Tab键:

        命令补全

        路径补全


    bash的快捷键:

    1. Ctrl+l  清屏,相当于clear命令 
    2. Ctrl+c 取消命令的执行 
    3. Ctrl-a 会移动到命令行的最前面 
    4. Ctrl-e 会移动到命令行的最后面 
    5. Ctrl-u 会删除到行首
    6. Ctrl-k 会删除到行尾
    7. arrow   ctrl-b  ctrl-f会向左或向右移动一个字符 
    8. Esc-b 左移一个单词 
    9. Esc-f 右移一个单词


    Linux一些简单的命令:

        cal -显示日历 

        screen命令:

          功能:用于协同工作,必须登录同一个用户 

            打开新的screen: screen –S [SESSION] 

            加入会话: screen –x [SESSION] 

            退出并关闭screen: exit 

            剥离当前screen: Ctrl+a,d 

            显示所有已经打开的screen: screen -ls 

            恢复某screen screen -r [SESSION]

        echo命令:

          功能:功能很强大,这只是一小部分功能,如显示字符

               echo会将输入的字符串送往标准输出。 

               输出的字符串间以空白字符隔开, 并在最后加 上换行号 

    1. echo "$VAR_NAME": 变量会替换,双引号表弱引用 
    2. echo '$VAR_NAME': 变量不会替换,强引用 
    3. $echo –e "Enter the file name: \c" ## echo 需要使用-e 参数来打印转义字符.

    echo命令选项:
    
    1. -n  不在字符的最后自动换行 
    2. -e  若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出: 
    3. \a  发出警告声
    4. \b  退格键 
    5. \c  最后不加上换行符号 
    6. \n  换行且光标移至行首 
    7. \r  光标移至行首,但不换行 
    8. \t  插入tab 
    9. \\  插入\字符
    10. \0nnn  插入nnn(八进制)所代表的ASCII字符 
    11. echo -e "\033[43;31mred color\033[0m" 
    12. \xHH 插入HH(十六进制)所代表的ASCII字符


    命令行扩展、被括起来的集合:

         命令行扩展:$( ) 或 ``  :把一个命令的输出打印给另一个命令的参数 

    1.    $ echo "This system's name is $(hostname) " 
    2.     This system's name is server1.example.com
    3.     $echo "i am `whoami` " 
    4.     i am root

        括号扩展:{ } :打印重复字符串的简化形式 

    1. echo file{1,3,5}
    2. file1 file3 file5 
    3. rm -f file{1,3,5}

  • 相关阅读:
    配电站房门禁监控、气体监测、视频监控系统 设备安装
    asp.net core mvc 路由
    C++【C++11】
    Java 那些诗一般的 数据类型 (1)
    5分钟学会 Lambda 表达式,一篇就够了!
    求解仿射变换矩阵
    C++ 就地构造对象
    微信小程序 按钮颜色
    MTK联发科、高通、紫光展锐手机SOC平台型号汇总(含详细参数)
    蓝桥杯刷题-约数的个数
  • 原文地址:https://blog.csdn.net/ly1358152944/article/details/126252288