嵌入式系统及应用Linux学习笔记(一)——常用命令

https://blog.csdn.net/qq_40700822/article/details/106080389

Linux简介

Linux是一款优秀的计算机操作系统
LINUX是在UNIX基础上开发,具有UNIX全部功能。
1991年,芬兰赫尔辛基大学的学生Linus Torvalds开发了Linux。
Linus Torvalds把它变成了“自由”软件。
注意:“自由”不是“免费”, “自由”即开源。
开源与免费的区别:免费软件通常以二进制文件形式发布。用户虽然可以免费使用,但无权对软件进行任何修改。开源软件是将软件以源代码形式发布,并遵循GPL等开源协议,用户不仅能使用,而且还可对软件进行改进。

Linux特点

1.开放性
开放性是指系统遵循世界标准规范,特别是遵循开放系统互联(OSI)国际标准。
2.多用户
Linux操作系统允许多个用户同时登录到系统当中
3.多任务
计算机同时执行多个程序,而且各个程序的运行相互独立
4.出色的稳定性能
统一当作文件来看
7.丰富的网络功能
完善的内置网络是Linux的一大特点
8.安全性
采取了许多安全措施,包括对读、写操作进行权限控制,带保护的子系统,审计跟踪和内核授权
9.可移植性
能够在微型机到大型计算机的任何环境和平台上运行

Linux基本操作

1、Linux的登录

有2种方式可以进入Linux的文本界面
虚拟控制台:用组合键Ctrl+Alt+F2、 Ctrl+Alt+F7切换
GUI下的仿真终端:(ALT+CTL+T)

2、shell程序命令

在这里插入图片描述

Linux的基本命令

  1. passwd命令
    更改用户密码
  2. –help
    –help选项放在命令之后,用来显示命令的信息。
  3. man命令
    显示系统文档中的man页内容。
  4. nfo命令
    是一个基于菜单的超文本系统,是有GNU项目开发并有Linux发布的。
  5. who命令
    用于查看当前登录到系统的用户信息
  6. uname命令
    uname命令显示正在使用的Linux系统信息
    r:显示操作系统的内核发行号(Release Number)
    n:显示网络上本机的节点名(Node Name)
    v:显示操作系统的内核版本号(Version Number)
  7. date命令
    显示或设置系统的时间
    格式:date [+%adDhHjmMrSTwWy]
  8. cal命令
    在屏幕上输出日历信息
    格式: cal [month] [year]
  9. echo命令
    用于回显输入内容
    格式: echo strings
  10. clear命令
    clear命令清除shell窗口中的内容
    格式: clear
  11. su命令
    用户进入到系统后,切换到其他用户,使用su命令。
    退回到原来用户使用exit命令
    若想成功切换需要切换用户账号的密码。

Linux文件系统的特点

1.Linux文件系统采用树形结构,从根目录root(/)开始。
2.Linux的虚拟文件系统允许众多不同类型的文件系统共存,并支持跨文件系统的操作。
3.Linux的文件是无结构字符流式文件,不考虑文件内部的逻辑结构,只把文件简单地看作是一系列字符的序列。
4.Linux的文件可由文件拥有者或超级用户设置相应的访问权限而受到保护。
5.Linux把所有的外部设备都看作文件,可以使用与文件系统相同的系统调用和函数来读写外部设备。

Linux文件系统的组成

/bin:存放二进制可执行命令目录;
/home:用户主目录的基点目录,默认情况每个用户主目录都设在该目录下,如默认情况下用户user01的主目录是/home/user01;
/lib:存放标准程序设计库目录,又叫动态链接共享库目录,目录中文件类似windows里的.dll文件;
/etc:存放系统管理和配置文件目录;
/dev:存放设备特殊文件目录,如声卡文件、磁盘文件等;

Linux文件系统类型

EXT文件系统
其它文件系统

文件系统操作

1. 建立文件系统。

当硬盘完成分区后,应该在该分区上建立文件系统,该操作又称为格式化。建立文件系统是通过mkfs工具来完成的。例如,如果需要在分区/dev/hdb1上建立ext4文件系统,可使用下列命令:
mkfs -t ext4 /dev/hdb1
按照Linux系统对分区的命名规则,ATA接口的硬盘以字母组合hd开始,SCSI和SATA接口硬盘以字母组合sd开始。第3个字母是硬盘的序号,a为第1块硬盘,b为第2块硬盘,依次类推。最后一位数字是分区的序号。

2. 挂载子文件系统。

