关于linux/unix命令总结的文章有很多,但是里面的内容基本上都太多,没有强调经常会用的一些命令,这里自己总结一份:
提醒大家的是,linux命令是区分大小写的,所以输命令的时候要注意,查阅一个命令的用法可以使用comman --help:
0,cd~进入到当前用户目录下/root或/home/aaa;cd ..上一级目录;cd ./c进入当前目录下的c文件夹内 cd /进入到根目录下
1,cp a.c a.u 将a.c文件复制一份新文件名为a.u
2,gcc a.c编译a.c的文件默认生成a.out;gcc -x 'c' a.u编译非.c文件;gcc a.c -o do编译a.c文件生成do文件(-output);gcc –c main.c 只编译不链接
gcc其实包括四个过程:
预处理:对源代码中的预编译语句(如宏定义define等)和文件包含进行处理
编译:生成以.s为后缀的汇编语言文件
汇编:完成将汇编语言汇编成二进制机器代码的过程
链接:将多个汇编生成的目标文件以及引用的库文件进行模块链接生成一个完整的可执行文件
3,ls查看当前目录下的文件
4,./a.out运行当前目录下的a.out文件。直接输入a.out是会报错的
5,mkdir c 新建一个文件夹名称为c
6,vim打开文件编辑器,输入i 进入编辑模式,Esc 返回命令模式,
:w ./a.c或:w 将缓冲区写入文件,即保存修改(write):w /home/yourname/newfilename这样是另存
:wq 保存修改并退出(write and quit)
:x 保存修改并退出()
:q 退出,如果对缓冲区进行过修改,则会提示
:q! 强制退出,放弃修改
Select: 按v,用方向键选择要操作的部分
Copy: 按y
Cut:按d
Paste:按p
7,g++ a.cpp 编译a.cpp的C++文件(语法与普通C++语法相同)用法与gcc类似
8,chmod +x do给do文件添加执行权限, chmod [who] [opt] [mode] 文件/目录名
who代表用户 u:表示文件所有者 g:表示同组用户 o:表示其它用户 a:表示所有用户 chmod u+w do
opt则是代表操作,可以为: +:添加某个权限 -:取消某个权限 =:赋予给定的权限,并取消原有的权限
mode则代表权限: r:可读 w:可写 x:可执行
9,file a.c查看文件信息,可用此方法查看文件是否为可运行文件
10,gdb调试工具
gcc a.c -g -o a.debug 先生成一个包含调试信息的可执行文件
gdb启动gdb
file a.debug用file命令加载该程序
在(gdb)提示符后面输入下面的命令:
list 1:或者list, gdb会显示第一个断点以前的代码,按“Enter”键,显示下一个断点以前的代码
break 6:在程序的第6行增加一个断点
info breakpoint: 可以查看程序中设置的断点,也可以info breakpoint 1查看第一个断点
run: 命令可以使这个程序以调试的模式运行,程序在第一个断点位置停下
next: 程序会在下一行停下
continue:程序会在下一个断点的位置停下
step: 与next命令的作用相似,对程序实现单步运行。不同之处是,在遇上函数调用时,step函数可以进行到函数内部。
print: 可以在程序的运行中查看一个变量的值
q/quit: 退出gdb
delete: 删除一个断点或监测点,如delete 1,也可以使用 clear 删除刚才停止处的断点
11,pwd: 查看当前工作目录
12,rma.c:删除文件a.c
13,rmdir[-p] c:删除空的目录,-p 是当子目录被删除后使它也成为空目录的话,则顺便一并删除
14,passwd:修改密码,-d 关闭使用者的密码认证功能, 使用者在登入时将可以不用输入密码, 需要root 权限.
15,mv/usr/udt/*: 将/usr/udt中的所有文件移到当前目录(用”.”表示)中。mv test.txt wbk.txt:将文件test.txt重命名为wbk.txt
16,su – root:(root可以省略)将普通用户变更为root 用户,“-”携带root环境变量,提示符由$变为#。(su – test切换回去)
sudo 命令:不切换为root用户但使用root权限执行命令
17,useradd zhang: 添加用户名为zhang的新用户
18,userdel –r zhang:删除用户zhang及其文件夹目录。用户文件夹一般存放在/home/zhang下
19,find abc: 查找名称为abc的文件夹