02day-Linux基础入门及简单的命令了解

Linux哲学思想:

1、一切皆文件;

         把几乎所有资源,包括硬件设备都组织为文件格式;

2、由众多单一目的小程序组成;一个程序只实现一个功能,而且要做好;

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

   3、尽量避免跟用户交互;

         目标:实现脚本编程,以自动完成某些功能;

   4、使用纯文本文件保存配置信息;

         目标:一款使用的文本编程器即能完成系统配置工作;

第1章   Linux基础入门

1.1 Linux终端介绍:

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

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

   刚开机的时候,程序还没有启动,程序启动完成后默认以虚拟终端1,或者图形终端

      设备文件:/dev/console

虚拟终端:附加在物理终端之上的以软件方式虚拟实现的终端,centos6默认启动6个虚拟终端

      Ctrl+Alt+F#:[1,6]  Alt+F1切回图形界面

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

      设备文件路径:/dev/tty#

模拟终端:完全以软件方式虚拟实现

      图形界面下打开的命令行接口

      使用sshtelnet协议远程打开的界面

      设备文件:/dev/pts/#

查看当前终端

      使用tty命令

1.2 交互式接口

启动终端后,在终端设备附加一个交互式应用程序

       GUI:

              X protocol+window manager+desktop=GUI

             

              Desktop:

                     GNOME: C GTK

                     KDE:     C++ QT

                     XFCE: 轻量级桌面

       CLI:     

              shell程序

                     sh

                     csh

                     ksh  商业版

                     bash

                     zsh

       显示当前使用的shell

      # echo $SHELL

   显示当前系统启用的所有shell:

      # cat /etc/shells

1.3 shell提示符

命令提示符(prompt):

   使用PS1环境变量定义

   管理员:#

   普通用户:$

[root@www ~]# echo $PS1
[\u@\h \W]\$

 [用户@主机名 当前目录名称]提示符

1.4 命令使用方法

输入命令,回车:

提醒shell程序找到键入命令所对应的可执行程序或代码,并由其分析后提交给内核分配资源将其运行起来,表现为一个或多个进程

命令类型:

   shell中可执行的命令有两类:

      内建命令:由shell自带的,而且通过某命令形式提供

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

         which,whereis

      区分内建命令和外部命令:

         使用type命令

          # type COMMAND

运行命令:

       命令格式:

              COMMAND [OPTIONS…] [ARGUMENTS…]

                     选项:用于启用或关闭命令的某些功能

                         短选项:-c(一个字符),例如:-l,-h

                             多个短选项可以合并使用,例如:ls -lh

                         长选项:–word(一个单词),例如:–long –help

                     参数:命令的作用对象

                         向命令提供数据:例如: ls -lh /etc /etc即为参数

       注意:

            1、多选项,以及多参数和命令之间都应该使用空白字符分隔

            2、取消命令执行:Ctrl+c

1.5文件系统

   windows:C:\Progam files\ofiice15\word.exe

   Linux:/etc/sysconfig/network-scripts/ifcfg-eth0

   Linux:一切从根开始

 

   文件有两类数据:

              元数据:metadata

              数据:data

       Linux文件系统特性:

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

              2、文件名可使用除/以为的任意字符,不建议使用特殊字符

                     /:根目录,路径分隔符

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

              4、所有.开头的文件 均为隐藏文件

   路径:

              绝对路径:从根目录起始的路径

              相对路径:从当前位置起始的路径

                     当前位置的表示方式:

                            1./  ./sysconfig/network-scripts

                            2、省略上述符号:sysconfig/network-scripts

 

                            ..表示当前目录的父目录

 

              当前目录:current directory 也称作working directory

                     pwdprinting working directory

 

       LSB:Linux Standard Base Linux标准库

第2章   Linux基础命令

命令总结:

   ls cd type tty cat which whereis pwd echo

命令:

   文件系统相关:

      目录管理

      文件管理

      文件查看

      文件编辑

   系统管理相关:

