zoukankan      html  css  js  c++  java
  • 03 Linux系统组成和获取命令帮助

    远程连接:

      ssh协议:(简称:secure shell)

         ~]# ss -tnl

          查看系统监听于rcp协议的22号端口

         ~]# ifconfig 或 ip addr list

           查看本机 ip 地址

        在CentOS 7最小化安装中没有 ifconfig 这个命令,需要 yum install net-tools 命令来进行下载安装

      确保防火墙处于关闭状态:

        ~]# iptables -L -n   #查看一些防火墙规则

        ~]# iptables -F #临时清空防火墙的规则

        CentOS 7:

          ~]# systemctl disable firewalld.service  #先禁用防火墙

          ~]# systemctl stop firewalld.service   #停止防火墙使用

        CentOS 6:

          ~]# service iptables stop    

          ~]# chkconfig iptables off

    查看所使用的shell类型:

      ~]# echo $SHELL

    终端设备:terminal

      多任务、多用户

      物理终端,控制台:console

        键盘鼠标显示器直接接到电脑上的被称为物理终端设备(一般称为控制台:console),物理                      终端不是我们启动完系统真正用的终端,只有Linux在启动过程当中才会被直接使用。启动完之后                看到的是虚拟终端,因为是用软件模拟出来的所以被称为虚拟终端,虚拟终端默认6个虚拟终端

      虚拟终端:6个,tty

        Ctrl+Alt+F[1-6]

        笔记本按键有可能映射不一样

        不一定是6个虚拟终端,因为f7是图形化界面

      图形终端:

        CentOS 6:

          Ctrl+Alt+F7 

        CentOS 7:

          在哪个虚拟终端启动,即位于哪个虚拟终端

      串行终端:ttys

        串口输出

      伪终端:pty

        伪终端又称为模拟终端,远程连接的终端或图形界面下打开的终端接口

    系统正常启动,显示启动过程信息输出到物理终端,当物理终端被系统初始化后,称为虚拟终端(图形界面或Ctrl+Alt+F[1-6])打开图形界面模拟一个命令窗口就是伪终端,或者远程登入该系统,该终端也是伪终端

      区别当前系统是哪种终端:

        使用命令tty,表示当前终端对应的设备文件,(以下#表示数字)

          1.结果显示:/dev/pts/# 表示伪终端

          2.结果显示:/dev/tty# 表示虚拟终端

          3.结果显示:/dev/console 表示物理终端(控制台)

          4.结果显示:/dev/ttys# 表示串行终端

      同一用户登入系统,对应着不同体系/设备,属于不同进程下的用户,有设备就有对应的设备文件。

      命令:who 查看系统登入的所有用户及其信息

      Linux的哲学思想之一:一切皆文件

        表现之一:硬件设备也通过文件表示:

          物理终端:/dev/console

          虚拟终端:/dev/tty# [1-6]

          串行终端:/dev/ttys#

          伪终端:/dev/pts/#

      注意:在启动设备之后,在其上关联一个用户接口程序,即可实现与用户交互:

        查看终端设备:

          ~]# tty

        查看接口程序:

          ~]# echo $SHELL

        启动GUI:图形界面

          第一次启动图形化界面时需要在某一虚拟终端接口运行命令:startx &  (&符号表示在后台运行)

      GIL接口:

        命令行接口:

          [root@localhost ~]# command(命令)

            prompt:

              root:当前登录的用户

              localhost:当前主机的主机名,非完整格式

              ~:用户当前所在的目录(current directory),也称为工作目录(working directory);相对路径

              #:命令提示符:

                #:管理员账号,为 root;拥有最高权限,能执行所有操作

                $:普通用户,非 root;不具有管理权限,不能执行系统管理类的操作

              注意:建议使用非管理员账号登录;

                执行管理操作临时切换至管理员,操作完成即退回

      几个基础命令:

        tty:查看当前的终端设备

        ifconfig或 ip addr list:查看活动接口的ip地址

        echo:回显

        ping:探测网络的目标主机与当前主机之间的连通性

          Ctrl+c:终止命令执行

        关机命令:

          CentOS 7:

            ~]# systemctl poweroff 或直接 poweroff

        重启命令:

            ~]# systemctl reboot 或直接 reboot

            所有系统里边都可以运行 poweroff 和 reboot

      stallman:

        自由含义:自由学习和修改;自由使用;自由分发;自由创建衍生版;

      Linux的哲学思想:

        1.一切皆文件

          把几乎所有资源统统抽象为文件形式;包括硬件设备,甚至是通信接口等

            open(),read(),write(),close(),delete(),create()

        2.由众多功能单一的程序组成:一个程序只做一件事,并且做好

         组合小程序完成复杂任务;

        3.尽量避免跟用户交互

          目标:易于以编程的方式实现自动化任务

        4.使用文本文件保存配置信息:

      思考:文件是什么?众多文件如何有效组织起来?

        目录:路径映射:

        文件:存储空间存储的一段流式数据,对数据可以做到按名存取

        文件系统:层级结构;有索引

          /:原初起点

            第二层结构

            第三层结构

          倒置树状结构

          /dev/pts/2:

           最左侧 /:表示根目录

           其他的 /:表示路径分隔符

              Linux的路径分隔符是 /

              Windows的是

        文件的路径表示:

          绝对路径:从根开始表示出的路径

          相对路径:从当前位置开始表示出的路径

        文件名使用法则:

          严格区分字符大小写:file1,FILE1,File1,这三个文件完全不是一个文件

          目录也是文件,在同一路径下,两个文件不能同名;

          支持使用除了 / 以外的任意字符

          最长不能超过255个字符;

        用户有家目录:home

          用户的起始目录;普通用户管理文件的位置

        工作目录:

          /etc/sysconfig/network-scripts/ifcfg-en016777

            basename:最右侧的文件或目录名

            dirname(目录名):basename左侧的路径

          命令:

            ~]# basename /PATH/TO/SOMEFILE

              SOMEFILE

            ~]# dirname /PATH/TO/SOMEFILE

              /PATH/TO

    回顾:

      开源协定:

        GPL,LGPL,BSD,Apache

      BSD:

        1.如果二次发布的产品中包含源代码,则在源代码中必须带有原来的代码中的BSD协定

        2.如果二次发布的产品是二进制格式的库或程序,则需要在发布的文档或版权声明中说明包含原来的代码中的BSD协定

        3.不可以用开源代码的作者或组织,以及原来的产品的名字做市场推广

    代码的共产主义运动

    文件系统、文件、目录:

      倒置树状结构:

        目录:

        文件:

      文件名:严格区分字符大小写;路径分隔符 /:

    路径:

      绝对路径

      相对路径

    程序的组成部分:二进制程序文件、库文件、配置文件、帮助文件;

      二进制、库文件:可执行文件

        库文件:不能独立执行,只能被调用时执行

      配置文件、帮助文件:可被查看其内容的文件

    人机交互界面:

      GUI

      CLI

    Linux基础知识

      命令的语法通用格式:

        # command options arguments

          发起一个命令:请求内核某个二进制程序运行为一个进程;

            程序 --》进程

            静态--》动态(有生命周期)

          命令本身是一个可执行的程序文件:二进制格式的文件,有可能会调用共享库文件;

            多数程序文件都存在:/bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin

              普通命令:/bin,/usr/bin,/usr/local/bin

              管理命令:/sbin,/usr/sbin,/usr/local/sbin

            共享库:/lib,/lib64,/usr/lib,/usr/lib64,/usr/local/lib,/usr/local/lib64

              32bits的库:/lib,/usr/lib,/usr/local/lib

              64bits的库:/lib64,/usr/lib64,/usr/local/lib

              在32bits的库上边不会出现64bits的库,因为32位不兼容64位的

              在64bits的库上边会出现32bits的库,因为64位兼容32位的

            注意:并非所有的命令有一个在某目录与之对应的可执行程序文件

          命令必须遵循特定格式规范:exe,msi,ELF(Linux)

            ~】# file /bin/ls

          命令分为两类:

            由shell程序的自带的命令:内置命令(builtin)

            独立的可执行程序文件,文件名即命令名:外部命令

          shell程序是独特的程序,负责解析用户提供的命令:

            环境变量:

              PATH:从哪些路径中查找用户键入的命令字符串所对应的命令文件

                ~]# echo $PATH

                /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

                查找次序:自左而右

        查看命令类型:

          type command

        shell内置命令不会在某个路径下存在一个命令的文件名

        OPTIONS(选项):

            指定命令的运行特性和不同的功能

            选项有两种表现形式:

                短选项:-c,例如-l,-d

                  注意:有些命令的选项没有-;

                  如果同一命令同时使用多个短选项,多数可合并:-l -d = -ld

                长选项:--word,例如---help,--human-readable

                  注意:长选项不能合并

                 注意:有些选项可以带参数,此称为选项参数

        ARGUMENTS:

          命令作用的对象,命令对什么生效

          注意:不同的命令的参数;有些命令可同时带多个参数,多个之间以空白字符分隔

        例如:ls -l -d /var /etc

      获取命令的使用帮助:

          内部命令:

            help command

          外部命令:

            1.命令自带简要格式的使用帮助

              # command --help

            2.使用手册:manual

             位置:/usr/share/man

              # man command

                SECTION:

                    NAME:简要功能性说明

                    SYNOPSIS:语法格式

                    DESCRIPTION:描述

                    OPTIONS:选项

                    EXAMPLES:使用示例

                    AUTHOR:作者

                    BUGS:报告程序BUG的方式

                    SEE ALSO:参考

                SYNOPSIS:

                    []:可选内容

                    <>:必须提供的内容

                    a|b:多选一

                    ...:同类内容可出现多个

              使用手册:压缩格式的文件,有章节之分:

                /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:向文件首部翻半屏

                    ↓:向文件尾部翻一行

                    ↑:向文件首部翻一行

                    G:跳转至文件最后一行

                    nG:跳转至指定行

                    1G:跳转至文件首部

                文本搜索:

                  /keyword:从文件首部向文件尾部依次查找

                  ?keyword:从文件尾部向文件首部依次查找

                    n:与查找命令方向相同

                    N:与查找命令方向相反

                退出:

                  q:quit

              选项:

                -M /PATH/TO/SOMEDIR:到指定目录下查找命令手册并打开之

              练习:获取useradd命令的用法

                (1):添加用户xing

                    # useradd xing

                    # id xing

                (2):添加用户xinchao,要求指定其所用的shell为/bin/bash

                    # useradd -s /bin/bash xinchao

                    # 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

               keyword filetype:pdf

               keyword site:domain.tld

               ...

        书籍的出版社:

          O‘Reiley

          wrox

          机械工业出版社

          电子工业出版社

          清华大学

          水利水电

    常用命令:

      Linux文件系统:

        1.文件名名称严格区分字符大小写

        2.文件可以使用除/以外任意字符(不建议使用)

        3.文件名长度不能超过255个字符

        4.以.开头的文件为隐藏文件

          .:当前目录

          ..当前目录的上一级目录

      工作目录:

      家目录:home

      常用命令:

        pwd:printing working directory

          显示当前工作目录

        cd:change directory

          cd [/path/to/somedir]

            cd:不带任何选项参数的时候是切换回家目录

              注意:bash中,~表示家目录

              cd ~:切换回自己的家目录

              cd ~username:切换至指定用户家目录

                注意:只有管理员root才能随便切换至其他家目录

              cd -:在上一次所在目录与当前目录之间来回切换

                   相关的环境变量

                    $PWD:当前工作目录

                  $OLDPWD:上一次的工作目录

          

                  这两个环境变量会随时改变的

          ls:list,列出指定目录下的内容

            ls [OPTION]... [FILE]...

              -a:显示所有文件,包括隐藏文件

              -A:显示除.和..之外的所有文件

              -l:--long,长格式列表,即显示文件的详细属性信息

                -rw-r--r--.  1 root root  129 12月 25 10:19 .lesshst

                -:文件类型,-,d,b,c,l,s,p

                rw-r--r--

                   rw-:文件属主的权限

                   r--:文件属组的权限

                   r--:其他用户(非属主、属组)的权限

                1:数字表示文件被硬链接的次数

                root:文件的属主

                root:文件的属组

                129:数字表示文件的大小,单位是字节

                12月 25 10:19:文件最近一次被修改的时间

                .lesshst:文件名

               -h:--human-readable:对文件大小单位换算,换算后结果可能会非精确值

               -d:查看目录自身而非其内部的文件列表

               -r:reverse,逆序显示

               -R:recursive,递归显示

          cat:concatenate

            文本文件查看工具

            cat /etc/fstab

            cat /etc/passwd

          cat [OPTION]... [FILE]...

            -n:给显示的文本行编号

            -E:显示行结束符$

          tac:和cat显示内容相反,是逆序显示

           文本文件查看工具

            cat /etc/fstab

            cat /etc/passwd

          cat [OPTION]... [FILE]...

            -n:给显示的文本行编号

            -E:显示行结束符$

          file:查看文件内容类型

            file [filename]...

          echo:回显命令

            echo [SHORT-OPTION]... [STRING]...

              -n:不进行换行

              -e:让转义符生效

                 :换行

                 :制表符

            STRING可以使用引号,单引号和双引号均可用

              单引号:强引用,变量引用不执行替换

              双引号:弱引用,变量引用会被替换

          注意:变量引用的正规符号

               ${name}

        关机或重启命令:shutdown

            shutdown [OPTIONS...] [TIME] [WALL...]

              OPTIONS:

                -h:halt

                -r:reboot

                -c:cancel

            TIME:

              now:立刻关机

              hh:mm:表示几点几分

              +m:m表示为数字,例如10表示10分钟后关机,+0和now一个意思

            WALL

        日期相关的命令:

          Linux:系统启动时从硬件读取日期和时间信息,读取完成以后,就不再与硬件相关联

            系统时钟

            硬件时钟

          date:系统时钟

            显示日期时间:date [OPTION]... [+FORMAT]

                    FORMAT:格式符

                      %F

                      %T

                      %Y

                      %m

                      %d

                      %H

                      %M

                      %S

                      %s:从1970年1月1号(unix元年)0点0分0秒到命令执行的那一刻秒数

                      ...

            设置日期时间:date [MMDDhhmm[[CC]YY][.ss]] 月日小时分钟年份秒数

              date 101008082013.08      

          clock,hwclock:硬件时钟

            显示或设定硬件时钟

                -s, --hctosys:以硬件为准,把系统调整为与硬件时间相同

                -w, --systohc:以系统为准,把硬件时间调整为与系统时钟相同

          cal:calendar(日历)

            cal  [month] year]

      课外作业:

        which,whereis,who,w

  • 相关阅读:
    还得还得学啊
    感觉自己写的东西很死板啊
    好烦啊,不知道选哪个?
    222
    111
    愁人啊
    ssm+ajax实现登陆
    ssm框架搭建
    抽象类与接口
    代理设计模式
  • 原文地址:https://www.cnblogs.com/self-discipline-xxc/p/10165965.html
Copyright © 2011-2022 走看看