嵌入式Linux学习路线分享

您所在的位置:网站首页 ubuntu终端修改文件权限 嵌入式Linux学习路线分享

嵌入式Linux学习路线分享

2023-03-24 10:14| 来源: 网络整理| 查看: 265

为了帮助大家学习嵌入式的各种命令,特在此将各种命令加以分类,方便大家更为直观的熟悉各种命令的使用方法和使用途径。

一、Shell基础命令1.打开终端

Ubuntu是支持图形化界面操作的,但是等我们学过后面底层的课程,就会明白图形化界面是很占用资源的,所以,移植linux系统时,是不会移植图形化界面的,所以,我们要学会使用命令来操作linux系统。并且,以后工作开发过程中大部分公司都是使用终端软件连接公司的服务器操作,终端软件上面一般也只能使用命令。

终端就是我们用来敲命令的地方。

打开终端的方式:

1.点击左侧的终端图标来开启一个终端; 2.使用快捷键 ctrl + alt + t 打开一个新的终端; 3.使用快捷键 ctrl + shift + n 开开一个同路径的新终端; 4.使用快捷键 ctrl + shift + t 左右分屏打开同路径的终端; 5.终端字体放大: ctrl shift + (不是小键盘的+ 是 = 对应的 +) 6.终端字体缩小: ctrl - 7.linux中复制 粘贴 ctrl shift c 和 ctrl shift v2.终端内容(命令行提示符)用户当前所在的路径 ~:~$ linux : 当前登录的用户名 @ 分隔符 ubuntu:主机名(暂时用不到) ~:用户当前所在的路径 ~表示用户的家目录 打开一个新终端,一般默认是在用户的家目录下 可以使用 pwd 命令来查看当前所在路径 $:表示用户的权限 $:普通用户 #:管理员用户(root) 普通用户只能操作自己的家目录下的文件,管理员用户拥有系统所有的权限。 su 用户名 可以切换用户 exit 退出当前用户,如果退到第一个登录的用户了,再输入exit 表示退出终端 注意:命令行提示符是提示给操作人员看的,他是可以通过环境变量PS1来修改的。

查看用户名命令

linux@ubuntu:~$ whoami linux

查看主机名命令

linux@ubuntu:~$ hostname ubuntu

切换到root(管理员)用户命令

su root 可以简写为:su

linux@ubuntu:~$ su root 密码: root@ubuntu:/home/linux#

退出root(管理员)用户命令

root@ubuntu:/home/linux# exit 或者:su 普通用户名 exit linux@ubuntu:~$3.ls命令ls 列出当前所在路径下的所有文件 ls 路径名 列出指定路径下的所有文件,路径名既可以是绝对路径,也可以是相对路径 ls -a 列出当前路径下的所有文件(包括隐藏文件,linux中,以 . 开头的都是隐藏文件) ls -l (小写的L)列出当前路径下的所有文件的详细信息 ls -lh 列出当前路径下的所有文件的详细信息,文件的大小会自动转换单位 ( K M G ..)

文件的详细信息包括:

