Ubuntu的基本使用

使用的Ubuntu版本号为为Ubuntu18.04

启动终端:ctrl+alt+t或快速启动栏启动

终端

  1. 字体放大:ctrl+shift++
  2. 字体缩小:ctrl+-
  3. 复制文本:ctrl+shift+c
  4. 粘贴文本:ctrl+shift+v

查看操作系统版本:cat空格/etc/issue

tab:自动补齐键,可以补齐命令或文件名(可写一部分命令或文件名 注意不可重复 然后按tab键补齐)

键盘上下键,查看历史命令

Linux的常用shell命令

linux@ubuntu:~$
用户名 @ 主机名:
命令提示符
~ 会发生变化,表示的一个目录。 ~(家目录)
$ 表示当前用户是 普通用户 #表示当前用户是系统管理员

命令的中文手册

https://www.runoob.com/linux/linux-command-manual.htm

命令的格式

command空格[-options]空格arg1空格arg2空格arg3 ....

ls 查看当前目录(文件夹) 下的文件名

ls -a 查看当前目录(文件夹) 下的所有文件 ,包含隐藏文件(通常是.开头的文件,或目录)
ls -l 查看当前目录(文件夹) 下的文件 详细信息 ls -l == ll(别名,写法)

eg:

-rwxrwxr-x 1 linux linux 8472 6月  26  2025 a.out

drwxr-xr-x 2 linux linux 4096 10月 14  2021 Desktop

 类型      用户权限 组用户 其他用户 硬连接数 文件或目录的创建者 组用户名

-普通文件   rwx       rwx         r-x          1                         Linux          Linux

d目录类型  rwx        r-x         r-x           2                          Linux          Linux

文件的最后修改时间 

  6月  26  2025      8472(文件大小 单位字节)

  10月 14  2021      4096 (目录大小而非目录下所有文件大小e)

备注:

硬连接数  对于文件:文件的内容,有几个文件名关联

对于目录:目录下,有几个目录

rwx r可读,w可写,x可执行

d一对多, -一对一

(蓝色是目录名)

man 命令的帮助 manual 手册

man 命令名(查看完之后按Q退出)
man ls 查看ls命令的帮助,查看命令有那些选项。

(菜鸟教程 可以查看Linux命令的用途)

mkdir创建目录

创建目录 ,目录名为20260422

mkdir 20260422

rmdir创建目录

删除目录 目录名为20260422, 注意,目录必须为,才可删除成功。

rmdir 20260422

cd 目录切换

cd 目录名  进入目录

eg:

cd / 进入根目录(最高目录)

cd=cd ~=cd  /home/linux 进入家目录

cd ..    返回上一层目录(..代表上一层目录)

.当前目录 ..上层目录

cd ..   返回上一层目录(.. 代表上一层目录)

备注:

一直cd ..会返回到最高目录  /(根目录),根目录 只有只读权限 ,无法创建目录, 所有要回到家目录用户下创建目录 。如果在根目录 ,先cd home,再cd Linux 然后就可以创建文件了/直接cd/cd ~/cd /home/linux(~==/home/linux)

touch 创建一个空白文件

touch 123 ,创建一个空白文件 如果123文件存在,会更新时间戳。

rm 删除文件

rm 123           删除 123这个文件
rm -fr 目录名  强制删除目录,
-f 直接删除,不询问y/n
-r 删除目录

练习:
1创建3个文件夹 test1,test2,test3
2创建3个普通文件
test1/aaa
test2/bbb
test3/ccc
3.使用ls 查看,是否创建成功
4. 使用rm -fr 删除 test1 test2 test3


mkdir test1 test2 test3  三个目录可同时创建
linux@ubuntu:~/20260422$ ls
test1 test2 test3


使用相对路径, 相对于 20260422
linux@ubuntu:~/20260422$ touch test1/aaa

使用的绝对路径都是从 / (根目录,最高路径)

linux@ubuntu:~/20260422$ touch /home/linux/20260422/test2/bbb

