linux 系统笔记
shell 学习:http://www.jb51.net/article/25729.htm
一、常用命令
1.Linux 系统shell分类:Bourne shell(sh),C shell(csh),Korn shell(ksh)
注释:sh是unix最初使用的shell,在编程方面非常出色,但在处理用户之间交换做的不如其他shell,linux系统缺省使用的shell是
Bourne Again shell(bash),对普通用户用用$做提示符,对超级用户root用#作提示符csh是一种更适合于编程的shell,他的
语法和C语言相似,ksh结合了sh和csh的优点
2.ls 该命令用来列出当前目录下的所有文件和子目录,相当于windows的dir命令,常用的参数有三个:-a,-l,-f
-a 显示所有文件,包括隐藏文件
-l 查看更详尽的文件资料
-f 在列出的文件(目录)后加个符号,例如:可执行文件加*,目录则加‘/’
3.cp 该命令式用来复制文件,相当于dos下的copy命令,
使用格式: cp -r源文件(source) 目的文件(target)
文件复制并可以覆盖原来的文件
1) 将new目录下的所有文件拷贝到test下,并覆盖test下的文件(这个总会提示是否要覆盖文件)
cp -rf new/* test
2) 功能同上,但不会提示覆盖
yes | cp -rf new/* test
4.rm 该命令用来删除文件,常用的参数有-i,-r,-f
-i 在删除文件时要先询问我们是否要删除,输入y则删除
-r 和rmdir命令相同,不过比rmdir功能更强大,-r是连同这个目录下的子目录一起删除
-f 不经确认强制删除
5.mv 可以用来移动文件和重名文件,如: mv /temp/test.txt /root mv test.txt t1.txt
6.ps 进程及任务管理,参数 -e 显示所有进程 -f 全格式 -l 长格式 -x后台进程
ps -aux|grep www.project.com
7.pwd 表示当前路径
8.whoami 表示当前用户
9.设备不能直接用cd 命令进入,应为设备不是一个目录,如cd cdrom将报错,如果要访问必须将cdrom挂载到一个目录下,例如:
mount /dev/cdrom /mnt/cdrom 表示将cdrom挂载到mnt目录下的cdrom文件夹下,然后我们就可以访问挂载的那个文件访问cdrom
里的内容了。如果不想挂载了用命令 unmont /dev/cdrom 就把/dev/cdrom 卸载了。
10.装linux操作系统至少两个分区,/ 根分区 swap 交换分区
11.linux的启动过程
a.load bios
b.read MBR's config to find out the OS(找到要启动的操作系统)
c.load the kernel of the OS(操作系统)
d.init process starts
e.execute /etc/rc.d/rc.sysinit
f.start other modules(etc/modules.conf)
g.execute the run level scripts
h.execute /etc/rc.d/rc.local
i.execute /bin/login
j.shell started
12.linux 的run level 启动级别
命令:init n
0:系统停机状态
1: 但用户工作状态
2:多用户工作状态(没有NFS(网络文件系统))
3: 多用户工作状态(有NFS)
4:系统未使用,预留的
5:图形界面
6:系统正常关闭并重启
13.logout 注销
14.显示命令参数的用法 用man 命令;或 命令 --help
15.touch 创建文件
16.more 查看文件内容,并分页
16.cat 正序查看文件内容
17.tac 逆序查看文件内容
18.head 查看文件前几条记录,可以带参数
19.tail 查看文件末尾几条记录,可以带参数
tail -f -n100 filename 显示末尾100行数据
20.find 查找文件 例如:find / -name *local 在根目录下查找文件名后缀是local的文件
find /test -name file1.txt 查找/test目录下名字为file1.txt 的文件
grep -n 【关键字】 【文件名】 # 在文件中查找 所有带有关键字的 行。
grep -ir "Exception" logs/* (查找日志目录中所有带有Exception的文件)
21.whereis 命令 表示命令从哪里来的(文件的地址)
22.echo 输出命令 例如:echo $path 表示输出path环境变量的值,变量用$表示
23.grep 查找字符 文件名 表示在文件中查找包含查找字符在文件中的行并显示
24.fdisk -l 显示磁盘的信息
25.ctrl+c 执行停止
26.| 管道 例如:ls -l | grep "^d" 表示显示当前目录下的所有文件
27.wall 内容 表示广播消息,每个登陆的用户都会受到同样的消息
28.>输出重定向 例如:ls > cmd.txt 把内容输出到cmd.txt文件中
29.<输入重定向 例如:wall < aa.txt 把文件中的内容输入到控制台中
30.reboot 重启
31.startx 进入图形界面
32.chkconfig 检查配置文件,参数--list 显示所有的配置列表,--add 增加,--del 删除,--level 启动级别,
例如:chkconfig --level 5 vsftpd on在图形界面下启动vsftpd
chkconfig vsftpd on 在所有级别上都启动vsftpd
33.wget 命令行下连接网络资源
34.kill 进程号 杀死进程。参数 -9 表示强制关闭
35.以.开头的都是隐藏文件
36.shutdown -h now 立即关机
shutdown -r now 立即重启
logout 注销
37.修改系统启动级别要修改文件/etc/inittab 文件
1)如果你现在系统默认启动进入图形用户界面,则修改这个文件就可以实现默认启动进入命令行模式
vi /etc/inittab
最后一行中# Run xdm in runlevel 5 下面
x:5:respawn 这里面的5改成3 就可以了
38.按两下tab键会自动补全
39.df 目录名 表示目录属于哪个分区
40.chsh -s shell的目录 表示更改shell 例如 :chsh -s /bin/csh 更改shell后要注销用户,不然不起作用
41.history 显示最近使用的命令
42.网络设置
第一种方法:
a.root 用户登录过后,输入setup命令
b.在进入的页面text mode setup utiliy中选择network configration 就可以设置ip,子网掩码,网关,dns
c.输入/etc/rc.d/init.d/network restart 就能生效了
第二种方法:
修改/etc/sysconfig/network-scripts/ifcfg-eth0文件,再输入/etc/rc.d/init.d/network restart 就能生效了
43.任务调度crontab -e
终止任务调度 crontab -r
列出调度任务 crontab -l
44.cal 年 查看日历
45.alias 别名名字=‘命令’ 给命令起别名
46.查看文件大小
du -sh filename
du -sh * 查询当前目录的文件大小
47.vi 分页
ctrl+u向前翻滚半屛,ctrl+d向后翻滚半屛
ctrl+b向前翻滚全屛,ctrl+f向后翻滚全屏
48.vi打开文件时光标定位
vi +n filename //打开文件时光标定位在第n行
vi + filename //打开文件时光标定位在最后一行
49.ddp vi的上下两行交换
50.修改linux启动级别
修改的/etc/inittab 文件 initdefault
二、硬盘分区
1.一个硬盘最多只能分四个分区,也就是说主分区加扩展分区最多只能有四个,因为硬盘的分区表上只能记录四条记录,扩展分区又可以分多个逻辑分区,逻辑分区没有限制个数。
2.dev 设备,所有的分区都存在这个目录下,所有的linux分区的命名格式是:/dev/xxyN
xx表示设备的类型,通常是hd(IDE硬盘)或sd(SCSI硬盘)
y表示分区所在的设备(哪一块硬盘,字母从a开始),例如:/dev/hda(第一个IDE硬盘)或
/dev/sda(第一个SCSI硬盘)
N是数字表示分区,前四个分区(主分区和扩展分区)是从数字1到4排列,逻辑分区从5开始
例如:/dev/hda3表示第一块IDE硬盘上的第三个主分区或扩展分区,/dev/sdb6表示第二块
SCIS硬盘的第二个逻辑分区
三、编辑器命令 vi
1.vi有两种模式,一种是命令模式,一种是编辑模式,模式切换用esc
2.输入a 表示添加(编辑)
3.在命令模式下输入:表示要执行什么命令,后跟w表示要存盘,q是退出,q!是不存盘退出,wq存盘退出
4.在命令模式下敲dd 删一行,dw删一个单词,o往下插入一行,O往上插入一行
5.替换字符串:在命令模式下输入s/test/test1 表示把第一个test替换为test1;
s/test/test1/g 表示把当前行所有test替换为test1;
n,$s/well/good/ 替换第 n 行开始到最后一行中每一行的第一个 well 为 good
6.显示行号:set nu
7.ctrl+v 可视区域模式
8.1,3d 删除1到3行的数据
9.3dd 删除当前行开始的三行数据
10 拷贝, 删除与粘贴
在 vi 中 y 表示拷贝, d 表示删除, p 表示粘贴 其中拷贝与删除是与光标移动命令
结合的, 看几个例子就能够明白了
yw 表示拷贝从当前光标到光标所在单词结尾的内容
dw 表示删除从当前光标到光标所在单词结尾的内容
y0 表示拷贝从当前光标到光标所在行首的内容
d0 表示删除从当前光标到光标所在行首的内容
y$ 表示拷贝从当前光标到光标所在行尾的内容
d$ 表示删除从当前光标到光标所在行尾的内容
yfa 表示拷贝从当前光标到光标后面的第一个a字符之间的内容
dfa 表示删除从当前光标到光标后面的第一个a字符之间的内容
特殊地:
yy 表示拷贝光标所在行
p 粘贴
dd 表示删除光标所在行
D 表示删除从当前光标到光标所在行尾的内容
关于拷贝, 删除和粘贴的复杂用法与寄存器有关, 可以自行查询
11 撤销操作
u撤销一次
12 快速移动光标
在 vi 中, 移动光标和编辑是两件事, 正因为区分开来, 所以可以很方便的进行光标定位和编辑 因此能更快一点移动光标是很有用的
w(e) 移动光标到下一个单词
b 移动光标到上一个单词
0 移动光标到本行最开头
^ 移动光标到本行最开头的字符处
$ 移动光标到本行结尾处
H 移动光标到屏幕的首行
M 移动光标到屏幕的中间一行
L 移动光标到屏幕的尾行
gg 移动光标到文档首行
G 移动光标到文档尾行
c-f (即 ctrl 键与 f 键一同按下) 本命令即 page down
c-b (即 ctrl 键与 b 键一同按下, 后同) 本命令即 page up
'' 此命令相当有用, 它移动光标到上一个标记处, 比如用 gd, * 等查
找到某个单词后, 再输入此命令则回到上次停留的位置
' 此命令相当好使, 它移动光标到上一次的修改行
` 此命令相当强大, 它移动光标到上一次的修改点
相关推荐
内容概要:本文详细介绍了基于MATLAB GUI界面和卷积神经网络(CNN)的模糊车牌识别系统。该系统旨在解决现实中车牌因模糊不清导致识别困难的问题。文中阐述了整个流程的关键步骤,包括图像的模糊还原、灰度化、阈值化、边缘检测、孔洞填充、形态学操作、滤波操作、车牌定位、字符分割以及最终的字符识别。通过使用维纳滤波或最小二乘法约束滤波进行模糊还原,再利用CNN的强大特征提取能力完成字符分类。此外,还特别强调了MATLAB GUI界面的设计,使得用户能直观便捷地操作整个系统。 适合人群:对图像处理和深度学习感兴趣的科研人员、高校学生及从事相关领域的工程师。 使用场景及目标:适用于交通管理、智能停车场等领域,用于提升车牌识别的准确性和效率,特别是在面对模糊车牌时的表现。 其他说明:文中提供了部分关键代码片段作为参考,并对实验结果进行了详细的分析,展示了系统在不同环境下的表现情况及其潜在的应用前景。
嵌入式八股文面试题库资料知识宝典-计算机专业试题.zip
嵌入式八股文面试题库资料知识宝典-C and C++ normal interview_3.zip
内容概要:本文深入探讨了一款额定功率为4kW的开关磁阻电机,详细介绍了其性能参数如额定功率、转速、效率、输出转矩和脉动率等。同时,文章还展示了利用RMxprt、Maxwell 2D和3D模型对该电机进行仿真的方法和技术,通过外电路分析进一步研究其电气性能和动态响应特性。最后,文章提供了基于RMxprt模型的MATLAB仿真代码示例,帮助读者理解电机的工作原理及其性能特点。 适合人群:从事电机设计、工业自动化领域的工程师和技术人员,尤其是对开关磁阻电机感兴趣的科研工作者。 使用场景及目标:适用于希望深入了解开关磁阻电机特性和建模技术的研究人员,在新产品开发或现有产品改进时作为参考资料。 其他说明:文中提供的代码示例仅用于演示目的,实际操作时需根据所用软件的具体情况进行适当修改。
少儿编程scratch项目源代码文件案例素材-剑客冲刺.zip
少儿编程scratch项目源代码文件案例素材-几何冲刺 转瞬即逝.zip
内容概要:本文详细介绍了基于PID控制器的四象限直流电机速度驱动控制系统仿真模型及其永磁直流电机(PMDC)转速控制模型。首先阐述了PID控制器的工作原理,即通过对系统误差的比例、积分和微分运算来调整电机的驱动信号,从而实现转速的精确控制。接着讨论了如何利用PID控制器使有刷PMDC电机在四个象限中精确跟踪参考速度,并展示了仿真模型在应对快速负载扰动时的有效性和稳定性。最后,提供了Simulink仿真模型和详细的Word模型说明文档,帮助读者理解和调整PID控制器参数,以达到最佳控制效果。 适合人群:从事电力电子与电机控制领域的研究人员和技术人员,尤其是对四象限直流电机速度驱动控制系统感兴趣的读者。 使用场景及目标:适用于需要深入了解和掌握四象限直流电机速度驱动控制系统设计与实现的研究人员和技术人员。目标是在实际项目中能够运用PID控制器实现电机转速的精确控制,并提高系统的稳定性和抗干扰能力。 其他说明:文中引用了多篇相关领域的权威文献,确保了理论依据的可靠性和实用性。此外,提供的Simulink模型和Word文档有助于读者更好地理解和实践所介绍的内容。
嵌入式八股文面试题库资料知识宝典-2013年海康威视校园招聘嵌入式开发笔试题.zip
少儿编程scratch项目源代码文件案例素材-驾驶通关.zip
小区开放对周边道路通行能力影响的研究.pdf
内容概要:本文探讨了冷链物流车辆路径优化问题,特别是如何通过NSGA-2遗传算法和软硬时间窗策略来实现高效、环保和高客户满意度的路径规划。文中介绍了冷链物流的特点及其重要性,提出了软时间窗概念,允许一定的配送时间弹性,同时考虑碳排放成本,以达到绿色物流的目的。此外,还讨论了如何将客户满意度作为路径优化的重要评价标准之一。最后,通过一段简化的Python代码展示了遗传算法的应用。 适合人群:从事物流管理、冷链物流运营的专业人士,以及对遗传算法和路径优化感兴趣的科研人员和技术开发者。 使用场景及目标:适用于冷链物流企业,旨在优化配送路线,降低运营成本,减少碳排放,提升客户满意度。目标是帮助企业实现绿色、高效的物流配送系统。 其他说明:文中提供的代码仅为示意,实际应用需根据具体情况调整参数设置和模型构建。
少儿编程scratch项目源代码文件案例素材-恐怖矿井.zip
内容概要:本文详细介绍了基于STM32F030的无刷电机控制方案,重点在于高压FOC(磁场定向控制)技术和滑膜无感FOC的应用。该方案实现了过载、过欠压、堵转等多种保护机制,并提供了完整的源码、原理图和PCB设计。文中展示了关键代码片段,如滑膜观测器和电流环处理,以及保护机制的具体实现方法。此外,还提到了方案的移植要点和实际测试效果,确保系统的稳定性和高效性。 适合人群:嵌入式系统开发者、电机控制系统工程师、硬件工程师。 使用场景及目标:适用于需要高性能无刷电机控制的应用场景,如工业自动化设备、无人机、电动工具等。目标是提供一种成熟的、经过验证的无刷电机控制方案,帮助开发者快速实现并优化电机控制性能。 其他说明:提供的资料包括详细的原理图、PCB设计文件、源码及测试视频,方便开发者进行学习和应用。
基于有限体积法Godunov格式的管道泄漏检测模型研究.pdf
嵌入式八股文面试题库资料知识宝典-CC++笔试题-深圳有为(2019.2.28)1.zip
少儿编程scratch项目源代码文件案例素材-几何冲刺 V1.5.zip
Android系统开发_Linux内核配置_USB-HID设备模拟_通过root权限将Android设备转换为全功能USB键盘的项目实现_该项目需要内核支持configFS文件系统
C# WPF - LiveCharts Project
少儿编程scratch项目源代码文件案例素材-恐怖叉子 动画.zip
嵌入式八股文面试题库资料知识宝典-嵌⼊式⼯程师⾯试⾼频问题.zip