文章目录
一、初识Linux
1、什么是Linux
Linux 就是一组软件,而软件分为操作系统软件和应用软件,当然 Linux 属于操作系统软件。
计算机是由一堆硬件组成的,为了有效的控制这些硬件资源,于是乎就有了操作系统的 产生,操作系统除了有效的控制这些硬件资源的分配,并提供计算机运作所需要的功能(如网络功能)之外,为了要提供程序设计师更容易开发软件的环境,所以操作系统也会提供一 组系统调用的接口。而 Linux就是一款十分成熟的操作系统软件。
操作系统软件就是具有以下功能的软件:windows mac Linux
(1)控制硬件资源
(2)提供计算机运作所需要的功能
(3)提供给程序员系统调用的接口,提供了更容易的开发环境。
2、Linux和Windows的区别
1、Linux 主要使用命令行操作系统,Windows 图形化界面
2、Linux 主要应用于服务器,Windows 是个人操作系统
3、Linux 属于开源项目,而 Windows 不开源
4、Linux 是多用户系统 ,Windows 是单用户系统
多用户多个人可以同时的操作计算机
单用户系统:只能由一个用户进行操作。
二、Linux的命令与使用
1、了解目录结构
1.常见目录说明
/bin 存放常用命令
/boot 系统内核及启动有关的文件
/dev 存放设备文件 广义上的文件,键盘鼠标都可以抽象为文件然后获取消息。
/etc 存放系统配置文件 系统的运行相关的属性 参数等
/proc 这个目录是一个虚拟的目录,进程在内存中的信息映射成文件,到这个目录下。它是系统内存的映射,通过访问文件的形式访问内存信息。我们可以通过直接访问这个目录来获取系统信息。这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件
/mnt 临时挂载点,系统提供这个目录是让用户临时挂载别的文件系统。
/lib 存放库文件 某个命令的实现。
/tmp 存放各种临时文件,是所有用户均可访问的地点
/usr 存放系统应用程序及文档,用户安装的软件,或者运行时不经常改变的文件
/var 存放系统运行中常改变的文件, 如系统日志
我们
/home 所有普通用户的家目录
/root 管理员用户的家目录 :权限更高
2.路径
(1)当前路径
即用户当前所处路径。pwd显示当前路径。 .代表当前路径。
绝对路径与相对路径
D:\Java\教案\Redis简明教程.docx 唯一标识了这个文件 绝对路径表示
(2)绝对路径
是从系统根目录(“/”)开始到指定位置的路径
例如:以绝对路径表示 mai.c 的位置 /home/stu/main.c /home/snoopLiu/a.txt
以绝对路径表示桌面的位置 /home/stu/Desktop
(3)相对路径
相对路径 相对于D:\Java\教案路径去唯一标识的文件会把当前所处的目录当作你所相对的位置。 是从当前目录开始到指定位置的相对路径
例如: “.” 代表当前位置 “…” 代表当前位置的上一层目录
“./main.c” 表示当前位置下的 main.c 文件
(4)路径切换
cd 后面添加相对路径或者绝对路径。除此之外还有以下:
路径的地址 (可以添加绝对路径或者相对路径) 跳到指定目录
… 退回到上级目录 一个点表示的是当前目录 两个点表示的是:上一级目录
跳到之前所在的目录
~ 跳到自己的 home 目录 :
3.用户管理
添加新用户
useradd newname 添加一个新的用户 newname
创建新用户需要管理员身份,创建新用户成功后,会在/home 下生成该用户的家目录。
-u 指定用户的uid 0 : root 用户 uid Linux上 唯一确定用户的标识 尽量不要用。
-g 执行新用户的主组(初始组)
默认就是本身。test
-G 设置附加组 如果指定多个附加组可以用逗号隔开 。
A组 root
-d :设置家目录 (一般不用)
-c 备注
-s 指定命令解释器
-m 自动传创建家目录
一般使用:useradd -c " " -G -m 用户名
初始组:产生就存在的一个组。这个组以用户名来命名。
附加组:user1
user1 -->root
用户权限 组权限 其它
切换用户
从user用户切换到root用户:sudo su 然后输入root的密码就进入了root用户权限
切换到普通用户: su username 切换用户
2、常见的Linux的命令
3、文件操作命令
1.VIM命令
vim一共有三种模式,我们可以在不同的模式下做不同的操作。下来我们依次来看一下:
命令模式切换到插入模式:
-
a //进入到当前光标后开始编辑
-
A //进入到当前光标所在行的行末开始编辑
-
i //进入当前光标位置开始编辑
-
I //进入当前光标所在行的行头开始编辑
-
o //进入当前光标下一行开始编辑
-
O //进入当前光标上一行开始编辑
命令模式切换到末行模式
-
: //对文本的设置或保存工作
-
/ //对文本进行全文向下搜索字符串 string
-
? //对文本进行全文向上搜索字符串 string
vi/vim 常用命令
-
n dd //删除光标开始向下的 n 行
-
n yy //拷贝光标开始向下的 n 行
-
p //粘贴
-
u //撤销上一次操作
-
ctrl + r // 恢复上一次撤销操作
-
r //替换一个字符
-
shift + 6 //光标移动到当前行的行头
-
shift + 4 //光标移动到当前行的行尾
-
shift + g //光标移动到整个文本的最后一行 G
-
gg //光标移动到整个文本的第一行
-
n shift + g //光标移动到第 n 行
-
d n shift + g //删除光标到 n 行的内容
-
y n shift + g //拷贝光标到 n 行的内容
3.4 末行模式下的操作
-
:w //保存文本
-
:q //退出编辑
-
:wq //保存并退出
-
:q! //强制退出
-
:w newfile //另存为
-
:set nu //显示行号
-
:set nonu //取消行号
-
: set hlsearch //设置高亮搜索
-
: set nohlsearch //取消高亮搜索
-
: n,m s/oldstring/newstring //替换整个文本每行的第一个 oldstring
-
:n, m s/oldstring/newstirng/g //替换整个文本所有的 oldstring
-
/string //向下搜索 string
-
?string //向上搜索 string
2.vim小技巧
定位命令
删除命令
复制粘贴命令
替换和取消命令
保存或退出命令
查找与替换
最后+g 替换的时候不询问 +c 替换的时候询问
恢复上一次撤销操作
ctrl + r
导入另外一个文件的内容:
esc :r 文件名
导入另外一个命令的执行结果:
esc :r 命令名
vim中的快捷操作
3、find基础命令
find 在那个路径下查找文件 -以哪种方式查找文件 test
在目录树中搜索指定的文件,也可以指定开始的搜索位置
-mount, -xdev : 只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件
-amin n : 在过去 n 分钟内被读取过
-anewer file : 比文件 file 更晚被读取过的文件
-atime n : 在过去n天内被读取过的文件
-cmin n : 在过去 n 分钟内被修改过
-cnewer file :比文件 file 更新的文件
-ctime n : 在过去n天内被修改过的文件
-empty : 空的文件-gid n or -group name : gid 是 n 或是 group 名称是 name
-ipath p, -path p : 路径名称符合 p 的文件,ipath 会忽略大小写
-name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写
-size n : 文件大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。
-type c : 文件类型是 c 的文件。
d: 目录
c: 字型装置文件
b: 区块装置文件
p: 具名贮列
f: 一般文件
l: 符号连结
find常考面试题: