目录

1. 计算机的体系结构

2. Linux 系统的概述

3. 主要发行版本

4. CentOS 系统安装

5. 目录结构

6. 常用命令

6.1 Shell 的概念

6.2 命令的格式

7. 常用命令的详解

7.1 查看目录下文件/目录

7.2 目录切换

7.3 查看完整路径

7.4 查看当前用户

7.5 用户切换

7.6 管理用户

7.7 查看命令的所在目录

7.8 文件操作

7.9 目录操作

7.10 查找操作

7.11 权限管理

7.12 进程管理

7.13 常用的系统服务命令

7.14 打包解压命令

7.15 其它命令

8. vi 工具的使用

8.1 基本概念

8.2 三种模式

8.3 使用方式

8.3.1 命令模式的编辑命令

8.3.2 命令模式的删除命令

8.3.3 命令模式的修改命令

8.3.4 命令模式的拷贝命令

8.3.5 底行模式的命令


1. 计算机的体系结构

计算机由计算机硬件和计算机软件两个部分组成,其中计算机软件可分为系统软件和应用软件,系统软件就是操作系统,是其他软件的基础。

Application -- OS Shell (KDE bash csh) -- OS Kernel -- Hardware应用程序 / Java 应用 -- 操作系统外壳(GUI / 命令)-- 操作系统内核 -- 硬件

目前主流的操作系统有:Windows 系列、Unix 系列、Linux 系列、Android 系列、IOS 系列 ...

2. Linux 系统的概述

Linux 系统是一套免费、自由、开发源代码的类 Unix 操作系统,是一个基于 POSIX (Portable Operating System Interface) 标准和多用户、多任务、支持多线程的操作系统。

Linux 能运行主要的 Unix 工具软件、应用程序和网络协议,支持 32 位和 64 位硬件。

3. 主要发行版本

Redhat:目前最大的 Linux 发行商,功能全面并且稳定,被 IBM 收购。

Ubuntu:目前最好的 Linux 桌面版,拥有很人性化的亮丽的交互界面,强大的软件源支持。

CentOS:是 RHEL (Red Hat Enterprise Linux) 的克隆版本,可以认为是免费版本的 Redhat 系统。

4. CentOS 系统安装

Vmware 下载地址:https://www.vmware.com/cn.html

CentOS 系统下载地址:https://www.centos.org

5. 目录结构

在linux中"/"为根目录。

  • /bin (binaries的缩写,[/usr/bin、/usr/local/bin]):存放二进制可执行文件(例如 tomcat 的 bin 目录);

  • /sbin (super binaries,[/usr/sbin、/usr/local/sbin]):存放二进制文件(系统管理员使用的系统管理程序),只有 root 用户才能访问;

  • /boot:系统启动核心目录,存放系统启动程序文件,包括一些连接文件及镜像文件。例:查看启动文件的大小;

  • /dev (devices) :用于存放硬件设备文件信息。类似于Windows的设备管理器;

  • /etc (et cetera):存放系统配置文件(字体文件等),比如安装mysql数据库的my.conf;

  • /home:家目录,每一个用户都有一个”家”,普通用户的起始目录,创建用户跟随创建相应的家目录。Linux中每个用户都有自己的目录;

  • /lib (library):系统资源文件类库,类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库;

  • /proc :系统内存映射目录,访问这个目录来获取信息,可以查看系统相关硬件的信息(不能动这个文件);

  • /var (variable):可变的,变量。存放一些不断扩充着的东西,习惯将经常被修改的目录存放在这,如各种日志。部署项目用的;

  • /tmp (temporary) :用来存放临时文件;

  • /root:超级用户 root 的家目录;

  • /usr (Unix shared resource): 存放 Unix 共享系统资源,类似于 ”C:/ Program Files”,用于安装各种软件;

  • /usr/local:给主机额外安装软件所存放的目录(软件安装的目标目录),一般是通过编译源码的方式安装的程序;

  • /opt:给主机额外安装软件所存放的目录(软件安装包存放),如安装ORACLE数据库就可放到该目录下,默认为空;

6. 常用命令

6.1 Shell 的概念

Shell 俗称外壳,是提供用户使用界面的一种软件,叫做命令解释器。

主要负责接受用户输入的命令,然后调用相应的应用程序,最后向用户输出程序运行的结果。

