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)
N21_LorneN21_Lorne
上一篇 2016-06-29
下一篇 2016-06-29

相关推荐

  • 第八周练习脚本部分

    1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态;在线的主机使用绿色显示;不在线的主使用红色显示; #!/bin/bash # for((i=1;i<=254;i++));do     site="172.16.250.${i}&quot…

    Linux干货 2016-12-15
  • M22 Centos设置yum源方法

    实验目的: 使用虚拟机模拟建立yum源服务器,在客户机上指定yum源为该服务器。 实验器材: WMware12安装Centos6.8虚拟机作为yum服务源 WMware12安装Centos7.3 作为客户端访问yum源服务器 实验原理图: 实验过程: 服务器端: 1、  显示已经挂载的光盘 #cd /misc/cd #先执行此命令才可以看到光盘挂载…

    2017-03-06
  • 第五周作业:find、cut、grep用法

    第五周作业 1、显示当前系统上root、fedora或user1用户的默认shell; 2、找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hello(); 3、使用echo命令输出一个绝对路径,使用grep取出其基名; 扩展:取出其路径名  4、找出ifconfig命令结果中的1-255之间数字; …

    Linux干货 2016-11-28
  • Linux发行版本介绍与哲学思想

    1.Linux发行版本介绍 Linux 发行版(英语:Linux distribution,也被叫做GNU/Linux 发行版),为一般用户预先集成好的Linux操作系统及各种应用软件。一般用户不需要重新编译,在直接安装之后,只需要小幅度更改设置就可以使用,通常以软件包管理系统来进行应用软件的管理。 1.服务器版本:Centos/Debian 从Red Ha…

    Linux干货 2016-10-28
  • Linux之磁盘管理

    Linux之磁盘管理       linux系统中, 一切都是文件, 而这些文件都是存储在磁盘中, 因此对于磁盘的管理是非常重要的, Linux磁盘管理的好坏, 直接关系到整个系统的性能问题, 本文主要介绍了磁盘结构, 分区类型, 管理分区, 管理文件系统, 挂载设备, 管理虚拟内存这几大项的内容.    &…

    Linux干货 2016-08-29
  • 上篇博客简单提了一下Nginx配置文件的大体组成部分,这次来好好解释一下这些个配置文件。 一、main配置段 分类:    正常运行必备的配置    优化性能相关的配置    用于调试及定位问题相关的配置   …

    Linux干货 2016-10-26

评论列表(1条)

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

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