创建文件系统后,需要使用命令mount将该文件系统安装到主文件系统中。例如将第 1 .步中的hdb1分区挂载到“/mnt/dev”节点上,可使用下列命令:

su				// 切换到根用户权限
mkdir /mnt/dev		// 创建目录
chmod 777 /mnt/dev		// 修改目录权限
mount -t ext4 /dev/hdb1 /mnt/dev	// 挂载子文件系统

在进行挂载前,首先要切换为根用户权限,否则无法访问“/mnt”目录。然后,为挂载点建立一个空目录,为了让所有用户都能访问和修改该目录,还需要使用chmod命令修改目录的权限。最后执行mount命令进行挂载,第1个参数是文件系统类型,第2个参数是分区的路径,第3个参数是挂载点的路径。

3.卸载子文件系统。

对于一些可读写的移动设备来说,移除设备前需要进行卸载子文件系统操作。因为Linux系统使用了缓存机制,如果不卸载就移除设备可能会造成子文件系统数据丢失。例如某个已挂载的USB存储器挂载点为/mnt/usbdisk,卸载该文件系统的命令如下:

umount /mnt/usbdisk

***注意:对于正在进行读写操作的子文件系统不能使用umount命令卸载。卸载子文件系统前,应保证其中没有文件被打开。

Linux文件系统操作命令

1.显示文件命令

1)cat命令
格式:cat [选项] …[文件]…
说明:把多个文件连接后输出到标准输出(屏幕)或加“> 文件名”输出到另一个文件中。
常用选项:
-b--number-noblank:从1开始对所有非空输出行进行编号。
-n--number:从1开始对所有输出行编号。
-s--squeeze-blank:将连续两行以上的空白行合并成一

2.more命令

格式:more [选项] [文件…]
说明:该命令显示文本文件的内容,一次显示一屏,满屏后停下来,可按如下键继续。
(1)Space键 :默认显示文本的下一屏内容。
(2)Enter键:默认显示文本的下一行内容。
(3)d键或CTRL+D:向下显示文本半屏,默认为11行。
(4)b键或CTRL+B:默认显示文本的上一屏内容。
(5)q or Q or INTERRUPT键:退出more命令。

常用选项:
-num:指定一个整数,表示一屏显示多少行。
-d:在每屏底部显示提示信息,包括当前显示的百分比,按键提示等。
-c–p:不滚屏,在显示下一屏之前先清屏。
+num:从行号num开始显示。
+/pattern:定义一字符串,在文件中查找该字符串,从该字符串后开始显示。

3.less命令

格式:less [选项] [文件]…
说明:与more命令相似,分屏显示文件的内容。less命令允许用户向前(PageUp)或向后(PageDown)浏览文件。在less命令提示符下按q键退出。

常用选项:
-i--ignore-case:搜索时忽略大小写,除非搜索串中包含大写字母。
-I--IGNORE-CASE:搜索时忽略大小写。
-m--long-prompt:显示读取文件的百分比。
-M--LONG-PROMPT:显法读取文件的百分比、行号及总行数。
-N--LINE-NUMBERS:在每行前输出行号。
-p pattern--pattern=pattern:定义一字符串,在文件中查找该字符串,从该字符串后开始显示。

4.head命令

格式:head [选项] …[文件]…
说明:head 命令用于查看一个文本文件的开头部分,行数由参数值决定,默认值是10。

常用选项:
-c--bytes=num:显示文件前面num个字节。
-n--lines=num:显示文件前面num行,不指定此参数显示前10行。

5.tail命令

格式:tail [选项] … [文件] …
说明:tail命令用于查看一文本文件的末尾若干行,行数由参数值决定,默认值是10。如果给定的文件不止一个,则在显示的每个文件前面加一个文件名标题。

常用选项:
-c--bytes=num:显示文件最后面num个字节。
-n--lines=num:显示文件最后面的num行,不指定此参数显示10行。

6.复制、删除和移动文件的命令

cp命令

格式:cp [选项] 源文件或目录 目标文件或目录
说明:cp命令完成文件的复制。
如果源是普通文件,该命令把源文件复制成指定的目标文件或复制到指定的目标目录中。
如果源是目录,目标是一已存在的目录,该命令把源目录下的所有文件和子目录都复制到目标目录中;
如果源是目录,目标不是一已存在的目录,命令出现错误信息。

常用选项:
-a--archive:等同于 –dpR。
-d:复制符号链接时,把目标文件或目录也建立为符号链接,并指向与源文件或目录链接的原始文件或目录。
-f--force:强行复制文件或目录
-i--interactive:覆盖目标文件前需要确认。
-n--no-clobber:不覆盖已存在的目标文件。
-p:复制源文件或目录内容的同时也复制文件属性
-R-r--recursive:递归复制目录,将源目录下所有文件及子目录都复制到目标位置。