-普通25 1rw-rw-r-- linux linux 72 11月 25 14:58 hw_cloud.txt - 第一个符号表示文件的类型 linux中不以后缀名区分文件类型,linux常见的文件类型有7种: bsp-lcd b 块设备文件 s 套接字文件 p 管道文件 - 普通文件 l (小写的L)链接文件 c 字符设备文件 d 目录文件 rwxrw-r-- 三个一组,分为三组,表示文件的权限 (文件所属用户、文件所属组、其他人) r 读权限 w 写权限 x 执行权限 - 对应位置没有相应权限 1 硬链接的个数 linux linux 文件的所属用户 文件的所属组 72 文件的大小 单位 字节 B 1Byte = 8bit 1KB = 1024B 1MB = 1024KB 1GB = 1024MB 1TB = 1024GB 11月 25 14:58 文件的时间戳(文件最后一次修改的时间) hw_cloud.txt 文件名4.cd 命令cd 路径名 进入指定路径,绝对路径,相对路径均可 cd . 进入当前路径,没动 cd .. 进入当前路径的上一级路径 cd / 进入根目录 cd ~ 进入用户的家目录 cd 直接敲回车 也是进入家目录 cd - 进入上一次所在路径5.mkdir命令mkdir dir1 在当前路径下创建一个名字为 dir1 的目录文件 mkdir ../dir2 在当前路径的上一级路径下创建一个名字为 dir2 的目录文件 mkdir dir1 dir2 dir3 在当前路径下创建三个目录文件,分别叫做 dir1 dir2 dir3 mkdir -p dir1/dir2/dir3 在当前路径的dir1目录下嵌套创建 dir2/dir36.rmdir命令rmdir 目录名 删除一个目录文件(要求必须是空目录)--不常用7.touch命令touch 文件名 如果文件不存在,则表示创建一个名为文件名的新文件 如果文件存在,表示更新文件的时间戳8.rm 命令rm 文件名 删除一个文件 如果文件是一个目录文件,需要加 -r 选项 rm -f 文件名 忽略提示信息,强制删除文件9.cp 命令cp file1 file2 如果file2不存在,表示将当前路径下的 file1 复制一份儿起名为 file2 如果file2存在,会讲file1复制一份儿覆盖file2 cp 文件名 目录名 将文件复制一份儿,放到目录名对应的目录下 cp -r dir1 dir2 如果dir2不存在,表示将目录dir1 复制一份儿,起名为 dir2 如果dir2存在,表示将目录dir1 复制一份儿 放到目录dir2里面10.mv 命令mv file1 file2 如果file2不存在,表示将file1 重命名为file2 如果file2存在,表示将file1 重命名为file2,会覆盖原来的file2 mv 文件名 目录名 将文件移动到目录里 mv dir1 dir2 如果目录dir2 不存在,表示将目录dir1 重名名为 dir2 如果目录dir2存在,表示将目录dir1放到目录dir2里面11.exit 命令如果涉及到用户切换,表示退回上一个用户, 如果已经是打开终端时的第一个用户了,那么表示关闭当前终端12.clear 命令清屏 (或者使用快捷键 ctrl + l) 注意,是小写的L windows dos:CLS13.cat 命令cat 文件名 查看文件内容 cat -n 文件名 带行号显示文件内容14. tab 键补齐tab键可以用来补齐命令和路径。 补齐的规则---如果给定的信息足够识别唯一的文件,则按一下tab键就可以补齐 如果给定的信息不足以识别唯一的文件,按两下tab键,可以提示后面有哪些文件可以补齐 接着在输入一些关键信息,按tab键就可以补齐了。15.sudo命令

申请临时权限

linux@ubuntu:/$ mkdir 1.c mkdir: 无法创建目录"1.c": 权限不够 linux@ubuntu:/$ sudo touch 1.c [sudo] password for linux: linux@ubuntu:/$ ls 1.c cdrom home lib64 mnt root selinux tmp vmlinuz bin dev initrd.img lost+found opt run srv usr boot etc lib media proc sbin sys var linux@ubuntu:/$ sudo rm 1.c linux@ubuntu:/$ ls bin dev initrd.img lost+found opt run srv usr boot etc lib media proc sbin sys var cdrom home lib64 mnt root selinux tmp vmlinuz16.echo命令

打印命令,类似于printf

【扩展】echo可以结合一下两个符号实现重定向和追加功能。

>:重定向

linux@ubuntu:~/桌面/day2$ echo hello world > hello.c linux@ubuntu:~/桌面/day2$ cat hello.c hello world

>>:追加

linux@ubuntu:~/桌面/day2$ echo i love stuy > hello.c linux@ubuntu:~/桌面/day2$ cat hello.c i love stuy linux@ubuntu:~/桌面/day2$ echo hello world >> hello.c linux@ubuntu:~/桌面/day2$ cat hello.c i love stuy hello world

history >文件:将历史命令打印到文件中

history:查看历史命令

17.chmod命令

修改权限(change modle),权限一般是8进制表示,一般加一个前缀0。

764:十进制(无前缀表示默认十进制) 064:八进制表示 chmod 0777 test:将test文件权限设置为最高rwxrwxrwx18.pwd命令

查看当前路径(绝对路径)命令

linux@ubuntu:~$ pwd /home/linux

绝对路径和相对路径: 绝对路径:相对于根目录的路径 相对路劲:相对于当前所在路径的路径 . 当前路径 .. 上一路径19.tree命令

