初识linux(day 02)
Ctrl+C:用于写错命令后重新书写
查看已执行的历史命令:history
与文件有关的基本命令:
cp:拷贝
cp 源路径+名称 目标路径+名称
对目录进行操作时(例如对目录的删除,拷贝等)加-r(有些命令不用例如:移动(mv))
当拷贝时不进行命名时,默认名字不变
不写路径时即当前路径
注:
当目标路径存在与不存在时(目标路径+名称)此部分含义不同,有时是文件名称(即修改后的名字)有时是路径,具体区分如下:
- 目标最后一段是「已存在的目录」 → 把源文件/目录 原样拷贝进这个目录里(目标只写路径,不改名)
- 目标最后一段「不是已存在目录」 → 视为新文件名/新目录名(拷贝并重命名)
mv:移动,重命名(改文件夹时不需要-r)
- 移动:移动规则与cp类似(一个相当于剪切(mv)一个相当于复制(cp))
- 重命名:当源文件与目标文件处于同一路径下时,后文写文件名相当于起了重命名的作用
cat more less head tail :查看文件
cat +文件名:将文件内容在屏幕展示出来(直接显示)
合并文件用法:
cat 文件1 文件2 > 合并后新文件
也可以一次合并多个文件:
例:cat a.txt b.txt c.txt > total.txt
**注:**合并后若total.txt本来不存在,则新建一个名为total.txt的文件将合并内容进行保存,若存在,则在文件内对原来的内容进行覆盖,使用>>可在源文件后继续追加,避免覆盖发生
more+文件名:将文件内容在屏幕展示出来(分页显示)
vi:使用文件(使用vi/vim对文件进行阅读和修改(首先要有权限)具体会在下面讲)
文件权限:
使用命令ls -l对文件类型和权限进行查看
-:文件类型day01中有提到(普通文件)
-后三位:rwx=>属主权限(自己)
四到六位:rwx=>同组人权限
最后三位:rwx=>其他人权限
u:属主
g:同组人
o:其他人
a:所有人
读:r 4
写:w 2
执行: x 1
无权限:- 0
第一个stu:属主命名
第二个stu:组名
权限修改:
使用命令:chmod
文字设定法:chmod u(目标)+/-x(权限) 或:chmod u=rwx
数字设定法:chmod 764 第一个数字:属主权限 第二个数字:同组权限 第三个数字:所有人权限
7:=>4+2+1(r+w+x) 6:=>4+2+0(r+w±) 4:=>4+0+0(r±±)
vim(文本编辑器)的使用:
有三个模式:
命令模式(读) 插入模式(写) 末行模式(保存/退出)
一些快速按键(简单了解):
vi/vim 光标移动(基础常用)
一、普通模式(默认模式,最常用)
- 单字符移动
- h:左
- j:下
- k:上
- l:右
- 单词移动
- w:跳到下一个单词开头
- b:跳到上一个单词开头
- e:跳到当前/下一个单词结尾
- 行内移动
- 0:行首
- $:行尾
- ^:行首第一个非空字符
- 整行/页面移动
- gg:文件第一行
- G:文件最后一行
- 数字+G :跳转到指定行(例: 10G 跳第10行)
- Ctrl + f:向下翻页
- Ctrl + b:向上翻页
- Ctrl + d:向下翻半页
- Ctrl + u:向上翻半页
- 行间快速跳转
- +:下一行行首
- -:上一行行首
二、插入/编辑模式
直接用键盘方向键 ←↑↓→ 移动即可。
模式间转换:(插入模式进行代码书写)
命令–>插入i(插入在当前光标所在位置之前),a(插入在当前光标所在位置之后),o(插入在当前光标所在位置的下一行),I,(插入在当前光标所在位置的行初)A(插入在当前光标所在位置的行末),O(插入在当前光标所在位置的上一行)
插入–>命令esc
命令–>末行:
转到末行模式后:
wq:保持并推出
q!:不保持退出
w:只保持
q:只退出
退出后要使用gcc将源代码文件编译成可执行文件
gcc 文件名.c(可多个文件一起编译) -o 生成的程序名
例:gcc main.c(fun.c) -o main
再使用 ./文件名 运行文件中经过编译的代码
