版权声明:内容版权为CSDN用户:kayseen 所有,若您需要引用、转载,需要注明来源及原文链接 https://blog.csdn.net/m0_43394876/article/details/88371540
linux常用命令
1.Linux基本命令(一)
1.1基础操作
1.ls表示当前文件夹下面的内容
2.pwd表示当前位置
3.cd[目录名]表示切换文件夹 cd空格Desktop
.cd表示切换路径,如果在当前路径下没有输入的指令的路径,将不执行
4.touch[文件名]表示新建文件 touch空格123.txt
touch {1,2,3,4,5} 一次性创建多个同级目录
touch a/b/c/123.txt 表示在a目录下面的b下面的c下面,创建123.txt前提是abc目录已经存在
5.mkdir[目录名]表示新建目录 mkdir空格qqq
创建连续的文件夹: mkdir a/b/c/d/e/f -p
6.rm[文件名]表示移除指定的文件 rm空格123.txt (删除文件夹+ -r)
7.clear表示清屏
8.cd空格..表示返回上级路径
cd空格../..表示返回上级的上级路径
9.cd空格— 表示在最后执行的两个命令之间来回切换
10.cd空格./Desktop 表示跳转到当前路径下的Desktop中, 这里的./表示当前路径
11.cd空格/home表示跳转到根目录下的home目录中
12.cd空格~ 表示快速回家
13.rm —r Desktop 等同于 rm Desktop —r —r 表示删除文件夹
也可以 remove Desktop -rf f表示强制删除不用询问
14.cp空格①空格② 复制文件,①是要复制的,②是复制到的路径
15.cp空格①空格②空格—r 等同于 cp空格—r空格①空格② 复制文件夹,将文件夹①放到文件夹②之下
16.mv ① ② 移动文件①到②之下 移动文件夹的时候需要 —r
17.mv ① XXX 将①的名字改为XXX,本来是移动命令,但是XXX不存在则是改名字
18.man空格ls 有问题找男人。表示查看ls命令的帮助,man后面可以加任意的命令
19.ls空格-l == ll 表示以列表的形式展示当前目录下的文件,l即list
ls -ll == ls -al
20.ls空格-l空格-h == ls空格-lh 在19的基础之上,展示文件的大小
21.ls空格-l空格-h空格-a == ls空格-alh 在19和20的基础之上,显示所有文件包含隐藏文件的大小
ls -alh显示的内容,d开头表示文件夹,l开头表示软连接,-开头表示普通文件
22. touch空格.123.txt 创建文件时,在文件名称前面加. 表示创建的是隐藏文件
touch {1,2,3,4,5} 一次性创建多个同级文件目录,可以不是连续的
touch {1..5} 一次性创建多个文件目录,必须是连续的同级的
23. 删除空文件夹:rmdir XXX rm XXX -d
1.2调整终端窗口
终端字字体放大:Ctrl + shift + +
缩小:ctrl + -
打开终端 : ctrl + alt + t
ctrl + shift + t 在同一终端打开多窗口
在文件管理中查看路径 : ctrl + l 在终端里表示清屏
调到行首:ctrl+a 或者 home键
调到行尾:ctrl+e 或者 end键
cd绝对路径时如果忘记下一级目录可以按两次tab键出来可选
文件管理中显示隐藏文件:ctrl + h
2.Linux基本命令(二)
2.1重定向、打开文件
1.ls > 123.txt 表示将ls命令的内容写入到123.txt中,如果123.txt已经存在则直接覆盖
2.ls >> 123.txt 同1命令,不过>>不会覆盖已经存在的文件,如果文件名称存在,则追加在文件后面
3.tree /home/python/ > 123.txt 将/home/python/下的tree写入123.txt中
4.gedit 123.txt 打开123.txt文件,查看其中的内容
5.cat 123.txt 在命令窗口显示123.txt的所有内容
6.more 123.txt 在命令窗口分页显示123.txt中的所有内容,可以f向前翻页,q退出
7.tree /home/python/ | more |是管道的意思,此命令是在命令窗口分页显示路径下的tree命令
2.2 软连接 硬链接
1.ln -s 123.txt 123.s.txt 给123.txt创建了一个软连接相当于快捷方式,连接的名称为123.s.txt
2.ln 123.txt 123.h-link.txt 创建硬链接,只能连接文件,不能连接目录
2.3cat合并文件
1.cat ① ② 在终端显示①和②里面的内容,①在前②在后. 相当于用到了重定向
重定向合并: cat ① ② >> 123.txt 将显示的①和②的内容写入到123.txt中,这是重定向
2.4grep/find搜索
1.grep "h" 123.txt 表示在123.txt中搜索含有"h"内容的部分
grep -n "h" 123.txt 表示在123.txt中搜索含有"h"内容的部分,并且显示位置在第几行
grep -i "h" 123.txt 表示在123.txt中搜索含有"h"内容的部分,并且忽略h的大小写
grep -n "h$" 123.txt 表示在123.txt中搜索含有"h"内容的部分,显示第几行,并且$表示只显示h结尾的行
grep -n "^a" 1.txt 搜寻以 a 开头的行;
grep -n '[Ss]igna[Ll]' 1.txt 在文件1.txt中匹配 [] 里中一系列字符中的一个;搜寻匹配单词signal、signaL、 Signal、SignaL的行;
grep "h" 123.txt -v 搜索123.txt中不包含h的部分 后面跟 -v 是反命令
2.find ./ -name test 表示在./的路径下,搜索名字为test的文件. -name表示找的是名称
2.5通配符
1. *表示多个字符 eg: ls *.txt 显示的是所有以txt结尾的文件
eg:ls 1*3.txt 显示的是以1开头,以3结尾的txt文件*可有可无,也可以指多个
2. ?表示一个字符,可以叠加. eg: ls ???.txt 显示的是有三个字符的txt文件
eg: ls 1?3.txt 显示的是以1开头,以3结尾的文件,中间的?必须有一个相应的字符
2.6 打包 压缩
***解压到指定目录:在最后面加 -C + 路径
1.打包: tar -cvf xxx.tar *.txt 表示将当前路径下所有以txt结尾的文件打包成名称为 xxx.tar
这里的打包不同于Windows,不会改变文件的大小
2.压缩: gzip xxx.tar 表示将xxx.tar压缩,会产生一个 xxx.tar.gz 的文件
***可以将打包和压缩合二为一: tar -zcvf xxx.tar.gz *.txt
3.解压缩: gzip -d xxx.tar.gz, 会产生一个包
4.解包 tar -xvf xxx.tar 表示将xxx.tar解压到当前目录下
***可以将解压缩和解包合二为一: tar -zxvf xxx.tar.gz
***解压到指定目录:在最后面加 -C + 路径
另外一种不常见的压缩格式bz2:
1.打包压缩: tar -jcvf xxx.tar.bz2 *.txt
2.解压缩解包: tar -jxvf xxx.tar.bz2
最后一种基本见不到的格式zip:
1.打包压缩: zip myzip * 表示压缩所欲的文件到myzip当中,会产生一个myzip.zip文件
2.解压缩解包: unzip -d ./home myzip.zip
2.7chmod权限修改
u表示文件的拥有者,也就是权限的前三位,g表示文件的同组者,也就是中间的三位,o表示其他人,是最后的三位.
a是all的意思 表示这三者皆是
rwx 含义
r read 表示可读取,对于一个目录,如果没有r权限,那么就意味着不能通过ls查看这个目录的内容。
w write 表示可写入,对于一个目录,如果没有w权限,那么就意味着不能在目录下创建新的文件。
x excute 表示可执行,对于一个目录,如果没有x权限,那么就意味着不能通过cd进入这个目录。
1. ll查看当前文件列表,前面第一位 -表示普通文件,d表示文件夹,l表示软连接,后面每三个字符是一组,表示权限
chmod u=r 123.txt 表示只赋值给123.txt可读权限 chmod u=w 123.txt 表示只赋值给123.txt可写权限
chmod u=rwx 123.txt 表示赋值给123.txt所有权限 u表示文件的拥有者,也就是权限的前三位,g表示文件的同组者,也 就是中间的三位,o表示其他人,是最后的三位
chmod g=r 123.txt chmod g=rwx 123.txt g同组者权限
chmod o=r 123.txt o其他权限
可以合并使用: chmod u=w,g=w,o=w 123.txt
chmod u=,g=,o= 123.txt 表示都没有权限
可以使用数字赋值: eg:r=4,w=2,x=1
chmod 751 123.txt 7表示前三位,5表示中间三位,1表示后三位,即前三位权限是rwx,中间三位是rx,后三位权限是x
chmod 000 123.txt 表示没有任何权限
chmod 777 a 修改a的文件夹权限为所有,chamod 777 a -R 同时也修改a文件夹内的所有文件的权限
2.8超级管理
1.sudo -s 打开超级管理员的身份,即root权限 exit退出 whoami 可以查看当前身份
2.修改密码: passwd
3.ifconfig 查看配置信息和ip
2.9关机重启
1. reboot 立即重启
2. shutdown -r now 立即关机,会给别的用户提醒
3. shutdown -h now 立即关机
4. shutdown -h 20:25 设置关机时间
5. shutdown -h +10 十分钟之后关机
6.取消关机/重启命令: shutdown -c
2.10 vim常用命令
- 任意模式切换到命令模式: esc
- 命令模式到插入模式: 输入i
- 命令模式到末行模式: ctrl + ; w:存盘,wq保存退出,q不存盘直接退出
vim常用命令
命令模式:输入命令,操作vim
插入(编辑)模式:写代码,写入文件
末行模式:保存、退出等
编辑模式:
48.1. i: 进入编辑模式
命令模式:
48.2. yy: 复制从光标所在行开始向下多行 复制多行: 数字+yy
48.3. p: 粘贴, 粘贴多次: 数字+p
48.4. dd(删除、剪切), 剪切或者删除多行:数字 +dd 注意数字后面加空格
48.5. V: 选中多行
48.6. 上下左右: k:上, j:下, l:右 ,h:左 等同于方向键
48.7. x: 从前往后删除一个字母
48.8. X: 从后往前删除一个字母
48.9. u: 撤销 Ctr-r: 反撤销
48.10. shift + >: 往右缩进
48.11. shift + <: 往左缩进
48.12. .:重复上一次操作
48.13. G: 回到最后一行
48.14. gg: 回到第一行 1G
48.15. 18G: 回到指定行
48.16. shift + 4:回到行末
48.17. shift + 6:回到行首
48.18. 搜索: : /1 n:查看下一个搜索到的内容, N:查看上一个搜索到的内容
48.19. 替换: : 末行模式下,将当前文件中的所有abc替换成123 :%s/abc/123/g
末行模式下,将第一行至第10行之间的abc替换成123 :1, 10s/abc/123/g
48.20. ctr+f: 下一页
48.21. ctr+b: 上一页
r: 替换当前字符 r+替换后字符
R: 替换当前行光标后的字符
末行模式:
48.22. :wq, :x: 保存退出 w保存 q退出
3.ssh远程连接与scp拷贝
A.安装ssh服务器 sudo apt-get install openssh-server
B.远程登陆 ssh 用户名@IP
3.1远程登录
远程登陆 ssh 用户名@IP
3.2远程复制文件
scp -r 表示复制文件夹
远程拷贝文件到本地 :
scp -r 目标用户名@目标主机IP地址:/目标文件的绝对路径 /保存到本机的绝对/相对路径
** 拷贝单个文件可以不加 -r参数,拷贝目录必须要加 **
举例:
scp -r [email protected]:/home/kayseen/QQ_dir/ ./mytest/lisi
拷贝命令大全:
本地文件复制到远程: scp 本地文件名 远程用户名称@远程ip:远程文件名
本地目录复制到远程:scp -r 本地目录 远程目录名称@远程ip:远程目录
远程文件复制到本地:scp 远程用户名@远程ip:远程文件名 文件名
远程目录复制到本地:scp -r 远程用户名@远程ip:远程文件名 文件名
在xshell上编辑文件时使用vim编辑器
小结
- scp可以实现Ubuntu远程连接和文件上传和下载
- 在windows系统上远程连接Ubuntu需要安装OpenSSH(xshell)软件
- FileZilla工具通过SFTP协议实现文件上传和下载
4.端口查询命令
1. 查询某个进程的命令
ps -aux|grep uwsgi
2. 查询端口占用
lsof -i:端口号
查看指定的端口号
netstat -tunlp
用于显示tcp,udp的端口和进程等相关情况
3.查看进程树
比如需要获取Gunicorn进程树,可以执行如下命令:
pstree -ap|grep gunicorn