6.2 命令的格式

命令 [-选项] [参数]

命令区分大小写,其中选项和参数是可选的,中间采用空格隔开。

7. 常用命令的详解

7.1 查看目录下文件/目录

ls list :显示文件

ls -l 或 ll list -list :显示详细信息

ls -a list -all :显示全部(包含隐藏文件)文件

ls -al list -all -list :两个合体

ls 目录名 :查看目录下有什么东西

7.2 目录切换

cd .. :上一级目录

cd dirname :进入目录

cd 或 cd ~ :直接回到用户的家目录

cd / :回到系统根目录

7.3 查看完整路径

pwd :查看当前目录所在的位置

7.4 查看当前用户

whoami : 查看当前用户的名称

7.5 用户切换

su :普通用户切换到root用户

su root:切换到root用户

su 用户名 : 切换到普通用户

exit :退回到原来用户

建议使用 su 和 exit 搭配使用,否则多次使用 su 指令会导致用户的”叠加”

7.6 管理用户

useradd xxx : 创建用户

passwd xxx :为创建的用户设置密码

userdel -r xxx : 删除用户以及其目录

7.7 查看命令的所在目录

which 命令 :查看指定命令所在的路径信息

7.8 文件操作

touch filename :创建名字为 filename 的文件

touch directory/filename: 在 directory 目录下创建名字为 filename 的文件

echo 内容 > filename : 把内容覆盖写到文件中,若文件不存在则创建

echo 内容 >> filename :把内容追加到文件中

cat filename :打印文件内容到终端

more filename :分屏查看文件各行内容,不支持回看

less filename :查看文件各部分内容,支持回看

head -n filename : 查看文件的前 n 行内容

tail -n filename :查看文件末尾 n 行内容

wc filename :查看文件的行数

7.9 目录操作

mkdir 目录名 :创建普通文件夹

mkdir -p 目录/目录/目录 :递归方式创建多级父子文件夹

mv dir1 dir2 :将 dir1 移动到 dir2 中

mv dir1/dir2 ./ :将 dir1 中 dir2 移动到当前目录下

mv dir1 name :将 dir1 改名为 name

cp dir1 name :将 dir1 拷贝为 name

cp -r dir1 dir2 :需要设置参数 -r (recursive) 无视目录层次

rm 文件 :删除文件

rm -r 目录 :递归删除目录(无视目录层次)

rm -rf 文件/目录 :强制删除文件/目录

7.10 查找操作

find / -name password :查找名称为 password 的文件

find ./ -name "p*" :查找名字有 ”p” 的文件

find ./ -type f :查找所有文件

grep 内容 filename :从指定文件中查找指定的内容

7.11 权限管理

chmod 权限 文件/目录名 :管理指定文件的权限信息,r(读):4   w(写):2   x(执行):1

chmod 777 file:给所有用户赋予 file 的所有权限

注意:那么这里为什么是三个7呢?这里的三位分别代表的是针对不同用户的权限(第一位"u":代表 属主的权限;第二位"g":代表 所属小组的权限;第三位"o":代表其他用户的权限。)。比如这里我只给其他用户赋予“读”的权限-->chmod o-wx file(注意这里的"o-"是减号,代表移除哪些权限;"+"号代表增加哪些权限) 或 chmod 774 file。

7.12 进程管理

ps :查看当前终端窗口里的进程

ps -aux :查看系统中的所有进程

ps -ef :查看进程列表

kill 进程号 :杀死指定的进程

kill -9 进程号 :强制杀死指定的进程

7.13 常用的系统服务命令

chkconfig --list: 列出系统服务
service <服务名> status: 查看某个服务
service <服务名> start : 启动某个服务
service <服务名> stop : 终⽌某个服务
service <服务名> restart : 重启某个服务
systemctl status <服务名> : 查看某个服务
systemctl start <服务名> : 启动某个服务
systemctl stop <服务名> : 终⽌某个服务
systemctl restart <服务名> : 重启某个服务
systemctl enable <服务名> : 开启⾃启动
systemctl disable <服务名> : 关闭⾃启动

7.14 打包解压命令

