Linux学习整理(一)

自学Linux已经两个星期了(不算之前的水课),之前也学过一些Linux,但不像现在这种学习状态。这几天除了上课,我的首要任务就是学习Linux!
在这两个星期的学习中,通过看马哥教育的视频和鸟哥的私房菜,大致学到了这些东西:
1.计算机的基础知识
2.操作系统的相关知识
3.Linux命令行的常用命令
4.Linux用户的认识


一、计算机的基础知识

  • 计算机的体系结构:运算器,控制器,存储器,输入输出
  • 机算计上电后如何识别硬件部分?上电自检
  • 前端总线:南桥北桥 固态硬盘 机械硬盘
  • 什么事CPU的主频,什么是缓存
  • 内核kernel,操作系统,API,shell之间的关系
  • 内核功能:进程管理,内存管理,文件系统,网络功能,硬件驱动,安全机制
  • 批处理系统是什么? jobs1$$$$$$$jobs2$$$$$$$$单进程
  • GUI和CLI:图形交互界面和命令行交互界面

二、Linux操作系统相关知识

  • GUN,GPL
  • 操作系统的发展历史
  • Linux的最新内核版本 www.kernel.org
  • Linux的发行厂商release:Debian,RedHat,Ubuntu,CentOS,Fedora,Mandriva
  • 开放源代码:自由获取,自由修改,自由学习
  • 了解GPL, BSD, Apache三个开源协定(版权描述)的大体联系及区别
  • 发行版:Fedora, RedHat(CentOS), SUSE, Debian(Ubuntu, Mint), Gentoo, LFS(Linux From Scratch)

    Linux的基本原则:
    1、由目的单一的小程序组成;组合小程序完成复杂任务;
    2、一切皆文件;
    3、尽量避免捕获用户接口;
    4、配置文件保存为纯文本格式;

Linux文件系统
文件系统层级标准FHS(Filesystem Hierarchy Standard):Linux标准委员会规定了根文件目录标准
/boot: 系统启动相关的文件,如内核、initrd,以及grub(bootloader)
/dev: 设备文件
设备文件:
块设备:随机访问,数据块
字符设备:线性访问,按字符为单位
设备号:主设备号(major)和次设备号(minor)
/etc:配置文件
/home:用户的家目录,每一个用户的家目录通常默认为/home/USERNAME
/root:管理员的家目录;
/lib:库文件
静态库, .a
动态库, .dll, .so (shared object)
/lib/modules:内核模块文件
/media:挂载点目录,移动设备
/mnt:挂载点目录,额外的临时文件系统
/opt:可选目录,第三方程序的安装目录
/proc:伪文件系统,内核映射文件
/sys:伪文件系统,跟硬件设备相关的属性映射文件
/tmp:临时文件, /var/tmp
/var:可变化的文件
/bin: 可执行文件, 用户命令
/sbin:管理命令

/usr:shared, read-only
/usr/bin
/usr/sbin
/usr/lib

/usr/local:
/usr/local/bin
/usr/local/sbin
/usr/local/lib

命名规则:
1、长度不能超过255个字符;
2、不能使用/当文件名
3、严格区分大小写


三、Linux基础命令(重点)
命令类型:
内置命令(shell内置),内部,内建
外部命令:在文件系统的某个路径下有一个与命令名称相应的可执行文件

命令行展开{ }

1.man命令:
Linux的命令手册:manual
man COMMAND

NAME:命令名称及功能简要说明
SYNOPSIS:用法说明,包括可用的选项
DESCRIPTION:命令功能的详尽说明,可能包括每一个选项的意义
OPTIONS:说明每一个选项的意义
FILES:此命令相关的配置文件
BUGS:
EXAMPLES:使用示例
SEE ALSO:另外参照

翻屏:
向后翻一屏:SPACE
向前翻一屏:b
向后翻一行:ENTER
向前翻一行:k

查找:
/KEYWORD: 向后
n: 下一个
N:前一个
?KEYWORD:向前
n: 下一个
N:前一个

退出:q

获得命令的使用帮助:
内部命令:
    help COMMAND
外部命令:
    COMMAND --help

2.ls命令:
list 列表 目录

-l:长格式
    文件类型:
        -:普通文件 (f)
        d: 目录文件
        b: 块设备文件 (block)
        c: 字符设备文件 (character)
        l: 符号链接文件(symbolic link file)
        p: 命令管道文件(pipe)
        s: 套接字文件(socket)
        文件权限:9位,每3位一组,每一组:rwx(读,写,执行), r--
        文件硬链接的次数
        文件的属主(owner)
        文件的属组(group)
        文件大小(size),单位是字节
        时间戳(timestamp):最近一次被修改的时间
        访问:access
        修改:modify,文件内容发生了改变
        改变:change,metadata,元数据
-h:做单位转换
-a: 显示以.开头的隐藏文件
    . 表示当前目录
    .. 表示父目录
-A
-d: 显示目录自身属性
-i: index node, inode
-r: 逆序显示
-R: 递归(recursive)显示

