2021-09-18

@TOC《精通Unix下 c语言编程与项目实践》第一章学习笔记
#1、Unix的发展历程
比起Windows,他是真正多用户多任务且具更强稳定性和更彻底开放性的操作系统。
##1.1Unix的诞生
20世纪60年代初,贝尔研究室、MIT、奇异电器公司合作研发Multics;
1973年正式更名为Unix。
##1.2Unix的发展与分支
1977年,第一代名为Berkley Software Distribution(BSD) Unix;
AT&T公司推出商业版Unix system v;
1991年Linux横空出世,解决了x86PC机没有适合的Unix操作系统的问题。
#2 Unix的基本操作
##2.1shell简介
# ls -al
shell在程序库中查找ls程序,然后请求操作系统调度新进程执行ls,并将-al作为参数传递给该进程。
##2.2系统登录
用户在“login”后输入“root”
然后出现:“root’s password:”
此时输入密码即可登录。
(注意:Unix的密码不会回显,有的版本甚至于退格键也是密码的一部分)
##2.3用户管理
Unix中的用户管理文件:/etc/passwd,文件内容展示如下
root❌0:0:root:/bin/bash
bin❌1:1:bin:/bin:/bin/bash

sybase❌500💯sy base:/home/sybase:/bin/bash
文件中每列通过冒号分割,含义为:用户名、密码、用户ID、用户组ID、用户描述、用户根目录和用户shell。
ID号为0,超级用户;ID号在0~500之间为系统用户;大于500为普通用户。
##2.4文件管理
###2.4.1文件权限
r 读权限,w写权限, x 执行权限
###2.4.2文件分类
d 表示目录文件,
-表示普通文件,
l表示链接文件,
p表示管道文件,
c表示设备字符文件,
b表示设备块文件。
###2.4.3文件操作
ls -al:显示所有文件属性
cp 源文件 目标文件:把源文件拷贝到目标文件下
rm 文件名:删除该文件
mv 源文件 目标文件:把源文件更名为目标文件
ln 源文件 目标文件:把目标文件作为源文件的一个链接
cat 文件名:浏览文件
more 文件名:交互式浏览文件内容
##2.5目录管理
pwd:(print working directory) 查询当前所在目录名称
cd 目录名称:更换当前目录到目录名称所在目录(盲猜change directory)
mkdir 目录名称:创建该目录名称的目录(盲猜make directory)
rmdir 目录名称:删除该目录名称的目录
du 目录名称:(disk usage)查询该目录名称下的所有目录信息
##2.6I/O重定向
>文件名:标准输出重定向,清空文件内容并重新写入内容
>>文件名:标准输出重定向,在文件末尾追加内容
<文件名:标准输入重定向,更改键盘输入为从该文件名代表的文件或设备中读入
2>文件名:错误输出重定向,错误信息写入该文件名代表的文件或设备中
>/dev/null:标准输出重定向,不再输出屏幕内容
##2.7管道
把一个程序的输出作为另一个程序的输入。
管道线“|”。
一条指令中可以存在多个管道线,管道线上的程序同时运行而非串行运行。
##2.8进程管理
任务管理器 ps(process)常用参数:
-e :查询当前系统正在运行的全部进程(盲猜exist)
-f:查询进程的全部信息
-t 终端名:查询运行在该“终端名”上的所有进程
-u 用户名:查询该用户执行的进程。
#3 文件编辑器vi
##3.1 vi的模式

一般模式:
进入vi后的默认模式。可完成移动光标、删除文本(字符或整行,要删除本行首字符,需调整为一般模式在首字符处按“x”键删除。)
编辑模式:
键入i,o,a,r的大小写均可进入编辑模式。可以完成文本输入操作,按“ESC”键可以退出编辑模式至一般模式。
指令模式:
键入“:”、“/”或“?”时可进入指令模式,光标移动到屏幕底行。可输入操作指令。
##vi的常用命令
1、移动光标指令
“↑” “↓”“←”"→"分别表示光标向上、下、左、右移动一个字符。
[Ctrl+f]向前移动一页
[ctrl+b]向后移动一页
[ctrl+d]向前移动半页
[ctrl+u]向后移动半页
0 到行首字符
到 行 末 字 符 2 、 字 符 串 指 令 / w o r d 向 后 寻 找 字 符 串 w o r d ? w o r d 向 前 寻 找 字 符 串 w o r d n 1 , n 2 / w o r d 1 / w o r d 2 / g 把 n 1 至 n 2 行 间 的 w o r d 1 替 换 为 w o r d 21 , 到行末字符 2、字符串指令 /word 向后寻找字符串word ?word 向前寻找字符串word n1,n2/word1/word2/g 把n1至n2行间的word1替换为word2 1, 2/wordword?wordwordn1,n2/word1/word2/gn1n2word1word21,s/word1/word2/g 全文word1替换为word2
g/word1/s//word2/g 将字符串word1替换为word2
3、编辑指令
x、X 删除一个个字符
nx 向后删除n个字符
dd 删除光标行
ndd 向下删除n行
d1G 删除从首行到光标所在行间文本
dG 删除光标行到末行
yy 复制光标行
nyy 复制n行
y1G 复制从首行到光标所在行间文本
yG 复制光标行到末行
p,P 粘贴文本
J 合并光标行和光标下一行
u 撤销前一个动作
4、系统指令
:w 存盘
:w! 强行存盘
:q 退出vi,若文件内容被更改而又未存盘必须强制退出
:q! 不存盘强制退出vi
:wq 存盘退出vi
:x 存盘退出vi
:wq! 强制存盘退出vi
:e! 不存储重新载入文件内容
:w filename 另存为文件名为filename文件
:r filename 读入文件名为filename的文件文本
:set nu 在每行首显示当前行号
n 继续上一次查询
. 继续上一次操作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值