首页 > 代码库 > 第一次作业
第一次作业
1、按系列罗列出linux的发行版本,描写不同发行版本之间的关系与区别。
linux的发行版本大致分为两大类,一类是商业公司维护的发行版本,一类是社区组织维护的发行版本,前者以著名的Redhat(RHEL)为代表,后者以Debian为代表.
Redhat,应该称为Redhat系列,包括RHEL(Redhat Enterprise Linux,也就是所谓的Redhat
Advance Server,收费版本)、Fedora
Debian,或者称Debian系列,包括Debian和Ubuntu等。Debian是社区类Linux的典范,是迄今为止最遵循GNU规范
CentOS(RHEL的社区克隆版本,免费)
2、说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相应的示例来阐述
linux的命令格式:
command(命令)[options...](选项) [arguments...](参数) 有些命令可以不跟选项
选项:用于启动或关闭某个功能,选项分短选项和长选项
短选项: -c -d,例如 -cd
长选项:--word,例如--long
参数:命令的作用对象
向命令提供数据
(1)ifconfig命令用于查看linux的ip地址
使用非常简单可以直接在命令行界面输入ifconfig回车,就可以看到当前linux的所有网卡ip地址信息。
(2)echo是一种最常用的与广泛使用的内置于Linux的bash的命令,通常用在脚本语言和批处理文件中来在标准输出或者文件中显示一行文本或者字符串,可以使用echo命令后面跟变量名显示该变量内容。
(3)tty查看当前登录的设备终端,直接在命令行界面输入tty命令就可以。
(4)starx就是启动X Window的服务这一项,其实startx命令启动的是xinit,然后再由xinit来启动X Window(图形界面)。
(5)export设置或显示环境变量
export[选项][参数]
-f:代表[变量名称]中为函数名称
-n:删除指定的变量,变量实际上并未删除只是不会输出到后续指令的执行环境中
-p:列出所有的shell赋予程序的环境变量
(6)pwd显示当前所在的文件目录路径,直接在命令行界面输入pwd就可以了
(7)history命令历史,用于记录和查看当前系统中使用命令的历史记录,history记录命令历史是在本次会话结束后才会把本次会话所使用过的所有命令记录到命令历史文件中。默认在用户家目录~/bash_history
history:
-a:追加本次会话新执行的命令历史到历史命令文件中
-d:删除历史中指定的命令
-c:清空命令历史
快捷操作:
!#:调用历史中第#条命令 直接在命令行界面输入!后跟数字,进行历史命令调用
!starx调用历史中最近一个以starx开头的命令
!!调用上一条命令
(8)shutdown、poweroff、reboot都是linux系统关键重启方面的命令
shutdown:安全的关闭操作系统
-p 关机切断电源
-f强制,不调用shutdown
-r 重启
shutdown后面直接跟数字表示多少分钟后关机,跟具体的时间表示到多少时间后关机
poweroff:关闭计算机并且切断系统电源,直接使用不跟参数就可以
reboot重启系统命令,直接使用不跟参数
(9)hwclock系统时钟,linux系统中的时钟分为硬件时钟和系统时钟两种,硬件时钟有主板中的小型电池供电,系统时钟指内核中的时钟,所有linux相关的指令都是读取系统时钟,hwclock命令既可以把硬件时钟同步到系统中,也可以把系统时间同步到硬件中。
hwclock:
-r读取并打印硬件时钟
-s将硬件时钟同步到系统时钟
-w将系统时钟同步到硬件时钟
(10)date用于显示和修改linux系统时间.直接在命令行界面输入date显示当前的系统时间
date 空格后跟12111210 修改系统时间 时间格式为月日时分
date:
+%D显示时间 12/11/16
+%F显示时间 2016-12-11
date +%y-%m-%d 16-12-11
3、如何在linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的。
linux系统上的命令分为外部命令和内建命令
内部命令:
help command 获取帮助信息
外部命令:
command help
使用帮助手册 man command
信息页 info command
程序自身所带的帮助文档
程序官方文档
发行版的官方文档
man帮助手册共分为8个
man1:用户命令
man2:系统调用
man3:c库调用
man4:设备文件及特殊文件
man5:配置文件格式
man6:游戏
man7:杂项
man8:管理类的命令
4、linux上的文件管理类命令都有哪些,其常用的使用方法及其实例演示。
cp:复制命令,对文件进行复制或存档
cp [源文件] [目标路径或文件名]
-i交互式
-r,-R递归复制目录及内部的所有内容
-a 归档
mv:move移动文件或重命名文件,要移动的文件修改一下名字,还在当前目录下就相当于是重命名
mv [源文件] [目标文件或文件名]
-i:交互式
-f:强制
rm:删除文件或目录
rm [文件或目录]
-i:交互式
-f:强制
-r:递归 递归选项用在删除目录时 可以用 rm -rf强制删除文件或目录
touch:创建或修改文件时间戳,在没有同名的文件时表示创建
touch a.txt 在没有a.txt是表示创建一个aa.txt的文件
-t修改文件时间,文件的改变时间不能被修改 touch -t 10101010 a.txt修改
-a访问时间同步为当前系统时间 touch -a a.txt
-m修改时间同步为当前系统时间 touch -m a.txt
5、bash的工作特性之命令执行状态和命令行展开所涉及的内容及其示例演示
在bash中命令的执行状态分为两种,成功和失败,要么成功要么失败没有第三种
成功:0表示成功 使用echo $?查看最近一次的命令执行状态
失败:1-255表示失败
(1)命令补全
外部命令:bash根据path环境变量定义的路径,自左至右依次在每个路径搜寻以给定命令名命名的文件,第一次找到即为要执行的命令
直接补全:tab用户给定的字符串只有一条唯一对应的命令,如果不是唯一的再次tab给出列表
(2)路径补全
把用户给出的字符串当做路径开头,并在其指定上级目录下搜寻以指定的字符串开头的文件名
(3)命令行展开
~:展开为用户宿主目录
~username:展开为指定用户的主目录
{}:可承载一个以逗号分隔的列表,并将其展开为多个路径
例如:/aa/{a,b}=/aa/a ,/aa/b /aa/{a,b}/a=/aa/a/a /aa/b/a
6、请使用命令行展开功能来完成一下练习
(1)创建/tmp目录下的:a_c,a_d,b_c,b_d
mkdir -p /tmp/{a_c,a_d,b_c,b_d}
(2)创建/tmp/mylinux目录下的:mylinux/
├── bin
├── boot
│ └── grub
├── dev
├── etc
│ ├── rc.d
│ │ └── init.d
│ └── sysconfig
│ └── network-scripts
├── lib
│ └── modules
├── lib64
├── proc
├── sbin
├── sys
├── tmp
├── usr
│ └── local
│ ├── bin
│ └── sbin
└── var
├── lock
├── log
└── run
mkdir -p /tmp/{mylinux/{bin,boot/{grub,},dev,etc/{rc.d/{init.d,},},syconfig/{network,},bin/{modules,},lib64,proc,sbin,sys,tmp,usr/{local/{bin,sbin},},var,lock,log,run,},}
7、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
文件的元数据信息:
access time:访问时间 touch -t 10101010 a.txt修改文件访问时间
modify time:修改时间 touch -t 10101010 a.txt修改文件修改时间
change time:改变时间 改变时间不能修改
使用stat查看文件的时间戳信息 stat a.txt
8、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其他字符)的文件或目录。
ls -d /var/l[[:alnum:]]*[[:lower:]]
9、显示/etc/目录下,以任意一个字母开头,且以非数字结尾的文件或目录。
ls -d /etc/[[0-9]*[[:pha:]]
10、显示/etc目录下,以非字母开头,后面跟了一个字母以及任意其它长度任意字符的文件或目录
ls -d /etc/[^[alpha]]*[alnum]
11、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名行如:tfile-2016-09-20-09-32-22
touch /tmp/tfile-%$(date +%Y-%m-%d-%H-%s)
12、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
cp -ar /etc/*.d /tmp/mytest2
13、复制/etc/目录下所有以l或n开头,以.conf结尾的文件至/tmp/mytest3目录中
cp /etc/[m,n]*.conf /tmp/mytest3
第一次作业