Linux操作系统基础
Linux概述
Linux结构
kernel->运行期库->shell->实用工具程序
Linux文件系统类型
EXT3、EXT4是当今Linux操作系统默认使用的文件系统类型
SWAP类型的文件系统只是在Linux交换分区中被使用
Linux操作系统至少需要两个分区:跟分区(EXT4格式)和内存交换分区(SWAP格式)
/分区:容纳跟文件系统
SWAP分区:用于内存扩展
Linux文件属性
文件名:可由字母、数字、下划线、圆点等组成
文件类型包含:普通文件、目录文件、链接文件、设备文件等
文件类型属性:用字符体现 ls -l 命令查看
- 代表普通文件
d 代表目录文件
l 代表链接文件
b 代表块设备文件
c 代表字符设备文件
p 代表管道文件
Linux目录结构
Linux的根目录结构
/
/sbin /lib /etc /dev /root /usr /var 等
Linux系统环境
Linux的磁盘分区
磁盘分区的种类
主分区(小于3个)+ 扩展分区(扩展分区里有很多逻辑分区)<=4
磁盘分区的表达
/dev/sda1 代表第一个主分区
/dev/sda5 代表第一个逻辑分区
/*用文件来表示硬件设备*/
(/dev/sda5中的dev 所有硬件设备文件的目录)
(/dev/sda5中的sd 为硬件设备的代号,hd代表IDE并口设备,sd代表SCSI,SATA等的高速串口设备)
(/dev/sda5中的a 同类型设备的编号,a代表第一个硬盘,b则代表第二个硬盘,可类推)
(/dev/sda5中的5 分区号)
命令概述
1. 命令格式
$ # command [option] [arguments] 回车提交
用户 命令名 选项 参数 回车提交
例子:
$ ls -l /home
2. 命令帮助
man 手册页:
man db //安装命令帮助
man //阅读帮助手册页
man --help //获取快捷帮助信息
info //阅读帮助信息页
help //查看内部命令(子命令 内部命令 内建命令)的帮助信息
例子:
ls //缺省方式ls
ls /home //默认方式ls
ls -l /home //详细方式ls
man ls //查看ls
上下键翻页
/-l 回车 //查看-l的匹配
n //查看下一个匹配
q //退出帮助
ls -a //查看隐藏的文件
info ls //官方化查看ls帮助,如果man没有可以用info
type pwd //查看pwd命令是内部还是外部命令
help pwd //查看内部命令pwd
ls --help //ls的快捷帮助
目录操作
1. 目录的路径概念
路径是搜索到达文件所经历的目录途径
相对路径(从当前目录开始表达的路径)
绝对路径(从根目录‘/’开始表达的路径)
2. 目录的显示和切换
ls //目录内容显示
ls -l //列示文件和目录条目
ls -d //列示当前条目的自身信息
ls -ld
cd //切换目录~
pwd //当前目录显示
3. 目录的新增和拷贝
mkdir //目录新增
mkdir -p //递归创建多层目录
cp //将源目录拷贝到目标目录下,支持拷贝的同时改名
cp -a //全部拷贝
cp -f //强制拷贝
4. 目录的删除
rmdir //空目录删除
rmdir -p //递归删除多层空目录
rm -rf //-r 递归删除目录,-f强制删除目录
5. 目录的移动和改名
例子:
mv a b //a文件改为b文件
mv a b/a //a文件移动到b下
mv a b/c //a文件移动到b下的同时改名为c
目录操作例子:iotek用户
ls -l
pwd //显示当前目录路径
ls -ld . //当前目录详细信息(相对路径)
ls -ld /home/iotek //当前目录详细信息(绝对路径)
cd ~ //回到home目录
cd //回到home目录
cd .. //回到上级目录
mkdir a b c //同时创建同一层的目录a b c
mkdir -p d/e //同时创建递归目录d/e
rmdir a //删除空目录
rmdir -p d/e //删除d/e空目录
mkdir b/f //b已经是存在的目录可以不用-p选项
cp test.txt b/f //把test.txt拷贝到b/f下
rm -rf b/f/test.txt //删除test.txt
rm -ri b //提示方式来删除文件
cp -a aa bb //把aa拷贝到bb下
文件操作
1. 文件的显示和过滤
cat //全屏显示 可以同时显示多个文件
more //显示一屏(空格键翻页)
less //显示一屏(上下键翻页)
head -n //指定显示前n行
tail -n //指定显示后n行
tail -f //查看尾部最新信息
grep -v //反向筛选不含指定关键词的行
grep //正向筛选包含指定关键词的行
例如:
cat
hell
Ctrl + d //退出
cat test.c //假设test.c文件存在
cat -t test.c //显示Tab特殊字符
more test.c
空格键下一屏 //只能向下看
q //退出
less test.c
上下键
q //退出
head -6 test.c //看前面的6行
tail -6 test.c
echo "hello" >>test.c //添加到test.c
tail -f test.c //查看最新的尾部(适合看日志文件)
grep iotek test.c //查看test.c中有iotek的行
grep -v iotek test.c //查看test.c中没有iotek的行
grep -i iotek test.c //大小写不明感查看test.c中有iotek的行
grep -r "iotek" a //在a目录下查找所有的写有iotek文件
2. 文件的新增和拷贝
touch //若文件不存在,则创建新文件
//若文件存在,则更新文件的时间戳到当前系统时间
cp //缺省只拷贝文件
cp -a //拷贝文件和目录
cp -i //提示拷贝时是否覆盖
例子:
touch test.c //创建空的文件
cat test.c
echo "hello">>test.c
cat test.c
ls -l test.c
touch test.c //文件存在,则更新文件的时间戳到当前系统时间
ls -l test.c
tail -f test.c
3. 文件的删除
rm //缺省删除指定的文件
rm -i //提示确认的将要被删除的内容
rm -r //递归删除指定的文件或目录
rm -f //强制删除指定的文件或目录,无论其是否存在
例子:
rm test.c tes.c //同时删除test.c tes.c
rm -i exemples.c //提示方式删除
mkdir a/b
rm -ri a //递归+提示方式删除
4. 文件的移动、改名和查找
mv //文件的移动改名
find //文件查找
which //查找系统命令文件
locate //系统文件的快速查找
例子:
mv test.c b/ //test.c移动到b目录下
ls b
mv b/test.c test1.c //b/test.c移动到当前目录下,并改名为test1.c
ls
ls b
find . -n