1,linux 文件类型
普通文件 | 目录文件 | 链接文件 | 块设备 | 字符设备 | Socket | 管道文件 |
- | d | l | b | c | s | p |
2,linux 文件属性
蓝色 | 绿色 | 浅蓝色 | 红色 | 灰色 |
目录 | 可执行文件 | 链接 | 压缩 | 其他 |
(unbuntu)
——————————————————————————————————————————————————————
3,LINUX文件系统目录结构
bin: 存放常用命令
boot : 存放引导相关的文件(启动文件)
dev : 存放设备装置的文件
etc : 存放配置相关的文件
home : 存放普通用户的相关文件
lib : 库文件,已有的函数库之类
mnt : 默认挂载光驱和软驱
opc : 第三方的软件
proc : 核心的进程程序(保存所有内核参数以及系统配置信息)
root : 存放ROOT用户相关文件
sbin : 要具有一定权限才可以使用命令
srv :网络服务需要的一些资料
sys : 系统核心程序
usr : 用户文件
var : 存放经常变化的文件
4,文件权限
- | rw- | r-- | r--
文件类型 | 文件所有者对文件的权限 | 文件所在组的成员权限 | 其他组的用户权限 |
- 文件 d 目录 | 链接 |
r 可读 4 w 可写 2 x 可执行 1 |
权限所属对象:
拥有者 : u
同组人:g
其他人:o
所有人:a
5,常见命令
作用 | 命令 | 参数 |
备注 |
给系统定义别名 | alias |
eg:alias ll = 'ls -al' (不带参数可查询现有已定义的别名) |
|
通配符 | *,?,[] | 通配0个或多个字符;通配任意单个字符;通配某个范围的任意一个字符 | |
输入输出重定向 | >,<,>> |
输出:>aaa.c :把结果写入aaa.c(覆盖);>>aaa.c : 把结果写入aaa.c(追加到末尾) 输入:< : 从标准输入设别键盘输入 |
|
管道符 | | | ||
帮助 | help;man | 命令 | 插叙该命名的作用及其参数的作用 |
清屏 | clear | 清楚当前屏目上的内容 | |
历史命令 | history |
不带参数:最近所有的命令 history 5:最近5个命令 !5 : 执行历史编号为5的命令 !! : 执行最后一次命令 !ls : 执行最后一次以ls开头的命令 |
|
查看文件和目录 | ls |
-a : 显示隐藏文件 -l : 显示长列表格式 -R : 显示从当前目录开始的所有子目录,一层一层 展现 |
|
建立空文件 | touch | 如果文件不存在,将新建文件;如果存在,将更新文件建立时间 | |
建立目录(文件夹) | mkdir | -p : 目录不存在时,可以建立目录 | |
删除空文件 | rmdir | ||
删除文件 | rm |
-r : 删除整个目录及子目录 -f : 强制删除 -i : 询问是否删除 |
|
查看文件内容 |
cat more |
不分屏显示文本内容 带分页显示文件内容,一般与 | 连用 |
|
链接 | ln (源) ( 目标) |
-s :软连接 不带 :硬链接/-d :允许超级用户制作目录的链接 |
以路径方式存在,类似与快捷方式,可跨文件系统 以文件副本形式存在,不占实际空间,只能在同一个文件系统 |
拷贝 | cp |
不带:复制一个文件 -r : 复制一个文件夹 |
eg: cp a.out /home/xiaoming/ |
移动或重命名目录 | mv | eg : chmod 777 text 所有者,所在组,其他组 | |
修改文件权限 | chmod | ||
更改某个文件或目录的所属 | chown | -R : eg: chown -R xiaoming ./abc 更改abc下所有文件和目录 |
eg : chown xiaoming abc 更改abc所有者为xiaoming chown xiaoming ./abc 更改abc目录所属为xiaoming |
更改文件或目录所属组 | chgrp | eg : chgrp root abc | |
查找文件 | find |
-name : 按文件名 -user : 按用户 -size : 按大小 -mtime : 按最后一次修改时间 -atime : 按最后一次访问时间 |
eg : find / -name aaa.c / :根目录 find /root/ -name aaa.c |
grep |
在文本中查询内容 -n : 显示位置,在第几行 -i : 忽略大小写 |
eg : grep "huawei" hello.c |
|
统计文件或者输出结果 | wc |
-i : 统计多少行 -w : 统计多少个单词 -c : 统计多少个字符 |
|
日期时间 | data | 显示当前日期 | |
cal |
cal 显示当前月份的日历 cal 月份 年份 cal 年份 |
||
列出当前系统已经运行的进程 | ps(静态) |
-a : 显示终端所有进程信息 -u : 以用户格式显示 -x : 显示后台进程的参数 |
一般用 ps -aux 全面表示;PID为进程号 |
终止进程 | kill | -9 ;强制杀死 kill -9 进程号 | |
终止当前执行的程序 | ctrl+c | ||
退出登陆用户 | exit/ctrl+d | ||
切换用户 | 普通用户 | su 用户名 | |
root | su root :切换用户 ,但没有改变用户环境 | ||
su - : 默认切换到root,并切换到root用户的环境 | |||
关机 | shutdown -h now | ||
重启 | shutdown -r now | ||
显示整个文件系统的空间使用情况 | df | ||
测试俩个ip是否连同 | ping 目标ip | ||
查看ip | ifconfig | 在windows上为ipconfig | |
程序管理包在线安装和卸载 | apt-get install <文件名> | ||
apt-get remove -purge <文件名> | |||
字符串转化为整形 | atoi | #inlcude "stdlib.h" | |
.tgz文件 | tar -zxvf | 解压 | |
tar -zcvf | 压缩 | ||
查看分区 | fdisk -l | 可以显示出所有挂载和未挂载的分区,但不显示文件系统类型 | |
df -T | 只可以查看已经挂载的分区和文件系统类型 | ||
parted -l | 可以查看未挂载的文件系统类型,以及哪些分区尚未格式化 | ||
lsblk -f | 也可以查看未挂载的文件系统类型 | ||
查看设备挂载 | dmesg | ||
.bz2文件 | 解压: bzip2 -d FileName.bz2 压缩: bzip2 -z FileName |
||
.tar.bz2 文件 | 解压:tar jxvf FileName.tar.bz2 压缩:tar jcvf FileName.tar.bz2 DirName |
||
6,vi简单使用
1,三种模式
1)命令模式
2)插入模式
3)末行模式
2,命令———>插入
i:在之前输入
a: 在之后输入
o : 在下一行输入
3,简单命令
命令模式 | 末行模式 | |||
分类 | 命令 | 分类 | 命令 | |
光标移动 | k 上 | 保存退出 | :w 保存 | |
j 下 | :w <文件名> 保存为新文件 | |||
h 左 | :q 退出 | |||
l 右 | :q! 强制退出 | |||
o 行首 | :wq 保存退出 | |||
$ 行尾 | ||||
G 文件末尾 | ||||
[n]G 第[n]行 | ||||
[n]+/- 向上/向下移动n行 | ||||
删除 | x 删除光标位的一个字 | 行号设置与取消 | :set nu 设置行号 | |
dw 删除光标位的当前词 | :set nonu 取消行号 | |||
dd 删除光标所在行 | ||||
复制粘贴 | yw 复制光标所在的词 | 拷贝和移动 | :n1,n2con3 拷贝n1,n2行在n3行之后 | |
yy 复制光标所在行 | :n1,n2mn3 移动n1,n2行在n3行之后 | |||
[n]yy 复制从光标开始n行 | ||||
p 当前行下粘贴 |
补充:命令模式下,u 可撤回上次操作。
7,储存
分为大端、小端
大端:字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中
小端:与大端存储格式相反低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节
32bit宽的数0x12345678在Little-endian模式CPU内存中的存放方式(假设从地址0x4000开始存放)为:
内存地址 |
0x4000 |
0x4001 |
0x4002 |
0x4003 |
存放内容 |
0x78 |
0x56 |
0x34 |
0x12 |
而在Big-endian模式CPU内存中的存放方式则为:
内存地址 |
0x4000 |
0x4001 |
0x4002 |
0x4003 |
存放内容 |
0x12 |
0x34 |
0x56 |
0x78 |
先从arm8之后,小端为主流;但在网络传输中,依然是大端模式