---
Linux入门
Linux首先是一个操作系统,类似Windows和Mac OS,不同的地方在于后两者面向家用,我们可以将它们称为客户端操作系统
而Linux多运行在服务器端,所以也称为服务器端操作系统
由于Linux没有可视化图形界面,我们就要通过在终端输入命令行来操作
因此,学习Linux其实就像在windows里学习使用cmd一样,作为入门,我们只需要了解一些基本命令,如果在实际使用中需要用到额外的命令,只需查阅相关文档即可
命令大全:https://www.runoob.com/linux/linux-command-manual.html
Before we start
在VMware中添加虚拟机,这里我使用Ubuntu来学习
VMware:http://dayanzai.me/vmware-workstation.html
Ubuntu:http://mirrors.163.com/ubuntu-releases/20.10/
Quick view
安装成功后,系统运行界面如下:
打开资源管理器(Files),可以看到Linux文件系统中是没有盘符概念的
在terminal中尝试输入一些基本命令,运行结果如下
-
pwd print work directory
-
cd change directory
-
cd .. 回退到上级目录
-
ls list files
操作大多和cmd类似,命令也可以添加参数
例如:ls -l -a -h 其中 -l 表示按列表方式显示,-a 显示全部文件(包括隐藏文件) -h 将文件大小单位改为KB
运行结果如下( 蓝色为文件夹,白色为文件, .FileName 表示隐藏文件,系统使用 . 记录当前目录,用 .. 记录父级目录 )
ls后跟通配符可以按要求检索文件
* 表示任意个数的字符,?表示一个任意字符 ,[abcd] 或者 [a-d] 表示这一位字符应该是中括号中的一个
- 相对路径和绝对路径
-
新建与删除文件
-d 表示删除一个空文件夹
-r 表示删除一个文件夹以及其中的文件
-
复制与移动文件
cp filename directory 将filename复制到directory下
cp -r d1 d2 将文件夹d1拷贝到文件夹d2
mv filename directory 将filename移动到directory下
特别的,mv filename ./filename_2 将文件移动到当前目录下的filename_2,相当于重命名
Instruction Format
cmd -option parameter
-
-option为控制参数,补充说明命令行为
-
parameter为对象参数
查看一个cmd的用法可以使用命令 cmd --help
或者通过 man cmd 查看命令cmd的帮助手册(manual)
-
通过 which cmd 查看cmd所执行程序的位置
-
查找
find directory filename 在directory下查找filename
可以使用通配符模糊搜索
find /home -iname 'filename' 不区分大小写按名字在home中搜索filename
-size 指定按文件大小搜索,后跟 +n表示大于n512B -n表示小于n*512B
如果后面直接跟数字,例如 find /home/andy/Desktop -size 7 则搜索所有大小上整后等于7的文件(单位为一个标准块,即0.5KB)
-user 按所属用户搜索
-mmin +num (modified minutes in)搜索最近一次修改时间据现在 > num 的文件
-type 按文件类型搜索(f文件,d文件夹...)
-id 按文件id搜索(使用 ls -i 或者 ls -li 查看文件id)
-
使用条件连接符构造复合条件
也可以安装一个新的命令locate,locate使用的搜索算法可以在不指定路径的情况下快速搜索到结果,缺点是索引库更新不及时,可能搜不到新创建的文件,这时可以手动使用sudo upgradedb更新索引库(sudo表示以管理员权限运行)
-
cat filename 查看filename文件内容
-
more filename 按分页查看内容
-
grep 在文件内查找字符串(功能等同图形界面的ctrl+f)
-
echo 回显
-
使用右尖括号将命令结果输出到文本, > 表示覆盖, >>表示追加,文件如果不存在则自动新建
-
Linux的软链接
其实就是windows下的快捷方式
使用 ln destination link_name 在当前目录为destination创建软链接link_name