Linux常用指令与vim操作
小编今天正好在知乎上看到了一篇有关《Linux是否为最优秀的操作系统》的文章,里面说到Linux中的命令行比GUI方便,作为萌新的小编目前还是更习惯于使用带界面的操作系统,但是小编心中还是有一颗向往成为大佬的心
vim操作
vim有三种模式,分别为正常模式、插入模式、行底(命令行)模式
① 模式切换
正常模式进入插入模式:
i 当前光标前进入插入模式
I 光标跳至行首进入插入模式
a 当前光标后进入插入模式
A 光标跳至行尾进入插入模式
o 当前光标的下一行插入一个空白行,从插入的空白行处进入插入模式
O 当前光标的上一行插入一个空白行,从插入的空白行处进入插入模式
正常模式进入行底模式:
:
插入模式返回正常模式:
ESC
Ctrl+c
行底模式返回正常模式:
ESC
Ctrl+c
② 正常模式下的常用快捷操作
光标移动
h 光标左移
j 光标下移
k 光标上移
l 光标右移
PgUp 光标向上移动一屏
PgDn 光标向下移动一屏
gg 光标移动至文件头
G 光标移动至文件尾
nG 光标移动至第n行
删除操作
x 删除光标所在的字符
dw 从当前光标开始删除一个单词(包含空格)
de 从当前光标开始删除一个单词(不包含空格)
ndd 删除n行
复制操作
nyy 复制n行
p 粘贴到光标下一行
替换操作
r char 替换光标所在字符为char
cw 删除光标所在的单词后进入插入模式
撤销操作
u 撤销上一次操作
U 撤销当前行的操作
Ctrl+r 反撤销
退出操作
ZZ 保存退出
ZQ 不保存退出
③ 插入模式下的常用快捷操作
Ctrl+i 相当于Tab键
Ctrl+n/p 自动补齐
Ctrl+z 保存并退出
④ 行底模式下的常用快捷操作
:set nu 显示行号
:set nonu 不显示行号
:>n 从光标开始的n行向右移动
:<n 从光标开始的n行向左移动
:%s/old/new 用new单词替换old单词
w 保存
q 退出
wq 保存并退出
q! 强制退出(不保存退出)
开关机
init 0 关闭系统
shutdown -h now 关闭系统
shutdown -h hours:minutes & 按预定时间关闭系统
shutdown -c 取消定时
shutdown -r now 重启
reboot 重启
logout 注销
显示文件和目录
在讲指令之前,小编想起了一个很有趣的视频,就是一个高中生在教室计算机的cmd中输入了tree,大家便惊呼他为黑客
tree 显示文件和目录,由根目录开始的树形结构
ls 显示当前目录下的所有文件
ls -l 显示文件的详细信息
ls -a 显示隐藏文件
cat filename 将文件的内容显示到终端上
tac filename 将文件的内容从后至上显示到终端上
more filename 查看长文件的内容,按Enter显示下一行,按Space显示下一屏
head -num filename 显示文件的前num行
head filename 显示文件的前12行
tail -num filename 显示文件的后num行
tail filename 显示文件的后12行
目录的进出
cd /home/dir 进入dir目录
cd .. 返回上一级目录
cd ../.. 返回上两级目录
cd . 当前目录
cd ~ 当前用户的home目录
pwd 查看当前所处的目录
目录的创建和删除
mkdir dirA 创建一个叫做dirA的目录
mkdir dirA dirB 创建一个叫做dirA,一个叫做dirB的目录
rmdir dirA 删除一个叫做dirA的**空**目录
mv dirA dirB 重命名dirA为dirB / 移动dirA至dirB路径并改名
rm -rf dirA 删除非空目录
文件的复制
cp fileA fileB 复制fileA文件,生成fileB文件
cp dirA dirB 复制dirA目录,生成dirB目录
cp -a /tmp/dir . 复制一个目录到当前工作目录下
文件的搜索
find /path -name file 从path路径开始查找文件file
find /path -name \*.c 从path路径开始查找文件后缀是.c的文件
find /path -type f -atime +days 从path路径搜索days天未被使用过的执行文件
find /path -type f -mtime -days 从path路径搜索days天被使用或创建的文件
软硬链接的创建
ln -s file linkA 创建一个指向文件或目录的软链接
ln file linkA 创建一个指向文件或目录的物理链接
解压与打包文件
tar -zcvf A.tar.gz filename 压缩文件至gzip格式的压缩包
tar -zxcf A.tar.gz 解压gzip格式的压缩包
tar -tf A.tar.gz 显示压缩包中的内容
zip A.zip filename 压缩文件至zip格式的压缩包
zip -r A.zip filename dirname 压缩文件与目录至zip格式的压缩包
unzip A.zip 解压zip格式的压缩包
系统进程
ps a 显示终端下的所有程序
ps A 显示所有进程
ps u 以用户为主的格式来显示程序状况
ps x 显示所有程序,不以终端机区分
ps aux|grep name 过滤查找特定的进程
gcc编译
gcc -E 预处理
gcc -S 生成编译文件.s
gcc -c 生成汇编后的目标文件.o
gcc -o 指定链接生成的文件名
gcc -Wall 产生尽可能多的警告
gcc -Werror 把警告当做错误处理
gcc -g 可执行程序包含调试信息
gcc -D 链接时定义宏
gcc -l 链接时加库
gcc -I 指定头文件路径,配置环境变量
gcc -L 指定库文件路径
总结
小编所写的只是冰山一角,目前小编的水平所用到的也只有这些指令,挂载以及特殊权限等指令待学习后补充,望大佬们见谅