linux命令:
卡死:ctrl + c
界面调节:
终端放大: ctrl + shift + =
缩小:ctrl + -
打开:点击 ctrl+alt+t:在家目录下打开 ctrl+shift+n:在当前路径下新开
关闭:点击 exit ctrl+d
提示文字:
hq @ ubuntu : ~ $
用户名 间隔符 主机名 间隔符 当前路径 间隔/输入提示符 ($表示普通用户)
文件类型(七种):bcd-lsp
b:块设备文件
c:字符设备文件(键盘鼠标)
d:目录
-:普通文件
l:软连接
s:套接字
p:管道文件
特殊符号:
~ : 家目录 不是home文件夹 (权限最高)拓展:如何更改家目录
/ :根目录-----此电脑 最大的盒子
. :当前目录
.. :上一级目录
- :上一次操作的目录
以上配合cd指令使用
linux指令:
查看用户名:whoami
查看主机名:hostname
查看当前路径的完整路径:pwd
查看当前路径所有文件:ls 【选项】
选项:-a:查看当前路径所有文件(包含隐藏文件) -l: 显示当前路径下文件的详细信息
拓展:选项可以一起使用 即 : ls -la
蓝色:文件夹(目录)
绿色:可执行文件
白色:普通文件
黄色:设备文件
d rwx:当前用户 r-x :同组 r-x :其他
文件类型 权限:r:读 w:写 x:执行 -:不可以
更改权限:chmod
其他文件类型
b:块设备文件
c:字符设备文件(键盘鼠标)
d:目录
-:普通文件
l:软连接
s:套接字
p:管道文件
切换路径:cd
cd 路径(目录):切换目录(相对路径必须是当前路径下有的文件夹)。例(相对路径):
路径:相对路径(用 . 或者 .. 或直接文件名)
绝对路径(完整路径):以/(根目录)或者 ~ 开头
新建文件:touch
touch 文件名(注意要加扩展名.)
如果有同名文件,只更新时间戳
拓展:可以创建多个文件
新建文件夹:mkdir
mkdir 【选项】 文件夹
同时新建多个:mkdir 11 22 33 名字中间空格隔开
多层嵌套:选项【-p】:创建目录的上层目录(子母文件夹)例:mkdir -p a/b/c
相同路径下:不能创建同名文件夹,会报错
删除目录(文件夹)rmdir
rmdir 【选项】 目录名
选项:-p 删除多个目录
删除文件(文件夹):rm【选项】文件(文件夹)
如果要删除文件夹选项:
选项【-r】 删除文件夹
选项【-f】:强制删除,不问你 (若权限不够,最前面加sudo获取:sudo rm)
选项【-i】:交互,删除时问你
复制:cp 会覆盖同名文件
cp 【选项】 源文件 目标文件夹
选项:【-i】:交互,若覆盖的话会提示
【r】:可复制文件夹
拓展:可复制多个文件到文件夹,两种方式:*.扩展名、文件 文件 例:
文件夹改名如图:(只能改一个)
移动文件/文件夹或改名:mv
语法:mv 【选项】 源文件(夹) 目标文件(夹)
选项:【-i】交互 同名会询问
改名文件:mv 源文件(夹) 目标文件(夹)
移动多个文件:
mv *.扩展名 目标文件
mv 文件(夹)1 文件(夹)2 文件(夹)3 文件夹
vi编辑器
打开文件:vi 文件名
三种模式:
命令行模式:支持特定命令的操作 默认进入此模式
插入模式:编辑模式 在此模式下可以进行编辑内容
底行模式:支持特定命令的操作 保存 退出
如何进入各种模式如图:
注:模式切换必须从命令模式切入
底行模式:( shift + : ) 进入
q:退出
w:保存
wq:保存退出
q!:不保存退出(强制退出)
分屏:vsp
查找:/str
打开分屏:ctrl+w——>v
关闭分屏:ctrl+w——>q
查找:/要找的内容
替换:s/内容/需要替换的内容 例:s/str1/str3 将光标里的str1替换成str3(只替换一次光标部分)
全部替换:s/内容/需要替换的内容/g 例:s/str1/str3/g 将光标所在行的全部str1替换成str3
%s/内容/需要替换的内容/g,&s/内容/需要替换的内容/g 全文替换
设置行号:set nu
取消行号:set nonu
取消高亮:nohl
命令行(命令模式):
复制:yy 多行 nyy(n:表示的是行数)
删除(剪切):dd ndd
粘贴:p
撤销:u
反撤:ctrl+r
光标的移动:移动到首行:gg 移动到末行:G 移动到行首:0 移动到行尾:$
整理代码的格式:gg=G
\ :转义 把后面跟随的内容改变含义,后面跟符号表示转译成文本符号
例:\n——>换行 \?——>文本? \\——>文本斜杠
文本内容:///
通过指令完成替换:\\\
答案:%s/\//\\/g
红色:表示语法格式,蓝色表示转义,黑色表示替换内容。
编辑流程:
1、创建.c文件:touch 文件名.c
2、打开文件:vi 文件名.c 或使用 vscode打开:code 文件名.c
3、写代码
#include<stdio.h> //头文件
int main() //主函数
{
printf ("hello word! \n"); //打印语句
return 0;
}
4、保存退出:wq
5、编译代码:gcc 文件.c 默认生成a.out文件
6、执行a.out 文件: ./a.out
gcc编译器,四步:1.预处理 2.编译 3.汇编 4.链接
1、预处理
展开头文件、删除注释、替换宏定义
命令:gcc -E hello.c -o hello.i (E:预处理,删除注释、替换宏定义)(o:生成hello.i文件)
2、编译
检查语法错误 有错误报错 没有转成汇编语言文件
命令:gcc -S hello.i -o hello.s (S:编译hello.i文件)(o:生成hello.s文件)
3、汇编
将汇编文件转化成二进制文件
命令:gcc -c hello.s -o hello.o
4、链接
链接库文件,最终生成机器可以识别的可执行文件
命令:gcc hello.o -o a.out(默认生成a.out文件可以改名)
改可执行文件名:gcc .c文件 -o 文件名(无需后缀)
计算机中数据存储的单位:
位(bit)
字节(Byte)
1字节=8位
1B=8b
1KB=1024B
1MB=1024KB
1GB=1024MB
1TB=1024GB
计算机中数据的表现形式:
1、数值型数据
进制:
二进制(B):满2进1 0-1
八进制(O):满8进1 0-7
十进制(D):满10进1 0-9
十六进制(H):满16进1 0-F
2、非数值型数据、
使用Linux使用man函数查找ascii表
常用字符数据:
字符:使用单引号‘’引起来的内容(‘’只能引用一个字符)
A~Z==D65~90
a~z==D97~122
\n==10
\0==0