我们在第一章介绍了Linux的哲学思想以及Linux的文件系统,在Linux文件系统中主要讲述的是文件名命名和工作目录及家目录,那么在第二章中我们主要讲述了计算机的发展史以及操作系统的历史发展,第三章中讲述了完整的操作系统的组成以及介绍了一些Linux的发行版本,在第四章中我们开始介绍如何安装Linux及设置语言环境,第五章和第六章中介绍了基础命令,以及命令的大致的语法格式是怎样的,那么在这一个章节当中会继续介绍Linux的基础命令的使用,以及Linux的文件系统

一、常用命令的介绍

  在第二章中我们介绍了家目录和工作目录,之前讲过,家目录是用户的初始位置,在终端提示符当中,家目录的符号是~,而如果是你进入到某个目录当中,例如进入到/etc/sysconfig/network-scripts,目录中的话,在终端提示符当中就会默认显示最后一个目录,也就是network-scripts,也就说在该提示符下你是暂时无法查看其完整路径,这时候,我们使用pwd命令就可以查看完整路径其显示工作目录,pwd是一个shell内嵌命令,我们使用type命令查看一下:

  # type pwd
 pwd is a shell builtin

  pwd用法如下:

  [root@node1 network-scripts]# pwd
 /etc/sysconfig/network-scripts

  以上就是查看该目录的路径,那么我们是如何进行切换目录的?使用cd命令来切换目录,用这个目录我们可以进入到某个目录,也可以回到某个目录,用法如下:

  # cd [/PATH/TO/SOMEDIR]
     cd:切换回家目录
     cd~:切换回自己的家目录
     cd ~USERNAME:切换至指定用户的家目录
     cd -:在上一次所在目录与当前目录之间来回切换
 它们也有相关的环境变量:
     $PWD:当前的工作目录
     $OLDPWD:上一次的工作目录

  我们成功切换到某个目录之后,就会查看该目录下有什么内容,那么ls就先列出指定目录下的内容,命令格式如下:

  # ls [OPTIONS]... [FILE]...

  选项如下:

  -a:显示所有文件,包括隐藏文件
 -A:显示除.和..之外的所有文件
 -l:--long, 长格式列表,即显示文件的详细属性信息
-rw-r--r--  1 root   root     9728 9月   2 19:57 boot.log
-:文件类型, -, d, b, c, l, s, p
rw-r--r--
   rw-:文件属主的权限
   r--:文件属组的权限
   r--:其它用户(非属主、属组)的权限
1:数字表示文件被硬连接的次数
root:文件的属主
root:文件的属组
9728:数字表示文件的大小,单位是字节
9月 2 19:57:文件最近一次修改的时间
boot.log:文件名
 -h:--human-readable:对文件进行单位换算,换算后结果可能会非精确值
 -d:查看目录自身而非其内部的文件列表
 -r:reverse, 逆序显示
 -R:recursive, 逆序显示

  如果想查看该文件有什么内容,我们可以使用cat命令,它是一个文件文本的查看工具,格式如下:

  # cat [OPTIONS]... [FILE]...

  选项如下:

  -n:给显示的文本行编号
 -E:显示行结束符$

  还有另一种文本文件查看工具,不过是倒序查看,与cat相反,叫tac,命令格式与选项也是相同的,这里便不再详细解释。
  那么我们在之前那几章讲过,程序编译之后其接口在不同的操作系统之间相互是不兼容的,因为Windows的可执行程序为
.exe,Linux的可执行程序为.elf我们可使用file命令来查看文件内容类型:

  # file [FILE]...

  echo命令:它是一个回显命令,是shell的内嵌命令,在以后的shell编程当中用处很大,命令格式如下:

  # echo [SHPRT-OPTIONS]... [STRING]...

  选项如下:

  -n:不进行换行
 -e:让转义符生效
   \n:换行
   \t:制表符

  在STRING中可以使用符号,单引号和双引号均可以用,不过需要注意的是,单引号和双引号的作用不一样,单引号是强引用,当变量引用时是不执行替换的;双引号是弱引用,当变量引用时,变量是会被替换。

  [root@node1 ~]# echo '$SHELL'
 $SHELL
 [root@node1 ~]# echo "$SHELL"
 /bin/bash

  我们需要注意一下的是,变量引用的正规符号为${name}。

1.1 关机重启命令

  在正式的生产环境当中,关机或重启命令其实并不常用,要保证的是服务器24小时不间断运行处理用户的请求或数据,否则关机的话给用户造成的观感影响是不好,那什么时候能关机?是要在给服务器下线时做升级要求重启或关机做维护时这才能使用。其命令为shutdown,使用方式为:

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

  选项如下:

  OPTIONS:
   -h:halt, 立即关机
   -r:reboot, 重启该系统
   -c:canel, 取消该关机任务
 TIME:
   now
   hh:mm
   +m
+0
 WALL

1.2 日期时间命令

  我们都知道,在Windows中的时间通常是在右下角显示,用鼠标经过时,会提示出日期,而在Linux的CLI当中,时间是不会显示,我们需要使用date命令来查看时间,而Linux本身是不会记录时间的,在Linux系统启动时从硬件读取日期和时间的信息;读取完成后,就不再与硬件相关联,说明除了Linux系统上的时钟,还有硬件上的时钟,由此分类两类,系统时钟、硬件时钟。
  而date命令显示的是系统时钟:
显示日期和时间:date [OPTIONS]... [+FORMAT]

  FORMAT就是格式符,用格式符的话对时间的显示会做出改变:根据指定的格式显示当前时间或设置系统时间。

  %F:显示年-月-日
 %T:按24小时制显示(hh:mm:ss)
 %Y:显示年后的两位数字(00..99)
 %m:显示月份,用两位数(01..12)
 %d:显示月份中的#号(01..31)
 %H:小时,按24小时制显示(00..23)
 %r:小时,按12小时制显示(hh:mm:ss [A/P]M)
 %M:显示分钟(00..59)
 %S:显示秒数(00..60)
 %s:从1970年1月1日0:0:0到现在经历的秒数(GNU扩充)

  另一个命令是hwclock和clock,其功能是显示或设定硬件时钟,其中有两个选项:

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

  补充:cal命令是查看日历的命令,使用方法如下:

  # cal [options] [[ month] year]]