嵌入式linux开发实战(二)——Linux使用基础

姓名:罗浩东  学号:19020100450  学院:电子工程学院

转自:https://blog.csdn.net/sinat_42550851/article/details/102114651

【嵌牛导读】对嵌入式系统的使用基础

【嵌牛鼻子】嵌入式系统的初步使用

【嵌牛正文】

替换一个字符:在命令模式下选中要替换的字符,按r,再按替换后的字符。

替换全文中所有的字符:可以在命令模式下输入:% s/str1/str2/g

6.文件系统

Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux用户和程序看到的文件、目录、软连接及文件保护信息等都存储在其中。

Linux最早的文件系统是Minix,但是专门为Linux设计的文件系统——拓展文件系统第二版(EXT2)被设计出来并添加到Linux中,这对Linux产生了重大影响。

常用的文件系统

ext2

swap

vfat

NFS

1、ext2

ext2是为解决ext文件系统的缺陷而设计的可扩展的、高性能的文件系统,又被称为二级扩展文件系统。它是Linux文件系统中使用最多的类型,并且在速度和CPU利用率上较为突出。ext2存取文件的性能极好,并可以支持256字节的长文件名,是GNU/Linux系统中标准的文件系统。

2、ext3

ext3是ext2文件系统的日志版本,它在ext2文件系统中增加了日志的功能。ext3提供了3种日志模式:日志(journal)、顺序(ordered)和回写(writeback)。与ext2相比,ext3提供了更好的安全性以及向上向下的兼容性能。因此,在Linux系统中可以挂在一个ext3文件系统代替ext2文件系统。ext3文件系统格式被广泛应用于目前的Linux系统中。ext3的缺点是缺乏现代文件系统所具有的高速数据处理和解压的性能。此外,使用ext3文件系统还要考虑磁盘限额问题。

3、reiserFS

reiserFS是Linux环境下最稳定的日志文件系统之一,使用快速的平衡二叉树(binary tree)算法来查找磁盘上的自由空间和已有的文件,其搜索速度高于ext2,reiserFS能够像其他大多数文件系统一样,可动态的分配索引节,而无须在文件系统中创建固定的索引节。有助于文件系统更灵活的适应各种存储需要。

4、VFAT

VFAT主要用于处理长文件的一种文件名系统,它运行在保护模式下并使用VCACHE进行缓存,并具有和Windows系列文件系统和Linux文件系统兼容的特性。因此VFAT可以作为Windows和Linux交换文件的分区。

5、JFS2

一种字节级日志文件系统,该文件系统主要是为满足服务器的高吞吐量和可靠性需求而设计、开发的。单个文件最大限制16TB,该文件系统最大支持1PB的容量。

目录结构

Linux的文件系统采用阶层式的树状目录结构,在该结构中的最上层是根目录“/”,然后在根目录下再建立其他的目录。

Linux中无论从操作系统管理的几个磁盘分区,这样的目录树只有一个。从结构上讲,各个磁盘分区上的树型目录不一定是并列的。

Linux文件类型

普通文件:通常是流式文件。

#ls -lh install.log

-rw-r–r-- 1 root 53K 03-16 08:54 install.log

目录文件:用于表示和管理系统中的全部文件

#ls -lh

drwxr-xr-x 2 root 4.0K 04-19 10:53 mydir

链接文件:用于不同目录下文件的共享

#ls -lh setup.log

lrwxrwxrwx 1 root root 11 04-19 11:18 setup.log->install.log

设备文件:包括块设备文件和字符设备文件

#ls -la/dev/tty

crw-rw-rw- 1 root tty 5,0 04-19 08:29 /dev/tty

管道(FIFO)文件:提供进程间通信的一种方式

套接字(socket)文件:改文件类型与网络通信有关

ls -lh /var/lib/mysql/mysql.sock

srwxrwxrwx 1 mysql mysql 0 04-19 11:12 /var/lib/mysql/mysql.sock

分区

在WIndows操作系统中,是先将物理地址分开,再在分区上建立目录。在Windows操作系统中,所有路径都是从盘符开始,如C:\program file

Linux正好相反,是先有目录,再将物理地址映射到目录中。在Linux操作系统中,所有路径都是从根目录开始。Linux默认可分为3个分区,分别是boot分区、swap分区和根分区

挂载

Linux下的分区需要挂载到目录后才能使用,挂载的意义就是把磁盘分区的内容放在某个目录下。这个把分区和目录对应的过程叫做**挂载(Mount)**而这个挂载在文件树中的位置就是挂载点。

