黑马程序员-Linux系统编程-01

课程链接

01-Linux命令基础习惯-Linux系统编程_哔哩哔哩_bilibili

课程重点笔记

黑马程序员-Linux系统编程-01_第1张图片黑马程序员-Linux系统编程-01_第2张图片

 

 01-linux命令基础习惯

终端

终端:一切输入、输出的总称,因此终端并不是一定指的是命令行,只要是能进行输入或者输出即可,但是在linux终端上‘’内嵌命令解释器shell''

解释器

cat /etc/shells  ---  存在的解释器

echo  $SHELL --- 当前解释器类型(只能是大写,不能是小写)

黑马程序员-Linux系统编程-01_第3张图片

 

常见快捷键命令 

命令补齐键---table  (当文件名太长的时候,可以直接使用该命令,提高速度和准确性)

上下键,可以显示之前输入命令

Ctrl + A :        光标移动到最前面

Ctrl + E :        光标移动到最后面

Ctrl + U :     终端命令全部删除

02-类uinx系统目录

linux下一切皆文件

黑马程序员-Linux系统编程-01_第4张图片

./data与data结果是一样的,但data是交给命令解释器的,而./data是当作一个可执行程序直接运行的。在bin文件中存在许多可执行文件命令 

03-目录和文件操作-01 

绝对路径和相对路径

绝对路径:从根目录/开始描述路径 --- cd /home/user/file.txt

相对路径:从当前位置开始描述路径  --cd file.txt

Linux文件类型 

-:普通

d:目录

c:字符设备

b:块设备

l:软连接

p:管道

s:套接字

常见命令 

ls -Rl:递归显示文件信息(把文件里面的字文件内容打开甚至是子文件的子文件的内容)

which:查看命令所在路径          which  data

rm -rf:-r表示递归删除   -f表示强制性删

cat:适合小文件阅读

tac:倒着显示,比如有些文件的重要内容是在最后面的显示

more:大文件显示,可以显示部分内容,采取翻页的形式

head:显示前面X行        head -行数  文件        head -6 file,txt--表示显示file.txt前面的6行

tail:显示后面的X行         tail -行数   文件        显示file.txt后面的几行

du、df用于磁盘知识

4:软连接和硬连接

软连接:ln -s 文件 文件.s        -- 文件.s的大小是因为它保存了文件的路径

说明文件的时候使用绝对路径,为了确保软连接的文件能移动到其他文件中去,如果使用相对路径的话,你将软连接移动到其他路径,那么会找不到原路径,因为软连接保存的是源文件的路径,路径变了那么就找不到了

ln -s /home/file.txt file.s

cat file.s:是不会显示任何作用的

 权限问题:软连接和源文件的权限不同,只需要记住软连接的权限并不代表源文件 

黑马程序员-Linux系统编程-01_第5张图片

(3条消息) 软链接和硬链接到底有啥作用和区别_明月几时有666的博客-CSDN博客_软连接和硬链接的区别

硬连接:ln file.txt file.hard 

如果产生多个硬连接文件,那么其实硬连接的文件是源文件的拷贝,并且特点是改变硬连接文件内容那么源文件的内容也会改变,但是假如一个源文件的硬连接有多个,那么删除一个不会影响源文件

stat file.s:显示文件详细内容

黑马程序员-Linux系统编程-01_第6张图片

黑马程序员-Linux系统编程-01_第7张图片 

5:创建修改用户和用户组

chomd:修改文件的所属权限

想理解一个文件的:rw-  rw- r--,需要学会添加用户和用户组,然后在不同的用户操作其他用户的权限

添加用户:sudo adduser 用户

添加用户组:sudo addgroup 用户组

chown 用户 文件:把文件弄在用户中

sudo chgrp 文件组 文件:将文件放在文件组中

删除用户:sudo deluser 用户

黑马程序员-Linux系统编程-01_第8张图片

 125:信号的概念和机制

信号的概念 

 信号--不能携带大量信息、满足某一个条件发送

计算机的很多设计都是生活中的场景,映射于生活,例如信号就是生活中的事情。

如果有不好理解的概念,那么你可以把概念映射到生活当中 

信号的机制 

黑马程序员-Linux系统编程-01_第9张图片 

 信号是驱使内核进行处理,因此进程A发信号给进程B,其实是进程A通知内核,然后内核进行处理,对进程B进行操作,因此信号实际上是通知作用

 

黑马程序员-Linux系统编程-01_第10张图片 产生信号方式黑马程序员-Linux系统编程-01_第11张图片

信号的处理方式 

 黑马程序员-Linux系统编程-01_第12张图片

 阻塞信号集和未决信号集黑马程序员-Linux系统编程-01_第13张图片

信号产生--翻转为1表示未决---查找对应信号屏蔽字是否为0--是0则进行信号处理--完成

信号产生--翻转为1表示未决---查找对应信号屏蔽字是否为0--是1-则信号阻塞一直等待信号屏蔽字为0

 黑马程序员-Linux系统编程-01_第14张图片

 使用位图的形式表示状态--因此只有0/1表示,初始状态均为0

黑马程序员-Linux系统编程-01_第15张图片

128:信号四要素与常规信号  

 

 四要素:编号、名称、事件(触发条件)、默认处理动作

在程序编程中,使用信号的名称更好,因为在不同环境下,其相同的信号的编号会有所不同 

黑马程序员-Linux系统编程-01_第16张图片 

129:kill函数和kill命令

黑马程序员-Linux系统编程-01_第17张图片

kill函数只是发信号而已,不是杀死信号

 同一个进程组,可以理解为一个主进程创建了多个子进程,那么子进程与主进程都是在一个进程组中。使用ps -aux查看进程信息

 黑马程序员-Linux系统编程-01_第18张图片

 黑马程序员-Linux系统编程-01_第19张图片

 130:alarm函数

黑马程序员-Linux系统编程-01_第20张图片

 重点是定时与进程状态无关(自然定时法)

你可能感兴趣的:(#,linux系统编程,linux,运维,服务器)