zip xxx.zip file : 压缩⾄zip包
zip -r xxx.zip file1 file2 dir1 : 将多个⽂件+⽬录压成zip包
unzip xxx.zip : 解压zip包
tar -cvf xxx.tar file : 创建⾮压缩tar包
tar -cvf xxx.tar file1 file2 dir1 :将多个⽂件+⽬录打tar包
tar -tf xxx.tar :查看tar包的内容
tar -xvf xxx.tar : 解压tar包
tar -xvf xxx.tar -C /dir :将tar包解压⾄指定⽬录
tar -cvfj xxx.tar.bz2 dir : 创建bz2压缩包
tar -jxvf xxx.tar.bz2 : 解压bz2压缩包
tar -cvfz xxx.tar.gz dir :创建gzip压缩包
tar -zxvf xxx.tar.gz :解压gzip压缩包
bunzip2 xxx.bz2 : 解压bz2压缩包
bzip2 filename : 压缩⽂件
gunzip xxx.gz :解压gzip压缩包
gzip filename: 压缩⽂件
gzip -9 filename : 最⼤程度压缩

7.15 其它命令

ifconfig :查看当前系统的IP地址等信息

tar zcvf 压缩文件名.tar.gz 路径1 路径2 ... :实现一组文件或文件夹的打包

tar zxvf 压缩文件名.tar.gz :实现解压缩解包

man [章节号] 命令/函数名 :查询指定的命令或函数

8. vi 工具的使用

8.1 基本概念

vi 和 vim 是 Linux 系统命令行下的文本编辑器,通常格式为:vi 文件名 或 vim 文件名。

8.2 三种模式

命令模式 - 通过 a/i/o 键转换为编辑模式,通过 : 键转换位底行模式

底行模式 - 通过 Enter 键转换为命令模式

编辑模式 - 通过 Esc 键转换为命令模式

8.3 使用方式

8.3.1 命令模式的编辑命令

i:在当前位置之前插入
a:在当前位置之后插入
o:在当前行下插入

8.3.2 命令模式的删除命令

x: 删除一个字符
dw: 删除当前词
3dw: 删除三个词
dd: 剪切当前行
5dd: 删除五行

8.3.3 命令模式的修改命令

r: 替换一个字符
cw: 替换一个单词
cc: 替换一行
C: 替换从光标至行尾

8.3.4 命令模式的拷贝命令

yw: 拷贝词
yy: 拷贝行(或Y)
dd: 剪切行
p: 当前行下粘贴
u: 撤销
ctrl+r: 取消撤销

8.3.5 底行模式的命令

:w 存盘
:w newfile 另存为新文件
:wq 存盘退出Vi(或ZZ,或:x)
:q! 强行退出不存盘
:set nu 显示行号
:set nonu 隐藏行号
:1,5co8 拷贝行 1 和行 5 之间的内容到行 8 之后
:4,5mo6 移动行 4 和行 5 之间的内容到行 6 之后
:%s /pulbic/PUBLIC 替换每一行中的第一个 public 为 PUBLIC
:%s /public/PUBLIC/g 替换每一行中的所有 public 为 PUBLIC

注意使用

使用 vimtutor 命令用来练习 vi 命令。

用户主目录下 .vimrc 文件可以实现 vi 的简单设置。