当要使用某个设备时,例如要读取硬盘中的一个格式化好的分区、光盘或软件等设备时,必须把这些设备对应到某个目录上,而这个目录就称为“挂载点(mount point)”,这样才可以读取这些设备,将物理分区细节屏蔽掉,用户只有统一的逻辑概念,所有的东西都是文件。

7.shell使用技巧

Shell环境

Linux中的Shell是一个命令解析器,将用户命令解析为操作系统能理解的指令,从而实现用户与操作系统的交互。

Shell是内核的一个外层保护工具,并负责完成用户与内核之间的交互。

自动补齐

命令行自动补齐

输入命令的前一个或者几个字母,按下Tab键系统就会自动补全命令。如果有多个可能的选择,再按一次Tab键就会列举出来。

如何用’cd’最快地从您当前梭子的home目录跳到’/usr/src/redhat/’

#cd/u<TAB>sr<TAB>r<TAB>

命令行的历史记录

通过按向上方向键,可以向后遍历近来在该控制台下输入的命令,用向下方向键可以向前遍历。

如果与SHIFT键连用的话还可以遍历以往在该控制台中的输出,也可以编辑旧的命令然后再运行。

按<CTRL r>后,Shell就计入向后增量搜索模式。选择相应命令后再按<ENTER>键,上面的命令将再次执行。

vi .bash_history(可以查看历史的命令)

编辑命令行

<CTRL k >:删除从光标到行尾的部分

<CTRL u>:删除从光标到行首的部分

<ALT d>:删除从光标到当前单词结尾的部分

<CTRL w>:删除从光标到当前单词开头的部分

<CTRL a>:将光标移到行首

<CTRL e>:将光标移到行尾

<ALT a >:将光标移到当前单词头部

<ALT e>:将光标移到当前单词尾部

<CTRL y>:插入最近删除的单词

命令的排列

先执行command1,不管command1是否出错,接下来执行command22

command1 ;command2

只有当conmmand1正确运行完毕后,才执行command2

command1&command2

命令的任务调度

当在终端里运行一个命令或开启一个程序时,终端要等到命令或程序运行完毕后,才能再被使用。

任务调度(jobbing)或后台(backgrounding),在命令后面添加一个&可以将当前运用任务或将命令至于后台,终端就立即解放可以接受新的输入。

#gqview &

#jobs

输出重定向

">“为输出重定向符,可以将命令的输出结果保存到文件中,”>>“和”>“作用类似,不同的是”>“为新建或者重写一个文件,而”>>"为在文件的尾部追加内容

#Mail -s “hello world” pingzhenyu@163.com < testmail

#ps -aux |grep wget

ps -ef | grep “bash”(可以查找)

8.环境变量

Shell环境

Linux是一个多用户的操作系统,当用户登入系统后都会有一个**专用的运行环境。**通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变得定义。用户可以通过修改相应的系统环境变量对自己的运行环境进行定制。

环境变量(environment variables)一般是指在操作系统中用来制定操作系统进行环境变量的一些参数,如:临时文件夹位置和系统文件夹位置等。

bash配置文件

环境变量和Shell紧密相关的,用户登入系统后就启动了一个Shell。对于Linux来说一般是bash,但也可以重新设定或切换到其他的Shell。根据发行版本的情况,bash有两个基本的系统级配置文件:/etc/bashrc和/etc/profile。

查看bash配置文件

#ls.bash*

环境变量常用变量如下:

PATH 决定了shell将到哪些目录中寻找命令或者程序

HOME 当前用户主目录

HISTSIZE 历史记录数

LOGNAME 当前用户的登录名

HOSTNAME 指主机的名称

SHELL 当前用户的Shell类型

LANG 语言相关的环境变量,多语言可以修改次环境变量

MALL 当前用户的邮件存放目录

PATH声明格式

PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:…:<PATH N>

环境变量更改后,在用户下次登入时生效。如果想立即生效,则可执行下面的语句

#source .bash_profile

环境变量设置实例

使用命令echo环境变量

#echo $HOME

使用命令echo显示环境变量

#exort MYNAME = “my name is pingzhenyu”

#echo $MYNAME

修改环境变量MYNAME

使用env命令显示所有的环境变量

使用set命令显示所有本地定义的Shell变量

使用unset命令来清除环境变量

使用readonly命令设置只读变量

通过修改环境变量定义文件来修改环境变量

eg:

export TEMP_ENV =“jack”

env |grep TEMP_ENV

————————————————

版权声明:本文为CSDN博主「cubedong」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/sinat_42550851/article/details/102114651

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,590评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,808评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,151评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,779评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,773评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,656评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,022评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,678评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,038评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,756评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,411评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,005评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,973评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,053评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,495评论 2 343

推荐阅读更多精彩内容