2.1  Linux命令帮助获取

   内建命令:

       # help COMMAND

         如果使用man获取的将是整个bash的帮助手册

   外部命令:

      <1> # COMMAND –help

            # COMMAND -h

      <2>使用手册(manual

            # man COMMAND

      <3>信息页

            # info COMMAND

      <4>程序自身的帮助文档

            README

            INSTALL

            Changelog

      <5>程序官方文档

             官方站点:Documentation

      <6>发行版的官方文档

      <7> Google

          http://www.slideshare.net/  需翻墙

内部命令使用帮助详解

使用帮助了解命令:

hash命令: 

       shell搜寻到的外部命令的路径结果会缓存至kv(key/value)存储中

       清除所有缓存:hash -r

history命令:

   管理命令历史:

              登录shell时,会读取命令历史文件中记录下的命令:~/.bash_history

              登录进shell后新执行的命令只会记录在缓存中,这些命令会在用户退出时追加至命令历史文件中

       history:

              -a:追加本次会话新执行的命令历史列表至历史文件中

              -d: 删除历史中指定的命令

              -c:清空命令历史

   快捷操作:

              !# 调用历史中第#条命令

              !string 调用历史中最近一个以string开头的命令

              !! 执行上一条命令

外部命令帮助获取:

   man COMMAND

          手册页:/usr/share/man

           man1: 用户命令

           man2: 系统调用

           man3: C库调用

           man4: 设备及特殊文件

           man5: 配置文件格式

           man6: 游戏

           man7: 杂项

           man8: 管理类的命令

    注意:有些关键不止一个章节中存在帮助手册

         要查看指定章节中的手册:man # COMMAND

         不确定有哪些章节可以使用:whatis COMMAND查看   

[root@www ~]# whatis man
man                  (1)  - format and display the on-line manual pages
man.config [man]     (5)  - configuration data for man
man [manpath]        (1)  - format and display the on-line manual pages

man命令的配置文件:

centos 6: /etc/man.config

centos 7: /etc/man_db.conf

MANDATORY_MANPATH             /PATH/TO/SOMEWHERE===>指明新的手册文件搜索位置

 # man -M /PATH/TO/SOMEWHERE COMMAND:到指定位置下搜索COMMAND命令的手册页并显示之

 

帮助手册段落说明:

        NAME       名字,简要说明

        SYNOPSIS   命令简要使用帮助

        DESCRIPTION  命令功能详细描述

        OPTIONS       选项

        EXAMPLES   使用事例

        AUTHOR     作者

        PREORTING BUGS  报告bug

        SEE ALSO

 

SYNOPSIS中符号意义

              []: 可选内容

              <>: 必选内容

              a|b:二选一

              ….: 同一内容可出现多次

man命令操作方法:

           Space,^V,^f,^F: 向文件尾部翻一屏

           b,^B:向文件首部翻一屏     

           d,^D: 向文件尾部翻半屏

           u,^U:向文件首部翻半屏

           RETURN or ^N or e or ^E or j or ^J:向文件尾部翻一行

           y or ^Y or ^P or k or ^K: 向文件首部翻一行

           q: 退出

           #:跳转至第#

           1G: 回到文件首部

           G:首部翻至文件尾部

文本搜索:

/KEYWORLD:

          KEYMORD指定的字符串为关键字,从当前位置向文件尾部搜索。不区分字符大小写

                  n: 下一个

                  N: 上一个

?KEYWORD:

          KEYWORD指定的字符串为关键字,从当前位置向文件首部搜集,不区别大小写

                  n: 跟搜索命令相同方向

                  N: 跟搜索命令相反

2.2 时间相关命令

date

   date [OPTION]… [+FORMAT]  —->显示日期时间

      FORMAT:格式符号

         %a:显示星期几,简写的     

        [root@www ~]# date +%a
        Tue

         %A:显示星期几,完全显示      

     [root@www ~]# date +%A
     Tuesday

         %Y:显示四位年份

         %y:显示两位年份

         %m:显示月份

         %M:显示分钟

         %d:

         %h:英文简写的月,Jun

         %H:显示小时

         %S:

         %s:现在距离19701100分(unix元年)的秒数,timestamp(时间戳)

         %D:显示日期格式为:月//

         %F:显示日期格式:年

         %T:显示时间格式:时::

 

 date [MMDDhhmm[[CC]YY][.ss]]  —->设置日期时间

          MM:月份

          DD:几号

          hh:小时

          mm:分钟

          YY:两位年份

          CCYY:四位年份

          .ss:秒钟

Linux的两种时钟:

    系统时钟:由Linux内核通过CPU的工作频率进行的计时

硬件时钟:存储在CMOS里的时钟,关机后该时钟依然运行,主板的电池为它供电

hwclock:显示硬件时钟

          -s,–hctosys: 以硬件时间为准

          -w,–systohc 以系统时间为准


cal:显示日历

   cal 年份

2.3 目录相关命令

   当前目录或工作目录

   主目录(~),家目录:HOME—>

      root: /root

      普通用户:/home/USERNAME

 

cd 切换目录

   cd cd ~:回当前用户的主目录

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

   cd –:在上一个目录和当前目录之间来回切换

 

相关环境变量:

   PWD:保存了当前目录路径—pwd

   OLDPWD:上一次所在目录路径—-cd –

      [root@www ~]# cd $OLDPWD
      [root@www etc]# cd $OLDPWD

  

pwd 显示当前目录

 

ls: list

   显示指定路径下的文件列表

   ls [OPTION]… [FILE]…

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

      -A: 显示所有文件,但不包含. ..

      -l: 显示文件详细信息,长格式

         -/rw-r–r–./ 1/ root/ root/ 9615 /Jun 25 20:43/ install.log

         文件类型/权限/文件被硬链接次数/属主/属组/size/文件最近一次被修改的时间/文件名

      -h: 单位换算,易读

      -d: 显示目录自身的相关属性,通常和-l结合使用

      -r: 逆序显示。以文件名开头字母为准

      -R: –recursive  递归显示,显示目录及目录下的所有文件。还是tree好使

 

 

stat

stat /PATH/TO/SOMEFILE

获取指定文件的元数据

 [root@www ~]# stat /etc
File: `/etc'
Size: 4096        Blocks: 8          IO Block: 4096   directory
Device: 802h/2050d  Inode: 12          Links: 63
Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-06-28 11:46:11.597990443 +0800
Modify: 2016-06-28 19:16:22.341021361 +0800
Change: 2016-06-28 19:16:22.341021361 +0800

2.4 文件查看命令

   cat

    连接显示文件内容

      cat [OPTION]… [FILE]…

         -E: 显示行结束符$

         -T: 显示制表符

         -n: 对显示出的每一行进行编号

    

一般和EOF结合使用的较多

cat <<EOF>FileName

EOF

   tac

   cat显示相反,倒序的显示

 

   file

   查看文件内容类型

   file /PATH/TO/SOMEWHERE

   echo

      回显

      -n: 禁止自动添加换行符

      -e: 允许使用转义符

         \n: 换行

         \t: 制表符

echo "$VAR_NAME": 变量会替换,弱引用

echo '$VAR_NAME': 变量不会替换,强引用

echo “ : 命令引用

 

   which

   显示命令对应的程序文件路径

   which [options] COMMAND

      –skip-alias 跳过别名

             [root@www ~]# which –skip-alias ls

   whatis

      使用mkwhatis命令可将当前系统上的所有帮助手册及与之对应的关键字创建为一个数据库

原创文章,作者:N21_Lorne,如若转载,请注明出处:http://www.178linux.com/20951

(0)
上一篇 2016-06-29 14:27
下一篇 2016-06-29 14:27

相关推荐

  • PXE自动化安装系统

    PXE自动化安装的流程: 开机自检 > 加载ROM中的bios代码 > 检查设备启动顺序,由于PXE自动安装是基于网卡作引导的,所以,会选择网卡 > 网卡中会有PXE的模块,从dhcp服务器获取ip地址 掩码 网关 dns 重要的是tftp服务器的地址 从tftp服务器需要获取的bootloder的文件名的信息 > 从tftp中加载p…

    Linux干货 2015-08-11
  • 计算机入门

    Linux入门 与 计算机

    Linux干货 2018-02-07
  • locate、find命令使用总结

    一、简介    在linux系统中存在"一切皆文件"的说法,这就足以说明文件的重要性,因此查找文件也是我们必须要掌握的技能。这时候熟练使用locate、find命令也就显得至关重要。尤其是find命令常用于日常工作中如安装完某个软件之后要查看这些软件的安装配置路径,或是需要按指定条件直接查找我们需要操作的文件。因此更需…

    Linux干货 2015-08-31
  • 2016-10-17作业

    1 生产环境发现一台服务器系统时间产生偏差,造成服务异常,请帮忙校正。 date命令查看系统时间,clock或者hwclock命令查看硬件时间, 将系统时间同步到硬件时间的方法hwclock -s   2 生产有一个数据同步脚本需要执行很长时间,怎样做到无人值守,在管理工具退出的情况下,脚本依然能正常运行。在生产环境的中创建SCREEN会话,会话的…

    Linux干货 2016-10-18
  • 8月3日课堂笔记

    课堂笔记 linux用户和组管理(非常非常重要)    用户管理和组管理各种相关的应用程序    简单的管理命令 安全上下文:   每次对主机操作都是以发起一个进程来完成的,进程代表着人来执行操作,进程以其发起者的身份来运行;所以开机时有很多守护类的进程,我们应该以普通身份来运行,普通用户通常都是系统用户;从来不用登陆系统的;进程对文件的访问权限,取决于发起…

    Linux干货 2016-08-04
  • date命令总结

    在linux中man手册页,对date -d 参数的的说明比较模糊,一下的举例,进一步说明: #-d –date=STRING display time described by STRING not 'now' 命令: date -d nex-day +%Y%m%d    //明天日期 d…

    Linux干货 2016-08-05

评论列表(1条)

  • 马哥教育
    马哥教育 2016-06-29 15:29

    写的很好,排版还可以在漂亮一些,加油