[嵌入式培训笔记]----Linux命令简介
Linux文件系统的结构类似一棵树,是从一个树根生长出来的。树根叫做/。从树根长出很多分叉,就这么一直生长下去。我们使用Linux操作系统的时候总是落在某个分叉上。ls命令可以帮助我们查看当前分叉上所有文件和子分叉。pwd命令可以帮助我们了解从树根到当前分叉的整个路径。
/*注释*/
就是说Linux的文件系统是采用数据结构中树的形式存储的
pwd命令返回的结果如下:
/home/soft01
其中最开始的/表示整颗书的根,也就是这个文件系统的源头。home表示根上长出来的一个分叉,soft01则是home分叉上长出来的一个更小的分叉。不同分叉之间使用/分隔。
/*注释*/
pwd命令 pwd显示当前路径...显示的路径是绝对路径...从根目录到当前位置的路径
clear命令可以用来清除屏幕上的所有内容。
/*注释*/
clear命令,清屏命令,清屏还是可以恢复的,用滚动鼠标中间就可以看到清屏前的屏幕。要是不想看到情况,可以使用菜单栏->终端(T)->复位并清屏
文件系统中各个分叉之间是有关系的,假设分叉A上长出了分叉B,则我们说分叉A是父分叉,分叉B是子分叉。如果我们在分叉B上想跳跃到分叉A上则采用命令:
cd ..
如果我们想在分叉A上跳跃到分叉B上则可以使用如下命令:
cd B
采用cd命令还可以跳跃到非常远的一个另外的分叉上,这个时候就应该在cd命令后边写上目标分叉的绝对位置(也就是从根目录开始的完整路径),例如:
cd /etc
/*注释*/
cd命令 通俗说法,就是目录切换,从一个目录跳转到另一个目录中。
命令格式是: cd 要跳转的目标路径
这个要跳转的目标路径可以是相对路径,也可以是绝对路径,有两点需要说明
. 代表当前目录
.. 代表上层目录
当要跳转到当前目录的子目录下是,可以直接cd 子目录
如果想在当前所在分叉上建立新的分叉可以使用命令mkdir,这个命令后边跟着新分叉的名字就可以了,例如:
mkdir StardardC
其中 mkdir是命令,StardardC 是新分叉的名称
/*注释*/
当然想要在指定目录下建立一个目录,只需要将你所要新建的文件用相对或者绝对路径表示出来,并替换StardardC即可,例如:
mkdir ../StardardC
//意思是在当前目录的上层目录新建一个StardardC的目录,绝对路径方法类似
*错误声明:StardardC应该是StandardC 意思是标准C
只是这里只是简单的介绍一下mkdir命令
rmdir
命令可以用于删除一个已经存在的分叉,前提条件是这个分叉里边什么都没有。
/*注释*/
命令格式同mkdir
chmod命令可以修改一个文件的属性(权限),命令格式如下:
chmod 755 create.sh
其中chmod是命令名称,755是修改后的属性值,create.sh是要修改属性的文件名称。755表示这个文件是一个可以运行的文件,而644就表示文件是不可以运行的。
/*注释*/
其中755用来描述文件的属性值,Linux系统中的文件都可以
7 5 5
1 2 3
其中第一个数字 7 代表文件拥有者对该文件的权限
其中第二个数字 5 代表文件拥有者所在组的其他人对该文件的权限
其中地三个数字 5 代表其他人对该文件的权限
这3个数字用二进制表示成如下:(其中每一位对应的权限也已经给出)
7 5 5
111 101 101
rwx rwx rwx
//r ->读权限 w -> 写权限 x -> 执行权限
最常用的两组权限数字组是 755 644
6 4 4
110 100 100
rwx rwx rwx
手工编写并可以运行的文件叫做脚本文件,可以使用脚本文件实现一些大量反复要做的工作。脚本文件必须使用chmod命令设置成可以运行,否则不能使用。在LINUX系统中运行当前位置上的文件要使用如下的方式:
./文件名
/*注释*/将文件名替换成带有路径的可运行文件,就可以运行指定位置上的文件了
chmod 755 create.sh
./create.sh
shell脚本 执行批量命令时,可以将要执行的命令输入到一个文件中,然后运行
使用cp命令可以完成文件的复制粘贴工作,cp命令的例子如下:
cp <要复制的已经存在的文件> <目标位置>
//复制粘贴
cp命令同样可以把当前位置上的一个文件复制成另一个名字
cp <要复制的已经存在的文件> <要保存的名字> 例如://重命名
cp create.sh build.sh
其中
create.sh表示当前位置上一个已经存在的文件,build.sh表示要复制生成的新文件的名字。
使用mv命令可以实现文件的剪切功能,mv命令如下:
mv <原文件名> <新文件名>
这个命令执行完成后原文件被替换成了新文件
//如上命令同样可以实现文件的重命名,当是两个带有不同路径的文件是,就实现了剪切操作
mv <要移动的文件名> <目标位置>
touch命令可以用于在当前文件目录创建一个新的空文件,命令如下
touch 文件名
命令执行完成后新文件就出现了。
rm命令可以删除一个现有文件,命令如下:
rm 文件名
命令执行后文件消失
//注释:rm
//同样也可以用来删除目录,当要删除的目录非空是,可使用rm命令删除该目录,命令如下:(其实空目录也可以用rm来删除)
rm -r 要删除的非空目录名
echo 命令可以用于把后边的所有文字内容再次展示在屏幕上。例如
echo hello world
这个命令的执行结果是
hello world
这样的命令单独使用没有什么意义,但是和其他的命令结合在一起就可以实现非常复杂的效果
在linux操作系统里可以使用输出重定向把本应该出现在屏幕上的内容转而输出到文件中。使用方法是在任何命令后边加上大于号(>)然后在跟上一个文件名,这样这个命令本应该显示在屏幕上的内容就出现在文本中了。
例如
echo mkdir day01 > create.sh
这个命令执行结果就会在文件create.sh中记录如下一行内容mkdir day01
在使用输出重定向的时候一个大于号(>)会导致文件内容被清除,所以采用这种方式永远只能在文件中记录最后一次命令的输出结果。为了能在文件中记录多次命令的记过我们就需要采用两个大于好的重定向方法,例如
echo mkdir day01 > create.sh
echo mkdir day02 >> create.sh
上面个这两条命令会在文件create.sh中记录如下内容
mkdir day01
mkdir day02
tab只能输入快捷补全
通配符是Linux系统提供的一个辅助工具,他们用于在命令中描述一个名字格式。所有符合名字格式描述的名字都应该被使用命令进行操作。它可以代替一些其他的字符,通配符有如下几个
? : 这个通配符可以替代某个单一的字符,也就是说在使用了这个通配符的地方无论出现什么字符都符合描述
* : 这个通配符可以替代任意多个字符
[] :
这个通配符的作用非常广泛,能力非常强大。我们只学习非常简单的一种,就是使用它描述某个范围内的单一字符。例如:[3-7]就表示3,4,5,6,7这五个字符中的一个。
[] 还可表达--> 通用表达式
cat more less head tail
cat 命令可以用来查看一个文件的内容,命令如下:
cat create.sh
这个命令就会把文件create.sh中的所有内容展示在屏幕上。
使用cat命令查看文件内容之适合于小文件,因为cat命令会一下把文件的所有内容都展示在屏幕上,如果有很多行则前边行的内容是看不见的。如果要想查看达文件需要使用more命令,这个命令会主页显示文件内容,用回车键翻页。如果不想继续查看了,可以使用q退出。
有些文件最重要的内容都在最开始的几行,查看这种文件的时候可以使用head命令。缺省情况下head命令把文件中前10行内容展示在屏幕上,我们也可以在命令中指定要展示机行内容,例如:
head create.sh
head -3 create.sh
其中-3 表示只查看前3行
在Linux系统中有些文件是不断扩展的,最新的内容都在最后机行,如果我们只想查看最新的内容就可以使用tail命令。缺省情况下tail命令会把最后10行内容展示在屏幕上,我们也可以指定想展示的行书。例如
tail create.sh
tail -3 create.sh
其中 -3表示之展示3行
当我们希望在系统中查找某个名字的是偶可以使用find命令。find命令的功能很强大,我们只介绍最简单的一个。例子如下:
find . -name day03
上面的命令中find是命令名字, .表示从当前位置开始查找, -name day03
和起来表示查找叫做day03这个名字的所有东西。
find不可以依据文件内容来查找文件,也就是说它在查找中,不会打开文件
grep可以给予文件内容精细查找。这个命令功能也很复杂,而且有很多类似的命令,我们之介绍最简单的一种。使用grep命令可以把某个文件中包含某些内容的行摘取出来,例如:
grep 09 create.sh
这个命令可以把文件create.sh中所有包含09内容的行展示在屏幕上。
连接
在linux操作系统中可以为文件建立连接文件,连接文件可以作为原文件的代表但是它所站有的存储空间却非常小。连接文件分为软连接和硬连接两种。软连接文件是原文件的影子,原文件一旦消失则软连接文件就没法用了。硬连接文件和原文件完全平等,它们只是共用一块存储位置而已。
ln create.sh build.sh
其中create.sh是已经存在的文件而build.sh是新建立的硬连接文件的名字。
可以使用如下命令建立软连接文件:
ln -s create.sh build.sh
相对于上一个命令只是多了一个-s,这样建立起来的连接文件就是软连接文件。
管道
Linux系统提供了管道功能,这个功能可以把两个完全无关的命令连接起来,让一个命令的输出作为另一个命令的输入。采用这种凡是可以实现非常复杂的效果。例子如下
ls | more
上面这条命令中把ls命令输出的结果作为more命令的输入信息使用,这样我们就可以在屏幕上逐行查看ls命令的结果了。
[嵌入式培训笔记]----Linux命令简介的更多相关文章
- Linux学习笔记-Linux系统简介
Linux学习笔记-Linux系统简介 UNIX与Linux发展史 UNIX是父亲,Linux是儿子. UNIX发行版本 操作系统 公司 硬件平台 AIX IBM PowerPC HP-UX HP P ...
- 2013337朱荟潼 Linux第一章读书笔记——Linux内核简介
一.Unix历史 二.Linux足迹 类Linux系统.非商业化产品.用途广泛 三.操作系统和Linux内核简介 1.操作系统 (1)是指在整个最基本功能系统中负责完成最基本功能和系统管理的部分. ( ...
- [嵌入式培训 笔记]-----Vim编辑器使用简介
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 第一讲小结 1. 光标在屏幕文本中的移动既 ...
- 培训笔记——Linux历史
1. 计算机有分时与实时操作系统的区分,如Dos为实时操作系统,你只能给它下达一个命令,这个命令执行完了,你才能下达下一个命令:像Linux和我们用的Windows就是分时操作系统,特点是可以并发 ...
- [笔记]Linux命令行大全
date 显示当前时间和日期 cal 显示当前月份的日历 df 查看磁盘剩余空间的数量 free 显示空闲内存的数量 pwd 打印当前工作目录 cd 切换目录 ls 列出文件夹内容 绝对路径:开始于根 ...
- [读书笔记]Linux命令行与shell编程读书笔记04 安装软件,编辑器注意事项
1. debian以及redhat两种主流的linux发行版用的包管理工具 debian的包管理工具是 dpkg 再现安装的是 apt apt的工具主要有 apt-get apt-cache apti ...
- [读书笔记]Linux命令行与shell编程读书笔记02 环境变量以及其他
1. Linux的环境变量. 全局环境变量的查看 printenv 一个结果示例 XDG_SESSION_ID=354TERM=xtermSHELL=/bin/bashSSH_CLIENT=10.24 ...
- [读书笔记]Linux命令行与shell编程读书笔记01
1. Linux的组成部分 1)linux内核(kernel) 2)GNU工具链 3)GUI/CLI工作几面(shell) 4)应用程序(app) 2Linux内核的主要工作: 1) 管理内存 2)管 ...
- Linux笔记-Linux命令初解2
在看linux过程中,文件属性管理是一个难点,因而作为初学者的我来说,我直接将其放在后面来慢慢研究,因而我个人觉得先学习后面一些知识点之后,回过头来将一些你所不懂的去解透,这是极好的意见事情.对了,我 ...
随机推荐
- python全栈开发从入门到放弃之迭代器生成器
1.python中的for循环 l = [1,2,3,4,5,6] for i in l: #根据索引取值 print(i) 输出结果: 1 2 3 4 5 6 2.iterable 可迭代的 可迭 ...
- 如何在mysql中存储音乐和图片文件
如何在mysql中存储音乐和图片文件? 果你想把二进制的数据,比如说图片文件和HTML文件,直接保存在你的MySQL数据库,那么这篇文章就是为你而写的! 我将告诉你怎样通过HTML表单来储存这些文件, ...
- PKU 1035 Spell checker(Vector+String应用)
题目大意:原题链接 1输入一个字符串,如果字典中存在该字符串,直接输出,否则; 2.删除,替换,或插入一个字母.如果使得输入字符串==字典中已经有的单词,输出该单词,否则. 3.直接输入下一个字符串, ...
- BFC 详说 Block Formatting Contexts (块级格式化上下文)
定位方案是控制元素的布局,在 CSS 2.1 中,有三种定位方案——普通流 (Normal Flow) .浮动 (Floats) 和绝对定位 (Absolute Positioning) ,下面分别对 ...
- 189. Rotate Array(两次反转)
DescriptionHintsSubmissionsDiscussSolution Pick One Rotate an array of n elements to the right by ...
- LinQ高级查询、组合查询、IQueryable集合类型
LinQ高级查询: 1.模糊查询(包含) Repeater1.DataSource = con.car.Where(r =>r.name.Contains(s)).ToList(); 2.开头 ...
- 前端JS复制特定区域的文本(兼容safari)
html5的webAPI接口可以很轻松的使用短短的几行代码就实现点击按钮复制区域文本的功能,不需要依赖flash. 代码如下: /* 创建range对象 */ const range = docume ...
- [转]HTML标签元素的分类
在讲解CSS布局之前,我们需要提前知道一些知识,在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素和内联块状元素. 常用的块状元素有: <div>.<p ...
- ThinkPHP语法总结
1, $data存放实体: $data['title'] = I('post.title'); // 标题 $data['content'] = I('post.content'); // 正文 $d ...
- SDUT OJ 2607
/*http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2607*/ 题目大意:给出一个字符串,求出里 ...