Linux篇

vim 命令篇

查看本机ip

hostname -i
ifconfig

翻页移动

ctrl + f 向下移动一页 (f表示follow)
ctrl+ b 上上移动一页 (b表示back)
ctrl + d 向下移动半页 (d 应该表示down)
ctrl + u 表示向上移动半夜( u应该表示up)
G 移动到最后一行
1G 移动到第一行
gg 移动到第一行
n + 回车键 向下移动n行
0 表示移动到第一行第一个字符
$ 表示移动到该行最后一个字符
n + 空格键 向右移动n个字符

复制粘贴删除

x 在该行中向后删除字符,相当于del键
X 在该行中向前删除字符 相当于backpace
nx 连续向后删除n个字符
dd 删除该行
ndd 向后删除n行
d1G 删除光标所在到第1行所有的数据
dG 删除光标所在 到最后一行的数据
d$ 删除光标所在处 到该行最后一个字符
d0 删除光标所在 到该行的第一个字符
yy 复制游标的所在的行
nyy n为数字 复制光标向下的n行
y1G 复制光标所在行 到第一行的所有数据
yG 复制光标所在行 到最后一行的所有数据
y0 复制光标字符到第一个字符
y$ 复制光标到最后一个字符
p 粘贴,将复制的行粘贴在行的下一行
P 粘贴 将复制的行粘贴在游标所在的行上一行
u 复原前一个动作(就是撤销前一个动作)
ctrl + r 重复前一个动作
. 小数点 也是重复前一个动作

搜素与替换

下面的word都不用加引号
替换的命令后面不用加c,要不然很麻烦,得一个一个加c

/word 向下搜素word字符串
?word 向上搜素word字符串
n 表示重复上一个搜素动作
N 表示向相反方向重复上一个动作
:n1,n2 s/word1/word2/g 在n1行和n2行之间 搜索word1 并将word1替换为word2
:n1,n2 s/word1/word2/gc 在n1和n2行之间搜索word1 并将word1替换为word2 ,但是在替换之前会确认是否将word1替换为word2
:1,$ s/word1/word2/gc 在第1行和最后一行之间搜索word1 并将word1替换为word2,但是在替换之前会确认是否将word1替换为word2
上面的命令中c为confirm表示确认的意思
:n 表示定位到某一行

保存

:w 保存
:w! 若文件为只读属性时,加! 为强制写入,不过不一定有权限写
:q 离开
:q! 如果修改过文档,不想保存加上!
:wq 保存后离开
:wq! 强制储存后 离开
:w filename 将数据保存为另一个文件

行号

set nu 设置显示行号
set nonu 取消显示行号

vim快捷键

Vim快速选中、删除、复制引号或括号中的内容
最近刚刚发现了一些Vim中,快速对引号或括号等标点内的内容进行选中、删除、复制操作的超级技巧,感觉非常实用。
以下命令可以对标点内的内容进行操作。
i 不包括选择标点符号,a对应的符号也一起选上
ci’、ci"、ci(、ci[、ci{、ci< - 分别更改这些配对标点符号中的文本内容
di’、di"、di(或dib、di[、di{或diB、di< - 分别删除这些配对标点符号中的文本内容
yi’、yi"、yi(、yi[、yi{、yi< - 分别复制这些配对标点符号中的文本内容
vi’、vi"、vi(、vi[、vi{、vi< - 分别选中这些配对标点符号中的文本内容

另外如果把上面的i改成a可以连配对标点一起操作:
举个例子:

比如要操作的文本如下:
111"222"333
将光标移到"222"的任何一个字符处输入命令 di" ,文本会变成: 111"“333
若输入命令 da” ,文本会变成: 111333
特别是对于用Vim编码的同学来说,真是非常强劲的技巧。

vim 批量注释

1,将光标移至第4行开头,按 “Ctrl + v”进入vim的块选择模式(visual block);
2,按下移键 直到第10行,出现如下图效果
3,按“Shift + i”键进入插入模式,键入“#”号,再按“esc”退出插入模式。就完成了批量的注释,如下图
删除多行注释的方法
5.删除多行注释的方法,同样 Ctrl+v 进入列选择模式,移到光标把注释符选中,按下d,注释就被删除了。

vim批量缩进

主要是批量操作模式:
1、c+v 进入批量操作模式
2、按向下移动的箭头,选中要批量注释的行
3、shift +i 进入 输入模式
4、输入4个空格,会显示缩进第一行
5、按下esc 显示所有缩进

常用命令篇

查找文件

find

find [搜素范围] [选项]
当不写搜索范围时,默认是在当前目录下查找
选项说明
-name 按照指定的文件名查找 eg: find /root/data -name “xxx.txt”

如果按照文件名查找时,带通配符查找时 要加引号,如果是完整的文件名,可以不用加引号
find -name "*05*"
find -name "report05.pdf"

-user 查找属于指定用户名的所有文件 find /root/data -usr “xxusr”

查找用户名是tony的文件
find /root/data/ -user tony

-size 按照指定文件大小查找

ls -lh  罗列出文件,并且按照K,M等 单位显示文件大小情况


+ 表示大于等于
- 表示小于等于
find /root/data -size +10M   查找文件大于等于10M的文件

