Linux基础知识
linux用户和权限使用ls命令查看文件属性1ls -l
1ls-al
1)第一列 drwxr-xr-x 表示的是文件的类型和权限。
2)第二列 表示的是文件的连接数。硬链接会增加这个数值,软连接不会。
3)第三列 表示的是文件的拥有者。
4)第四列 表示的是文件的用户组。
5)第五列 表示的是文件的大小,单位是Byte。
6)第六列 12月 表示的是文件最后被修改的月份。
7)第七列 表示的是文件最后被修改的日期。
8)第八列 17:30 表示的是文件最后被修改的时间。
9)第九列 . 表示的是文件的名称。如果文件名称是以“.”开头的,说明该文件是隐藏文件。
新建用户test0011sudo adduser test001
查看用户、用户组12345groups 查看当前用户所在用户组groups test001 查看用户test001所在用户组whoami 查看当前登录用户名
切换用户test0011su test001
文件权限1读取----数字4;写入----数字2;执行----数字1
3个数字分别表达对 用户(文件或目录的所有 ...
C语言基础 Linux环境
vim 编辑器打开多个文件(在main.c下打开max.c)
1:sp max.c //横屏
1:vs max.c //竖屏
切换文件
1ctrl + w + 上箭头/下箭头
显示行号
1:set nu
makefile编写
main函数中的参数
其中argv表示终端命令输入时参数个数, argc[]表示参数数组。
main函数返回值下面命令可以查询系统上一个执行函数返回值,为0表示返回正常(即源代码中的return 0)。
1echo $?
只有在返回0时,系统命令可以继续执行,否则无法执行,&&符号可以将两个命令结合起来一起执行,如
1gcc hello.c -o hello.out && ./hello.out
该命令表示编译hello.c文件为hello.out文件,并执行hello.out文件。
标准输入输出流和错误流和重定向12345stdinstdoutstderr
代码中的输入输出语句和注释语句等价,第一个参数可以换成其他输出设备,std默认为显示器输出。 ...
gdb调试查看栈内存
今天我们利用一个两层函数调用的简单程序——输入两个整数求最大公约数。来学习与理解gdb调试的过程。
首先进行代码编写
main函数:
12345678910111213#include<stdio.h>#include"cal.h"#include"res.h"int main(){ int a,b; printf("请输入两个数字:\n"); scanf("%d%d", &a, &b); int res; res = cal(a,b); printf("最大公约数是:%d\n",res); return 0;}
cal()函数比较两个输入数值大小,并将大的数字放在前面,作为下一个函数的参数:
1234567891011#include"res.h"int cal(int a, int b){ int t; if(a < b){ ...
Git基础学习
git基础创建版本库初始化目录变成Git可以管理的仓库:
1git init
把文件t1.txt添加到仓库:
1git add t1.txt
把文件提交到仓库
1git commit -m "说明注释"
可以多次add,统一commit
Git命令必须在Git仓库目录内执行(git init除外),在仓库目录外执行是没有意义的。
添加某个文件时,该文件必须在当前目录下存在,用ls或者dir命令查看当前目录的文件,看看文件是否存在,或者是否写错了文件名。
基础操作查看仓库状态
1git status
查看文件改动内容
1git diff t1.txt
查看修改日志
1git log
查看简单版修改日志
1git log --pretty=oneline
前面十六进制数据表示的是commit id(版本号)
版本回退HEAD表示当前版本,上一个版本是HEAD^,上上版本是HEAD^^,或者可以写为HEAD~2
版本回退可以用
1git reset --hard HEAD^
返回到最新版本可以用
1git reset --hard &l ...