linux一些常用指令整理
set number:设置行号 set list:区分tab和空格 按w:一个字一个字跳转
按b:一个字一个字回跳 shift+6:行首 shift+4:行尾
ctrl+v:选中块,再按shift+i进入插入
代码对齐:shift+v再按shift+">" 连续‘gg’:默认到行首
shift+g:到行尾 行号+shift+g:到对应行 10j:往下跳10行 3k:往上跳3行
shift+h:屏幕最上一层 shift+l:底部 shift+m:中间
vs:左右分屏 split:上下分屏
zt:上面 zz:中间 zb:最下面
替换(全局替换)???
gcc:可以编译C文件 g++:用来编译C/C++文件 其中:#ifdef-Cplusplus:宏定义,用来判断一个程序是用C还是C++编译的
cd ~切换到用户的主目录、cd /切换到根目录、cd ..返回上一级、cd ./当前目录
cd- 切换到上上级目录、man 帮助、mkdir -p嵌套创建目录
cp 源文件名 目录:将文件拷贝到文件中,
拷贝文件夹要加 -r
剪切文件夹不需要-r
mv ./*.c ./mydir5 将当前目录下的 .c文件剪切到当前目录下
rm 删除文件夹 -r f 删除里面的东西并且不提示的强制删除
cat main.c >a.out 将main.c里面的东西重定向到a.out里面输出、
cat >a.out 将键盘的字符重定向到a.out里面输出;
cat>>a.out 在文件末尾追加字符<< >>
touch创建空文件、head -n 10 main.c 查看main.c的前10 行tail –f查看后十行 my.log 动态跟踪my.log
wc -l main.c 统计有多少行
-c 有多少个字符
-w有多少个单词
ls -l | wc -l
左边的输出作为右边的输入
管道
cmd1 cmd2或 cmd1 $ cmd2
cmd2的输出作为cmd1的输入
cal 打印日历
find ./ -type f -exec rm -f{};
组合命令找到普通文件并删除
tar -cvf 0814.tar ./*
将当前所有文件打包
gzip只能压缩文件 tar可以压缩文件夹
top任务管理器
上:h下:j左:k右:l
!q: 强制退出
set nu:设置代码行数
行号+G:移动光标到对应行数
0:直接回到开头
Ctrl+^:匹配一行的开头
gg:移动到整个文章的开头
shift+G:移动到整个文章的结尾
yy:复制
p:移动到一行的下面
shift+p:移动到一行的上面
查找cpp: /cpp+enter键
%s/print/prin tf/ig(i:忽略大小写 g:全部匹配)
:把print替换成printf
找到另一半括号:shift+%
split b.c:切屏 参考别人代码
vs: b.c 竖着分
gcc -c first.c -o first.o
ctrl+insert:从linu拷贝到外面
shift+insert:lunix拷贝到里面
strlen 和sizeof 均是无符号数
dll:动态库
./main.exe:跑程序
1、创建目录:mkdir dirname 删除目录: rmdir dirname
2、拷贝文件或目录:cp 源文件或目录 目标文件或目录
-f:若目标文件中存在与源文件同名文件,直接覆盖不提示;
-i:当目标文件中存在于源文件同名的文件时,copy时系统会提示是否进行覆盖
-r:如果要拷贝的是一个目录,则同时拷贝该目录下的子目录和文件
3、移动文件或目录:mv 源文件或目录 目标文件或目录
4、删除文件或目录:rm 文件或目录
-f:删除过程不会给出提示
-i:删除过程会给出交互式提示
-r:如果删除的是一个目录,则将该目录下的目录和子目录均删除
显示文件内容的前几行:head –n 显示文件内容的末尾几行:tail –n
5、文件查找:find 起始目录 查找文件 操作
6、文件压缩和解压:讲main.c进行压缩,则使用gzip main.c 将刚才文件解压:gzip –dv main.c.gz
7、-c:编译源文件 -o:表示输出目标文件
预编译编译汇编链接
(1) 预处理:预处理器将对源文件中的宏进行展开
(2) 编译:gcc将C文件编译成汇编文件
(3) 汇编:as将汇编文件编译成机器码
(4) 链接:将目标文件和外部符号链接,得到一个可执行的二进制文件
*参考《vim手册》