tree命令是一种递归目录列表显示命令,使用该命令可以以树状图的形式列出一个目录下所有文件内容。

tree适用于以下系统:Linux,FreeBSD,OS X操作系统,Solaris,HP UX,Cygwin,HP NonStop OS /

tree命令安装

方法一:install或yum安装

Ubuntu下使用#apt get-intall tree;

Fedora和RedHat以及CentOS下使用#yum install tree。

方法二:手动安装

1)下载源码安装包:

选择最新版:

2)解压安装包,命令#tar -zxvf tree-1.7.0.tgz;

3)进入解压目录,使用ls查看文件内容:

4)安装该指令文件,命令#sudo make install:

5)输入#tree --version测试该指令:

tree命令的使用

tree的语法如下 tree [-aACdDfFgilnNpqstux][-I ][-P ][目录...]

参数说明:

-a 显示所有文件和目录。 -A 使用ASNI绘图字符显示树状图而非以ASCII字符组合。 -C 在文件和目录清单加上色彩,便于区分各种类型。 -d 显示目录名称而非内容。 -D 列出文件或目录的更改时间。 -f 在每个文件或目录之前,显示完整的相对路径名称。 -F 在执行文件,目录,Socket,符号连接,管道名称名称,各自加上"*","/","=","@","|"号。 -g 列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码。 -i 不以阶梯状列出文件或目录名称。 -L level 限制目录显示层级。 -l 如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录。 -n 不在文件和目录清单加上色彩。 -N 直接列出文件和目录名称,包括控制字符。 -p 列出权限标示。 -P 只显示符合范本样式的文件或目录名称。 -q 用"?"号取代控制字符,列出文件和目录名称。 -s 列出文件或目录大小。 -t 用文件和目录的更改时间排序。 -u 列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码。 -x 将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该子目录予以排除在寻找范围外。

2)测试:

在需要查看的文件夹下输入#tree指令查看当前目录结构:

二、vi编辑器1.概念

vi编辑器是用来编辑文本的(写代码的),类似于window中的记事本 notepad++

vi 是 vim 早期的版本,但是我们的系统中使用vi 和vim 是一样的。

2.打开vi编辑器

vi 文件名 表示将文件在vi编辑器中打开

(如果文件存在,则直接打开,如果文件不存在,则新建并打开)

3.vi编辑器的三种模式

3.1命令行模式

打开一个文件时,默认就是命令行模式,主要是用来复制粘贴代码的

其他模式回到命令行模式按 esc 按键,一下不行就按两下

3.2插入模式

就是用来写代码的,进入插入模式的方式,在命令行模式下,按:

i 在光标所在位置前开始插入

a 在光标所在位置后开始插入

o 在光标所在行下面插入一个新行,并开始插入

I (大写的i)在光标所在行行首开始插入

A 在光标所在行行尾开始插入

O 在光标所在行上面插入一个新行,并开始插入

3.3底行模式

在命令行模式下按冒号进入底行模式,主要是用来保存退出等操作的。

4.命令行模式常用的操作控制光标的上下左右 h 左 l 右 j 下 k 上 yy 复制光标所在行 nyy 从光标所在行开始复制 n 行 p (小写)从光标所在行下面开始粘贴 P (大写)从光标所在行上面开始粘贴 dd 剪切光标所在行 ndd 从光标所在行开始剪切 n 行 gg 将光标定位到首行 G 将光标定位到尾行 ngg 将光标定位到第n行 u 撤销 ctrl + r 反撤销(重做) shift + zz 保存退出 相当于底行模式的 :wq /find 查找单词find在文件中出现的位置,按n查找下一处,按N查找上一处 5.底行模式常用的操作:w 保存 :q 退出 :wq 保存并退出 :q! 不保存强制退出 :x 保存并退出 等价于 :wq :vsp 文件名 左右分屏打开多个文件 :wqa 保存退出打开的多个文件 :set nu 显示行号 :set nonu 取消显示行号 :noh 取消查找后单词的高亮显示 :%s/aaa/bbb/g 将全文的aaa都替换成bbb :%s/aaa/bbb/gc 将全文的aaa都替换成bbb, 会每次询问是否替换 y 替换 n 不替换 :m,ns/aaa/bbb/g 将第 m 行至第 n 行的aaa都替换成bbb



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3