linux基础命令:

1.
pwd:显示当前所在位置的绝对路径
cd 路径:切换当前工作位置
cd . :退回到当前位置
cd .. :退回到上一层
ls:默认显示当前位置当前目录下的内容
clear:清屏(相当于翻页)
cd ~:直接进入到当前用户的家目录
cd -:切换到上一次所在位置,在两个位置之间来回切换;
mkdir 文件名:创建一个目录(文件夹)
touch 文件名:创建一个普通文件
2.文件类型
目录文件:文件夹 用'd'表示
管道文件:用于进程间通信的一种文件(p)
链接文件:相当于Windows上的快捷方式(l)
设备文件:字符设备文件(c),块设备文件(b),套接字(s)
ls -l:查看文件的属性信息:
对于一个文件而言,操作它的用户可以分为三类:
所有者,同组用户,其他用户
u: (user)表示文件属主的访问权限;g: (group)表示文件同组用户的访问权限;
o (others)表示其他用户的访问权限;
文件权限如下:
r (read)读权限 ,值为4
w (write)写权限 ,值为2
x: (execute)执行权限 ,值为1
3 修改文件权限 (chmod);
(1) 文字设定法 :
u:表示属主(user) g:表示同组人(group) o:其他人 (other) a:所有人 (all)
+:表示增加权限 -:表示去掉权限
例如:修改main.c文件的所有者权限:
1).取消写权限:chmod u-w main.c
2).成为可写可读的 chmod u=rw main.c
3).同时修改main.c的属主权限和组用户权限:chmod u-w,g+x main.c
 
(2) 数字设定法
采用数字设定法时,权限通常由三位数字组成,每一位数字代表一种角色的权
限。每个角色的数值由其所具有的权限对应的数值之和构成;
r (read)读权限 ,值为4(100)
w (write)写权限 ,值为2(010)
x: (execute)执行权限 ,值为1(001)
格式:chmod xxx 文件名
1. 基础命令
(1)pwd:显示当前位置的绝对路径
(2)cd:切换目录:cd 要切换的位置(绝对路径/相对路径)
(3)ls:显示目录中的文件
ls -l(简写为ll,等价)
(4)man:帮助手册
(1)代表命令
(2)代表系统调用
(3)代表库函数
man printf:查询命令printf
man 3 printf:查询库函数printf
(5)touch:创建普通文件
(6)mkdir:创建目录文件
(7)rmdir:删除空目录,不能删除非空目录
(8)cp:拷贝文件
拷贝普通文件语法:cp 源文件的路径+文件名 目的路径
拷贝目录文件的语法:cp -r 源目录文件+目录名 目的路径 ( 需要加 r )
拷贝+重命名的语法:cp 源文件+文件名 目的文件+新文件名
 