rm 命令

格式:rm [选项] …文件或目录…
说明:rm命令可以删除文件或目录,删除目录必须要加“-r”选项。
常用选项:
-f--force:强制删除文件或目录。
-i--interactive:删除文件或目录前提示要用户确认。
-r-R, 或--recursive:递归删除指定目录及其下属各级子目录和相应的文件。

mv命令

格式:mv [选项] 源文件或目录 目标文件或目录
说明:mv命令可移动文件或目录;更改文件或目录的名称。
常用选项:
-i--interactive:覆盖文件前需要确认。
-f--force:若目标文件或目录已存在,直接覆盖。
-n--no-clobber:不覆盖已存在的文件。
-u--update:移动或更改文件名时,若目标文件已存在,且文件日期比源文件新,则不覆盖目标文件。

7.文件内容统计命令

格式:wc [选项] …[文件]…
说明:wc命令统计给定文件中的字节数、字数、行数。
常用选项:
-c--bytes:统计字节数。
-m或--chars:统计字符数。
-l--lines:统计行数。
-w--words:统计字数。

8.文件的压缩和备份

bzip2命令

格式:bzip2 [选项] [要压缩的文件]
说明:bzip2压缩生成.bz2文件的压缩程序,并删除原始的文件。
常用选项:
-c--stdout:将压缩或解压缩的结果送到标准输出。
-d--decompress:执行解压缩。
-f--force:压缩或解压缩时,若输出文件与现有文件同名,覆盖现有文件。
-k--keep:bzip2 在压缩或解压缩后,保留原始文件。

gzip命令

格式:gzip [选项] [文件 …]
说明:gzip压缩会产生".gz"的压缩文件,并删除原始文件。
常用选项:
-c--stdout--to-stdout:压缩后文件输出到标准输出设备,不改变原始文件。
-d--decompress--uncompress:解开压缩文件。
-f--force:强行压缩文件。
-n--no-name:压缩文件时,不保存原来的文件名称及时间戳记。
-N--name:压缩文件时,保存原来的文件名称及时间戳记。
-r--recursive:递归处理,将指定目录下的所有文件及子目录一并处理。

tar(tape archive)命令

格式:tar [选项…] [文件或目录]…
说明:tar 是用来建立,还原备份文件的工具程序,它可以加入,解开备份文件内的文件。
常用选项:
-A--catenate:新增tar文件到已存在的备份文件。
-c--create:建立新的备份文件。
-f<备份文件>--file=<备份文件>:指定备份文件。
-t--list:列出备份文件的内容。
-v--verbose:显示指令执行过程。
-x--extract--get:从备份文件中还原文件。
--delete:从备份文件中删除指定的文件。

Linux目录操作命令

1.切换工作目录和显示目录内容的命令

cd命令

格式:cd [目的目录] 
说明:切换目录至目的目录,前提是用户必须拥有进入目的目录的权限。 其中目的目录可为绝对路径或相对路径,若目录名称省略,则切换至使用者的主目录。

pwd命令

格式:pwd
说明:pwd命令不带任何选项或参数,Linux系统用 pwd 命令来查看“当前工作目录”的完整路径。

ls命令

格式:ls [选项]… [文件或目录]…
说明:ls命令可列出目录的内容,包括文件和子目录的名称。

常用选项:
-a--all:列出目录下的所有文件和目录,包括以 “.” 开头的隐含文件。
-A--almost-all:列出除“.”(当前目录)及”…”(当前目录的上级目录)外的任何文件和目录。
-b--escape:把文件名中不可输出的字符用反斜杠加字符编号的形式列出。
-c:输出文件的ctime(文件最后更改的时间),并根据ctime 排序。
-C:分成多列显示文件和目录。
-F--classify:加上文件类型的指示符号,其中“*”表示可执行的普通文件;“/”表示目录;“@”表示符号链接;“|”表示管道文件;“=”表示套接字。
-d--directory:将目录像文件一样显示,而不是显示其下的文件。
-l:列出文件详细信息,输出信息分成7个字段列表
在这里插入图片描述
第1字段:文件类型及访问权限字段。
文件属性字段总共有10个字母组成,第一个字母表示文件类型,具体如下。
- 表示该文件是一个普通文件。
d 表示该文件是一个目录。
c 表示该文件是字符设备文件。
b 表示该文件是块设备文件。
p 表示该文件是管道文件。
l 表示该文件是符号链接文件。
s 表示该文件是套接字。
后面的9个字符表示文件的访问权限,我们在存取权限部分详细介绍。