在这里插入图片描述

locate

locate 文件名 就是可以实现快速查找
linux对文件的路径,都事先建立数据表的映射了,locate 查找是根据数据库的表关系查找的,不需要遍历,所有查询速度非常块,但是如果有新建的文件时,linux并不是实时把新建的表关系写入到映射表中,所以在用locate之前 需要先操作 updatedb命令,把新更新的表先写到数据库,locate 查询非常块,所以用loacte 命令 为两步

updatedb   系统中不一定有这个命令
locate 文件名

which

which 主要的对命令的定位

which ls  会显示出ls命令的路径
which python
which locate
也可以套自己
which which

whereis

whereis 命令 也是对命令的路径的查找和定位

whereis locate

grep

grep 查找内容 源文件

在xx.py文件中 查找xx
grep xx  xxx.py  
显示匹配行 和 行号(加上参数n)
grep -n xx xx.py

“|” 管道符 将前面的查询结果传给后面
ls | grep txt 查找后缀是txt的文件
ls | grep pdf 查找后缀是pdf的文件

解压缩

zip 命令

zip mypackage.zip xx1.txt xx2.txt   将两个文件打包压缩
zip -r myroot.zip /root/data/     递归压缩目录 要指定 -r
unzip -d /tmp/ myroot.zip   -d 指定解压目录到 tmp 文件下

tar 命令

tar 是一个打包命令,本身不带压缩功能
tar -c xxx.tar 只是单纯打包文件,后缀名为tar,加上 z 参数时,实际上是用tar 先打包,然后再用linux中的gzip打包,所以后缀是 .tar.gz
tar [选项] xxx.tar.gz

-c  产生 .tar打包文件
-v  显示详细信息
-f  指定压缩后的文件名
-z  打包同时压缩 解包时则是 解压缩
-x  解包.tar.gz 文件
-C  指定到解压目录

压缩多个文件
一般f是放在最后面,因为要指定文件名
tar -zcvf mypackage.tar.gz houge.txt longma.txt
tar -zcvf mypackage.tar.gz /root/data/

解压压缩文件
tar -zxvf mypackage.tar.gz  -C /tmp/

目录操作

ls -a  显示全部隐藏文件
ls -l 等于ll  显示长信息
ls -al  显示全部文件的 长信息

cd - 表示切换到上一个路径
cd  表示跳到家目录
mkdir -p   创建多层级目录
rmdir -p  删除多层级空目录

文件操作

cp -r  递归复制整个文件夹
\cp  强制覆盖 不提示
rm -r  递归删除文件夹
rm -f  强制删除 不提示
rm -rf 强制递归删除整个文件夹,不提示
mv   移动文件夹
touch 创建新文件
vim  文件名  创建新文件,如果不做操作直接退出,那么就直接删掉新文件

查看文件
cat    显示文件全部内容
cat -n 10  显示文件10行内容
head     显示文件前10行内容
head -n 5  显示文件前5行内容
tail  显示文件后10行内容
tail -n 20  显示文件后20行内容
tail -f   实时追踪文档所有的更新(f为follow的意思)   

追加和重定向

ls > test.txt  把ls输出的信息输入到test.txt中,如果test.txt之前有,则覆盖,没有则创建
ls >> test.txt  把ls输出的信息追加到test.txt中
echo 输出到控制台
echo $  查看系统环境变量
echo $PATH  直接查看当前系统的环境变量的路径(该路径的作用是,不能在哪个工作目录,只要是环境变量下的命令,都可以执行)
echo "hello world"  把信息输出到控制台
echo "hello world" > test.txt  把hello world 输入到test.txt中
echo -e "hello \n workd" >text.txt  -e 表示支持 \n \t 等 转义符不是以字符串的形式输出而是换行符或者是制表符
 

软链接

软链接也称符号链接	,类似于windows的快捷方式,有自己的数据块,主要存放了链接其他文件的路径
ln -s  原文件或者目录 文件名或目录名   给原文件创建一个链接
删除软链接:rm -rf 链接名 ,而不是 rm-rf 链接名/
如果 rm-rf 链接名/  会把链接对应的目录下的真实内容删除掉
查询:通过ll就可以查看,列表属性第一位是l,尾部会有位置指向

软链接的作用就是:操作软链接更便捷,在软链接上修改信息,在真实的目录下的文件也会被修改信息
软链接工作目录:
pwd  显示软链接路径
pwd -P  显示真实路径的工作目录


文件传输

从本地主机上传文件到远程主机:
scp /path/to/local/file username@remote_host:/path/to/remote/directory

从远程主机下载文件到本地主机:
scp username@remote_host:/path/to/remote/file /path/to/local/directory

在这些命令中:

/path/to/local/file 是本地文件的路径。
username 是远程主机的用户名。
remote_host 是远程主机的主机名或 IP 地址。
/path/to/remote/directory 是远程主机上目标文件夹的路径。
/path/to/remote/file 是远程主机上要下载的文件路径。
/path/to/local/directory 是本地目标文件夹的路径。
请确保您在执行 scp 命令时,已经配置好了 SSH 权限且远程主机能够访问,并且您有足够的权限来进行文件传输操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值