(9)mv:剪切文件
移动普通文件:mv 源文件的路径+文件名 目的路径
移动目录文件:( 不需要 -r ):mv 源文件的路径+文件名 目的路径
mv:剪切并重命名的语法:mv 源文件路径+文件名 目的路径+新文件名
重命名:mv 源文件的路径+文件名 源文件的路径+新文件名
(10)rm:删除文件(删除目录文件 需要加 -r)
rmdir 目录名:删除空目录
rm -r 目录名:删除非空目录
(11)find :查找
find 搜索路径 -name 文件名 ( 按文件名搜索 )
find 搜索路径 -cmin -n(搜索过去n分钟内修改的文件);
find 搜索路径 -ctime -n(搜索过去n天内修改的文件);
(12)grep:在文件中过滤出包含指定字符串的行;
(vim先不管
cat:查看test的内容)
语法:grep 字符串 文件名
(13)管道命令 |
将前一个命令的输出结果作为后一个命令的输入
(14)wc:统计文件中单词的个数(-w),字符的个数(-c),行数(-l)
wc -w 文件名
wc -c 文件名
wc -l 文件名
(15)su:切换用户
1.切换为管理员的命令:sudo su;
退出:exit
2.切换为其他用户的命令:su 用户名;
退出:exit
(16)关机与重启shutdown -h now:立刻关机
halt:关机
init 0:关机
shutdown -r now :立刻重启
reboot:重启
init 6:重启
(17)runlevel:查看系统运行级别
0:关机
1:单用户模式
2:多用户无网络服务
3:完全的多用户 文本界面
4.未定义或自定义
5.图形化界面
6.重启
(18)其他命令及小知识点
1.tab补全,按上下键查阅执行过的命令
2.ctrl - 调小窗口
ctrl +shift+ + 调大窗口
3.Ctrl+Alt:释放鼠标
4.history:查看终端的所有的历史命令
2. 文件查看命令
(1)cat
1.cat:查看文件内容
2.合并文件:
cat a.txt b.txt > c.txt
3.往文件中写入数据
cat > ab.cctrl+d结束输入
(2)more
more 文件名
(3)less
less 文件名
看完内容之后不会显示到屏幕上
(4)head
显示文件前n行
head -num 文件名
默认是10行
(5)tail
显示文件后n行
tail -num 文件名
,默认是10行
查看日志文件主要用 tail
1. 文件编辑命令
vim 的三种模式
vim分为三种模式:命令模式,插入模式(编辑模式),末行模式;
(1)命令模式转为插入模式:
(4)vim/vi 常用命令 :
n dd:删除光标开始向下的n行;
n yy:拷贝光标开始向下的n行;
p:粘贴;
u:撤销上一次操作
ctrl+r:恢复上一次撤销操作;
r:替换一个字符;
shift+6:光标移动到当前行的开头;
shift+4:光标移动到当前行的末尾;
shift+g:光标移动到文本的最后一行;
gg:光标移动到第一行;
n shift +g:光标移动到第n行;
d n shift +g:删除光标到n行的内容;
y n shitf+g:拷贝光标到n行的内容;
(5) 末行模式下的操作 :
:w 保存文本
:q 退出编辑
:wq 保存并退出:q! 强制退出(不保存退出)
:w (路径) 文件名 另存为
:set nu 显示行号
:set nonu 取消行号
:set hlsearch 设置高亮搜索
:set nohlsearch 取消高亮搜索
:n,m s/oldstring/newstring 替换从n行到m行的第一个oldstring
:n,m s/oldstring/newstring/g 替换从n行到m行的所有oldstring
/string 向下搜索
?string 向上搜索
2)配置文件的设置方法:
sudo vi /etc/vim/vimrc
然后将配置选项写入到该文件中末尾:
set nu
set tabstop=4 按tab缩进4个空格
set softtabstop=4
set shiftwidth=4set expandtab
set smartindent 自动缩进
编译链接的四步
(1)预编译:
gcc -E main.c -o main.i
(2)编译
gcc -S main.i -o main.s
(3)汇编
gcc -c main.s -o main.o
(4)链接
gcc main.o -o main执行: ./main
或者:全路径/main
main.c 通过预编译 生成main.i文件
main.i 通过编译生成main.s 文件
main.s 通过汇编生成main.o 文件
链接阶段:将所有的.o .a(静态库文件) .lib(库文件) .obj文件链接起来,生成.out文件
ELF格式的可执行文件 .out文件(Windows生成的是.ext文件)
(1)可以三步合为一步,即不经过预编译,编译,汇编三步,直接一步生成.o文件:
gcc -c main.c -o main.o
gcc -o main main.o
(2)可以四步合为一步:
gcc -o main main.c
1.gdb 调试
gdb命令
l:显示main函数所在的文件的源代码list 文件名:num 显示文件名文件num行上下的源代码
b 行号:给指定行添加断点
b 函数名:给指定函数的第一有效行添加一个断点
info break:显示断点信息;
delete 断点号:删除指定断点
r(run):运行程序
n(next):单步执行
c(continue):继续执行,直接执行到下一个断点处
s:进入将要被调用的函数中执行
finish:跳出函数;
q:退出调试
bt:显示函数调用栈
disable 断点号:将断点设定为无效的,不加断点号,将所有断点设置为无效
enable 断点号:将断点设定为有效的,不加断点号,将所有断点设置为有效;
p val:打印变量val的值
p &val:打印变量val的地址
p a+b:打印表达式的值
p arr(数组名):打印数组所有元素的值
*parr@len:用指向数组的指针打印数组所有元素的值
display:自动显示,参数和p命令一样;
info display:显示自动显示信息
undisplay+编号:删除指定的自动显示
ptype val:显示变量类型
 
makefile
 

 

 

 

 

 

 a13a24b47fe34f7789c4462d4592ef17.png

 

50610698123548afbe021c5c7a66aeb7.png

 

 

 

 

 beadcefed0ee45758b006ac46eaf0b93.png

 

 

 ac03116273dd4edeb29a773ec7e4ac33.png

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值