1.了解Linux操作系统以及层次架构


1.了解Linux操作系统以及层次架构

简谈操作系统

操作系统:Windows Linux MacOS iOS Android

操作系统本质上是可以安装程序的程序

Operating System(OS)是在硬件基础上的第一层软件

操作系统提供的服务

文件系统:沟通硬盘和软件读取

设备驱动程序:判断外接设备并作出反应,如手柄

用户接口:让软件和操作系统进行沟通,从而调用用户设备进行服务

系统服务程序:操作系统自带的程序,如系统自带的防火墙等

具体流程:用户---应用程序---操作系统---硬件

Linux操作系统

Linux:开源,类unix操作系统

Linux内核:硬件--内核层(控制操作系统的资源并调配)--shell层--应用层(基于x window环境)

发行版本
商业发行版:red hat
社区组织维护发行版:debian

具体介绍

red hat:系统工程师的运维方面还行的认证

RHEL(Red Hat Enterprise Linux),CentOS,Fedora core

ubuntu:debian发展来的

suse linux:图形化非常方便,主打就是桌面

gentoo:所有Linux安装中最复杂的,需要编译安装操作系统,运行最快,极客喜欢

debian:安全,固若金汤,基本不死机

Linux有关操作

Linux层次结构:树状结构

根目录/:最上面的目录

pwd 查看当前自己在哪个文件夹中

# = root

$ = 其他人

~ 在家目录

root用户的家目录 /root

其他用户的家目录 /home/用户名

cd 切换目录

whoami 当前用户

history 查看之前敲过的命令

alias ha='cat /etc/passwd' 给命令取别名为ha(重启后无效)

unalias ha 取消设置的ha别名

alias 查看别名

永久别名 vi /etc/bashrc,在底部添加alias ha='cat /etc/passwd'

获得帮助 ls --help

安装中文的手册

centOS
yum -y install man-pages-zh-CN.noarch
echo "alias cman='man -M /usr/share/man/zh_CN'" >> .bashrc
source .bashrc

cman ls 看到中国话的ls命令介绍

重定向

输入输出:
0=标准输入
1=标准正确输出
2=标准错误输出

echo $? 看上一个程序退出的状态码,不是0就是错误的

重定向符号:
> 覆盖重定向
>> 追加重定向
2> 覆盖重定向错误输出数据流
2>> 追加重定向错误数据流

合并输出:
&> 覆盖重定向
&>> 追加重定向
2>&1 把错误流重定向到标准的正确输出文件中
1>&2 把正确流重定向到标准的错误输出文件中

echo haha 1> /root/path/yes.out 2> /root/path/no.out
运行echo haha程序,如果正确输入到当前目录的yes.out目录下,如果错误就输入到no.out中

echo hahanihao 1>&2 2> /root/path/no.out
正确输出屏幕错误输出到文件

echo hahanihao 2>&1 1> /root/path/yes.out
正确放入文件,错误输出到屏幕

cat > haha.file << EOF
一直输入东西,直到输入EOF才结束,此时haha.file里面的内容就是你输入的内容,EOF不会被输入进去,EOF是标识符

这里从cat到EOF整个都是一条命令

cat >> haha.file << EOF

追加内容到haha.file,直到输入EOF结束