Linux 操作系统相关推荐

  1. 实验报告Linux操作系统基本命令,linux操作系统实验报告全部.doc

    linux操作系统实验报告全部 计算机操作系统 实验报告 学 号:姓 名:提交日期:2014.12.15成 绩: 东北大学秦皇岛分校 [实验题目]熟悉Linux/UNIX操作系统[实验目的]1.熟悉L ...

  2. Linux哪个和Windows很像,Linuxfx - 这套Linux操作系统看起来和Windows 10非常类似

    正如你在截图中所看到的那样,Linuxfx的外观和感觉与Windows 10非常类似,甚至还可以得到一个带有Windows开始按钮的开始菜单,然而,这个实际上可能是一个问题,因为微软可能不喜欢在另一个 ...

  3. 如何在VMware虚拟机上安装Linux操作系统(Ubuntu)

    作为初学者想变为计算机大牛非一朝一夕,但掌握基本的计算机操作和常识却也不是多么难的事情.所以作为一名工科男,为了把握住接近女神的机会,也为了避免当白痴,学会装系统吧!of course为避免把自己的电 ...

  4. linux操作系统的特点有哪些,LINUX操作系统有哪些概念和特点?

    嵌入式LINUX操作系统的概念 以应用为中心,以计算机技术为基础,软件.硬件可裁剪,适应应用系统对功能.可靠性.成本.体积.功耗要求严格的专用计算机系统,称为嵌入式系统.一个最小的嵌入式系统的基本组成 ...

  5. linux六种进程状态,Linux操作系统中进程的七种状态

    Linux操作系统中进程的七种状态 发布时间:2018-05-07 20:43, 浏览次数:741 , 标签: Linux 1 Linux中进程的七种状态(1)R运行状态(runing):并不意味着进 ...

  6. mysql用户权限与安装Linux操作系统

    用户与权限: 关于用户的创建: 我们都知道安装数据库服务器的时候,一般默认的情况下只有一个root用户,但是在公司里一个数据库会有多个人使用,所以自然的一个数据库里需要有多个用户,并且在使用数据库的过 ...

  7. linux 卸载yaf,LINUX操作系统怎么搭建YAF框架

    如何在已经搭建好的php环境下,继续搭建yaf框架环境?那么小编就在本文给大家介绍下搭建方法 LINUX操作系统怎么搭建YAF框架 命令: wget 地址参考图片 命令: tar zxvf yaf-2 ...

  8. Linux操作系统选择:Debian or Ubuntu

    此文首发于我的个人博客:Linux操作系统选择:Debian or Ubuntu - zhang0peter的个人博客 我最开始使用Linux系统的时候选择的是Ubuntu,因为Ubuntu名气大,而 ...

  9. linux课程设计死锁避免,linux操作系统课程设计—车辆死锁.doc

    linux操作系统课程设计-车辆死锁.doc 键入文字"操作系统原理"课程设计BX090709吴沛儒操作系统原理课程设计报告姓名吴沛儒班级BX0907学号9指导老师胡静二〇一一年十 ...

  10. 无人值守u盘安装linux,从U盘无人值守安装linux操作系统(纯实践笔记)

    作者:曲宝全 本文的目的是:实现从U盘无人值守安装Linux操作系统 环境说明:1个4G的U盘(根据自己的操作系统ISO大小来定),本文试验的操作系统是RHEL4.8-x86_64-AS-DVD.is ...

最新文章

  1. 不同数据库中查询前几条记录的用法(SQL Server/Oracle/Postgresql)
  2. BZOJ 1433 Luogu P2055 [ZJOI2009]假期的宿舍 匈牙利算法
  3. P5367 【模板】康托展开
  4. 怎么做 慢充 话费_高佣联盟充值话费省钱小技巧教程
  5. jvm虚拟机_JVM虚拟机五连问,能过并不是只靠运气
  6. 实战 | 我创造了新的编程语言!
  7. python模块之logging
  8. nacos 负载策略_Nacos(一):Nacos介绍
  9. NLP学习—24.Pre-trained Word Embedding—ELMO、GPT、Bert
  10. Sicily 1049. Mondriaan 解题报告
  11. mysql软件可行性分析报告_网上商城系统可行性分析报告.doc
  12. 3500常用字+字母+数字+表单符号
  13. 各国货币符号(Copy的)
  14. MyBatis 报错The error may exist in…….xml
  15. 效率直接起飞的PPT技巧,你知道吗
  16. 5v继电器模块实物接线_继电器实物接线图
  17. C位流行语言,“2018年十大流行语”
  18. 端午趣味征文赛已上线,就等你创作啦
  19. 揭秘三个霸道的引流方法 为你扫清没流量的烦恼
  20. 宏基因组(鸟枪法测序)—微生物同源基因引物设计

热门文章

  1. 机器学习(二)线性模型——线性回归、对数几率回归、线性判别分析
  2. 2021贵港市地区高考成绩排名查询,贵港高中成绩排名2021,贵港中考分数线排行榜...
  3. 信号量集(主要是AND信号量)
  4. matlab声音处理
  5. PCL:交互点选点云
  6. nutch java_Nutch:用Java调用,而不是命令行?
  7. DCS是分布式控制系统的英文缩写(Distributed Control System)
  8. PIL Image创建空白图片的bug
  9. jspdf添加宋体_pdfjs 引入字体失败
  10. Python PaddleNLP实现自动生成虎年藏头诗