第2字段:文件链接数字段。
表示文件硬链接数或目录子目录数。

第3字段:文件属主字段。
表示文件的所有者。

第4字段:文件所属用户组字段。
表示该文件所属的用户组。

第5字段:文件大小字段。
表示该文件的大小,以字节为单位。

第6字段:最后修改时间字段。
表示该文件最后修改时间。

第7字段:文件名字段。
表示该文件的文件名,如果是符号链接,-> 箭头符号后面跟一个它指向的文件。

2.创建和删除目录命令

mkdir命令

格式:mkdir [选项] … 目录名…
说明:该命令创建由目录名命名的目录,同时设置该目录的权限。要求创建目录的用户在当前目录中具有写权限,并且目录名不能是当前目录中已有的目录或文件名称。
常用选项:
-m--mode=MODE:对新建目录设置存取权限。
-p--parents:若所建目录的上层目录不存在,会一并建立。

rmdir命令

格式:rmdir [选项]… 目录名…
说明:该命令从一个目录中删除一个或多个目录。删除目录时,必须对该目录的父目录具有写权限,目录被删除前应该是空目录。
常用选项:
-p--parents:删除指定目录后,若该目录的上层目录已变成空目录,则其一并删除。

Linux改变文件或目录存取权限命令

用户和用户组

Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。 Linux内部用UID标识各用户。
用户组(group)就是具有相同特征的用户的集合体,Linux系统中每个用户都属于一个用户组,系统能对一个用户组中的所有用户进行集中管理。在Linux内部用户组用GID标识。
Linux系统规定了4种不同类型的用户,分别是文件主、同组用户、其他用户、超级用户。

存取权限

存取权限就是用来确定谁可以通过何种方式对文件和目录进行访问,Linux系统规定3种访问文件和目录的方式。
(1)读(r)
对文件表示只允许指定用户读取该文件的内容,禁止做任何更改操作;对目录表示可以列出存储在该目录下的文件。
(2)写(w)
对文件表示允许指定用户打开并修改该文件;对目录表示允许从该目录中删除或添加新的文件。
(3)执行(x)
对文件表示允许指定用户执行该文件;对目录表示允许在该目录中进行查找,能用cd命令将工作目录改为该目录。
用ls -l命令可以显示文件或目录的详细信息,其中第一字段即为文件属性字段
在这里插入图片描述

chmod命令

用字母设定法改变文件或目录的访问权限。

格式:chmod [who] [opt] [mode] 文件或目录名…
说明:用于改变文件或目录的访问权限,是Linux系统管理员最常用到的命令之一。其中who表示对象,是以下字母中的一个或多个的组合。
u:表示文件所有者。
g:表示同组用户。
o:表示其它用户。
a:表示所有用户。
opt表示操作,可以为如下符号。
+:添加某个权限。
-:取消某个权限。
=:赋予给定的权限,并取消原有的权限。
mode表示权限,是以下字母一个或多个的组合。
r:可读。
w:可写。
x:可执行。

用数字设定法改变文件或目录的访问权限。

格式:chmod [mode] 文件或目录名…
说明:将rwx看成二进制数,如果该位有权限,用1表示,该位没有权限用0表示,那么rwx r-x r- -可以表示为:111 101 100,再将其每三位转换成为一位八进制数,就是754。
在这里插入图片描述

Linux改变用户组和文件主的命令

chgrp命令

格式:chgrp [选项]… 所属组 文件或目录…
说明:chgrp命令改变指定文件所属的用户组,其中所属组可以是用户组的ID,也可以是用户组的组名。文件是以空格分开的要改变属组的文件列表,支持通配符。在Linux下一般只有超级用户才能改变该文件的属组。
常用选项:
-R--recursive:递归式地改变指定目录及其下的所有子目录和文件的属组。

chown命令

格式:chown [选项] … [用户][:[组]] 文件 …
说明:chown命令将指定文件的拥有者改为指定的用户或组。用户可以是用户名或用户ID。组可以是组名或组ID。文件是以空格分开的要改变权限的文件列表,支持通配符。在linux下一般只有超级用户才可以使用该命令。
常用选项:
-R--recursive:递归式改变指定目录及其下的所有子目录和文件的拥有者。

本文中没有提到的命令都可以用--help命令来进行查询。

END
2020.5.12 by iNBC form SDUT

  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iNBC

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值