3.cd命令:change directory
家目录,主目录, home directory
cd ~USERNAME: 进入指定用户的家目录
cd -:在当前目录和前一次所在的目录之间来回切换
cd:回到家目录

4.type命令: 查看命令属于哪种类型
内置命令还是外部命令

5.date命令:时间管理
hwclock命令
cal命令: calendar

6.whatis命令:
查看命令手册的章节

分章节:
1:用户命令(/bin, /usr/bin, /usr/local/bin)
2:系统调用
3:库用户
4:特殊文件(设备文件)
5:文件格式(配置文件的语法)
6:游戏
7:杂项(Miscellaneous)
8: 管理命令(/sbin, /usr/sbin, /usr/local/sbin)

7.info命令:在线文档

8.file命令:查看文件类型

9.mkdir命令:创建空目录

10.rmdir命令:删除空目录

11.touch命令:修改文件时间或创建新文件
touch后面直接接文件,该文件的三个时间都会被更新为目前时间,如果文件不存在,则主动创建一个新的文件。

文件的三个时间参数:
    modification time(mtime):该文件的内容数据更改时更新的时间
    status time(ctime):文件的状态改变时更新的时间,像是权限与属性被更改了
    access time:该文件被访问时更新的时间
-a:仅修改访问时间
-c:仅修改文件时间(ctime)
-m:仅修改mtime
-t:后面可接欲修改时间而不用目前的时间格式为YYMMDDhhmm

12.stat命令:

13.tree命令:查看目录树

14.nano命令:超简单文本编辑器

15.rm命令:移除文件或目录
-i:互动模式,在删除时询问用户是否操作
-f:强制(force)
-r:递归删除

16.cp命令:复制文件或目录
cp 源文件(source) 目标文件(destination)
cp除了单纯的复制之外,还可以创建连接文件(即快捷方式)
-r:递归持续复制,用于目录的复制行为
-i:若目标文件(destination)已存在,在覆盖时会询问操作的进行
-f:为强制(force)的意思
-p:连同文件的属性一起复制,而非使用默认属性(备份常用)
-a:归档复制,常用于备份

17.mv命令:移动文件与目录,或更名

18.install命令:复制文件和指定属性
-d:后面只有一个文件,创建目录
-m:复制后制定权限

19.cat命令:concatenate
cat:由第一行开始显示文件内容
tac:由最后一行开始显示文件内容

20.more:一页一页的显示文件内容
21.less:和more类似,但它比more更好的是可以往前翻页

22.head:只看头几行
23.tail:只看后几行

文本处理:
cut、join、sed、awk
database:数据库

关系型数据库:
表:二维表

文本文件:
Tom:23:male:2013/05/06

cut:
    -d: 指定字段分隔符,默认是空格
    -f: 指定要显示的字段
        -f 1,3
        -f 1-3

文本排序:sort
    -n:数值排序
    -r: 降序
    -t: 字段分隔符
    -k: 以哪个字段为关键字进行排序
    -u: 排序后相同的行只显示一次
    -f: 排序时忽略字符大小写

uniq: 
    -c: 显示文件中行重复的次数
    -d: 只显示重复的行

文本统计:wc (word count)
    -l 
    -w
    -c
    -L

字符处理命令:tr —— 转换或删除字符
tr [OPTION]... SET1 [SET2]
    -d: 删除出现在字符集中的所有字符
tr ab AB

转载于:https://blog.51cto.com/13691207/2103393

内容概要:本文系统介绍了算术优化算法(AOA)的基本原理、核心思想及Python实现方法,并通过图像分割的实际案例展示了其应用价值。AOA是种基于种群的元启发式算法,其核心思想来源于四则运算,利用乘除运算进行全局勘探,加减运算进行局部开发,通过数学优化器加速函数(MOA)和数学优化概率(MOP)动态控制搜索过程,在全局探索与局部开发之间实现平衡。文章详细解析了算法的初始化、勘探与开发阶段的更新策略,并提供了完整的Python代码实现,结合Rastrigin函数进行测试验证。进步地,以Flask框架搭建前后端分离系统,将AOA应用于图像分割任务,展示了其在实际工程中的可行性与高效性。最后,通过收敛速度、寻优精度等指标评估算法性能,并提出自适应参数调整、模型优化和并行计算等改进策略。; 适合人群:具备定Python编程基础和优化算法基础知识的高校学生、科研人员及工程技术人员,尤其适合从事人工智能、图像处理、智能优化等领域的从业者;; 使用场景及目标:①理解元启发式算法的设计思想与实现机制;②掌握AOA在函数优化、图像分割等实际问题中的建模与求解方法;③学习如何将优化算法集成到Web系统中实现工程化应用;④为算法性能评估与改进提供实践参考; 阅读建议:建议读者结合代码逐行调试,深入理解算法流程中MOA与MOP的作用机制,尝试在不同测试函数上运行算法以观察性能差异,并可进步扩展图像分割模块,引入更复杂的预处理或后处理技术以提升分割效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值