linux@ubuntu:~/20260422$ touch /home/linux/20260422/test3/ccc

linux@ubuntu:~/20260422$ rm -fr test1 test2 test3 三个目录可同时删除

pwd 显示当前路径

文件的复制 cp

复制上层目录的1.c文件 到本层 并命名为1.c 。 需要注意的是,上层文件 1.c 必须存在


复制单个文件
cp 源文件(必须存在)  目标文件(如果不存在,创建;如果存在,覆盖)
linux@ubuntu:~/20260422$ cp ../1.c 1.c  

复制目录
linux@ubuntu:~/20260422$ cp ../14klist/ . -av
把上一层目录名为14klist的所有文件,复制到 本层目录,目录名不变。
-av 专门复制目录时使用

mv移动文件,剪切文件

1把指定文件或目录,移动到 指定目录下。

2文件/目录改名字
把app 改为bpp 示例

cat查看文件的内容 文本文件

cat 1.txt    查看1.txt 文件的内容

vim 的使用

基于命令行文本编辑器, 主要用来编写 c代码的地方。
使用步骤:
1. vi 1.txt 或者 vim 1.txt
2. 按 i键 ,进入编辑状态 ,左下角的状态会有normal -> insert 。
3. 先按esc,:wq 。esc 是从编辑状态,回到命令状态。 :wq ,w 写入,q退出

vim 命令:
在命令模式下(左下角是normal)
yy 复制当前行
dd 删除/剪切当前行
p 粘贴
u ,回退上次操作 或 撤回上次操作


3yy 从当前行向下复制3行
5dd 从当前行向下删除5行
3p 粘贴3次


:3,10y 3到10行复制
:2,5d 2到5行的删除


:wq 保存退出
:q! 不保存退出


查找:
/ok 回车 ,被搜索的关键字 会高亮。
n ,向下查找 N 向上查找


光标操作:
gg 光标跳到文件开头
GG 光标跳到文件结尾
文件全部选择操作
gg 光标跳到文件开头
按下v键,进入visual,
按下 GG,完成文件的全部选中


=, 自动格式化代码,


:vs 1.c  开竖分屏  (ctrl+w+方向 光标切换窗口)
:sp 1.c  开横分屏
:wqa 保存退出,所有分屏

gcc 编译器

把c语言源文件 编译成可执行文件

编译源文件
gcc 1.c  // 会生成一个可执行文件 ,名字 a.out
执行
./a.out   执行当前目录下的a.out文件。

在编译源文件的过程中,需要指定可执行程序的名字的话,需要使用 -o 选择
编译1.c 这个文件,并生成可执行文件 名为 app
gcc 1.c -o app
./app

gcc 编译的四个步骤
1. 预处理 gcc 1.c -E -o 1.i  //文本文件
2. 编译 gcc 1.c -S -o 1.s  //文本文件
3. 汇编 gcc 1.c -c -o 1.o  // object ,目标文件,二进制,不可执行
4. 链接 gcc 1.c -o app

1预处理,在编译前,做一些准备工作。处理# 号开头的指令。
#include 把包含打开获得文件内容,粘贴在这个位置
#define PI 3.14 ,在代码中,只要有PI 的地方,使用3.14 替换

2编译, 把上一步处理好的文件,编译为汇编文件。

3汇编, 把汇编文件转换为 obj文件(目标文件),二进制 ,不可执行。
如果需要查看的话,使用命令

4链接,把需要使用的外部库函数(别人提供的功能函数),与a.out 内部,发生关联关系。
当a.out 运行起来后,直到在系统的那个位置,找到对应函数的实现。
 

代码在计算机是如何运行
 

1. 可执行程序(a.out)在计算机的外存(ssd =固态硬盘, flash=闪存)中存储
2. ./a.out ,计算机会把a.out 中的内容(代码+数据) 加载到内存(MEM)中
3. cpu 就会从内存中读出 代码+数据, 对数据进行相关操作


 

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