Linux学习

首先要明白绝对路径和相对路径

绝对路径:相对于根目录的路径

相对路径:相对于当前目录的路径



另外在输入时按tab键可以实现自动补全(若是有多个结果则会罗列出所有结果)

1.常用的指令:

1.1 pwd 打印路径

用于打印当前所在文件夹的路径

1.2 cd 进入文件

进入文件夹的指令:cd XXX

1.3 mkdir 创建目录 -make directories

1
2
3
4
5
6
7
8
9
10
11
# 在当前目录下创建XXX子目录

mkdir XXX

# 一次性创建多层目录

mkdir -p a/b/c

# 一次性创建多个目录

mkdir a b c

1.4 touch 创建文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 在当前目录下创建linux.txt文件

touch linux.txt

# 在上级目录下创建linux文件(创建与当前目录同级的文件)

touch ../linux

# 在home/bing/目录下创建linux文件(在指定路径下创建)

touch /home/bing/linux

# touch可用于创建多个文件,例如创建file file.txt两个文件(不指定文件后缀名则创建的是文件夹,指定后缀则是创建相应的文件)

touch file file.txt

1.5 ls 展现结构

展现目录结构(当前目录所有的文件和文件夹)
用例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 展现当前目录

ls(也可写作: ls ./)

# 展现上一级目录

ls ../

# 展现绝对路径

ls /home

# 展现根目录
ls /

# 列出指定路径下的文件/文件夹的名称,并以指定的格式进行显示
语法:ls 选项 路径
ls -lah /home
解释:
-l:表示list,表示以列表进行展示
-a:表示显示所有的文件/文件夹(包含隐藏文件/文件夹)
-h:表示以可读性较高的形式显示

1.6 rm 删除文件/目录

1
2
3
4
5
6
7
8
9
10
11
12
# 删除当前路径的文件

rm XXX

# 删除指定路径下的文件

rm /XX/XX/XXX

# 删除目录

rm -rf XXX
rm -rf /XX/XXX/XXX (支持绝对路径下删除)

1.7 cp 复制文件/文件夹到指定路径

1
2
3
4
5
6
7
8
9
# 复制文件到指定路径
语法: cp 被复制的文件路径 文件被复制到的路径

cp /home/user/XXX XXX/

# 复制文件夹到指定路径
语法: cp -r 被复制的文件夹路径 文件夹要复制到的路径

cp -r XXX/ XXX/

1.8 mv 移动/重命名文件

注意区分‘移动’和‘复制’的区别

1
2
3
4
5
6
7
8
9
10
# 移动文件
语法: rm 需要移动的文件的路径 移动的目的路径/

rm a b/
rm a ./ #将路径a上的文件移动到根目录下

# 修改名称
语法: rm 文件名 文件名

rm a b #将当前文件夹下的文件a更名为b (注意:更名不需要输入路径,需先cd进入当前文件夹,才可对该文件夹下的文件进行更名操作)

使用vim及g++进行程序设计与编译

vim的使用

首先需要先cd进入对应的文件目录

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 创建/打开文件

vim 文件名/文件路径(不预先cd的话) //终端会进入vim编译器中,并且创建该文件,若该文件已存在则是打开该文件

# 编写程序

vim编译器有分普通模式、末行模式和插入模式
模式切换:
1.插入模式下按 Esc键进入普通模式
2.普通模式下输入 :进入末行模式
3.插入模式和末行模式不能直接切换
区别:
普通模式主要操作:删除、复制、粘贴
编辑模式主要操作:编辑文本
末行模式主要操作:退出保存

vim 常用操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 在末行模式下:
:w 保存文件

:q 退出文件

:wq 保存并退出文件

:w! 强制保存文件

:q!强制退出文件

:wq! 强制保存并退出文件

:w 1.txt 将文件另存到1.txt

:1,3 w 1.txt 将1-3行内容另存到1.txt

:r 2.txt 将2.txt文件内容写入到该文件光标所在行中

:5 r 2.txt 将2.txt文件内容写入到该文件第5行后

使用g++编译文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 编译操作

g++ 文件名(带后缀) -o 输出的文件名 //执行后在相应的路径下生成一个可执行文件

# 执行文件
可以用ls查看当前目录下的文件,绿色文件名的文件即为可执行文件

./可执行文件名 //这里的./表示当前目录

# 编译带调试信息的·1可执行文件

g++ -g 文件名 -o 输出文件名 //产生能被GDB使用的调试信息,以调试程序

# 指定编译标准

g++ -std=标准 文件名
例 g++ -std=c++11 xxx.cpp

Linux学习
http://example.com/year/02/27/Linux学习/
作者
Magic_Cat
发布于
2025年2月27日
许可协议