一、linux 命令
命令[命令的参数][命令作用的对象] #这里[]类似python中,里边的内容可有可无
ls -laR .pip
cat /proc/cpuinfo
cat -n /proc/cpuinfo
caomand not found -命令找不到,敲了无效的命令
具体如下:
1、linux常用命令:
1. w/who/whoami/last -查看用户登录情况
2. adduser/passwd/userdel -创建用户 修改密码 删除用户
3. date/cal 查看日期日历
4. write/wall/mesg -发送消息
5. clear 清楚屏幕
6. logout/exit 退出登录
7. man/info/ --help -查看帮助
[...]# man clear
查看clear的源代码
9. history -历史命令-!命令编号-再次执行的命令
-c -消除历史记录
10. reboot -重启系统 -init 6
11. shutdown -关机 -init 0
关机一般等待one minute
shutdown now 现在立刻关机
12. su -switch usr -切换用户
注意:Linux中用户为usr
13、查找
find 找文件
例如:[..]# find / -name "*.html"
从跟(root)目录下 找 文件名后缀为.heml的文件
[..]# find . -name "*.html"
从当前目录下找文件后缀为.html的文件
[..]# find /size +10M
根目录下找文件大于10M的文件(-10小于10M)
grep:查找字符串
2、***符号连接(symbolic象征的 符号的 link)~
***
①硬链接: in 文件名 路径
含义:给磁盘文件增加了新的引用,只要引用数不为0 ,文件就不会消失)
例如:[...]# in hehe /root/code/example03.py
给hehe这个文件做硬链接,将其连接到 /root/code/example03.py 这个目录后边;
②软连接(符号连接): in -s (link 连接 soft 软)
含义:相当于windows下的快捷方式,将长的路径变短
例如:in -s /usr/local/python37/bin/python3 /usr/bin/python3
***2、linux 文件操作相关命令***
1. pwd -print working directory -打印当前工作目录
directory 目录 文件夹
file 文件
2. cd -change directory -改变目录 -后边+相对路径和绝对路径
linux中一般/ 表示我的电脑 /+路径 即表示 绝对路径
但是一般不写绝对路径,内存压力大,代码多乱
补充:
cd 文件名
到该目录下
cd ~
返回最初目录
cd ..
返回到上一级目录
cd -
撤销上一步操作,即返回到之前的工作目录
3. ls -list directory contents -列出目录下的内容
-l (length) 长格式查看
-a(all)查看所有文件 -在linux系统中以点开头的文件和文件夹会死隐藏的
-***R(recursive)递归式***的查看 -遇到文件夹就要递归列出文件夹下的内容
4. cat -concatenate -连接多个文件(查看文件的内容)
concatenate -连接 连锁
5. touch 创建空文件或者修改已有文件的最后访问时间
创建两个文件:
touch test.txt test1.txt
创建文件二:
vim test.txt
7. mkdir -make directory -创建文件夹
-p 如果需要就创建文件夹
mkdir xx 创建文件夹xx
注:一次只能创建一级目录(mkdir xx/yy 则会报错)
2、mkdir -p 递归创建目录,即使上级目录不存在,也会按照目
录层级自动创建目录;
注:mkdir -p xx/yy 一次可以创建多级文件夹,若
xx文件夹不存在,则先创建文件夹xx,再创建在xx文件
夹下创建文件夹yy;
3、mkdir -p {de1,de2}/test
若de1和de2不存在,则先创建de1和de2两个文件夹,然
后分别在里边创建文件夹test;
若de1和de2存在,则直接在两个文件夹内创建文件夹test;
`
8. rm remove -删除
-f (forcible 强制的) -强制删除
-r(recursive) -递归删除
rmdir -remove empty directory -删除空文件夹
10. wget -通过网络获取文件
-例如: wgethttps://www.python.org/ftp.python.3.7.3/python-3.7.tar.xz
下载python源文件
-liru: wgethttp://www.python.org/ftp/python/3.7.3/python-3.7.3.tgz
压缩包有两种格式:xz gz 不同格式的压缩包文件 解压和压缩的命令不同
11. gzip /gunzip -文件压缩/解文件(gz/tgz)
-例如: gunzip python-3.7.3.tgz
12. xz -文件压缩/解文件(xz)
-z 压缩
-d 解压
例如: xz -d python3.7.3.xz
13. tar -archive -文件归档/解归档
-xvf -解归档(将一个文件拆成多个文件)
-例如:tar -xvf python-3.7.3.tar
-cvf -创建归档文件(将多个文件合并成一个文件)
14. wc- word count -查看文件行数、单词数、字符数
-l (line) -查看行数
-w (word)查看单词数
-c (character 性格、字符)-查看字符数
15. sort -文件排序
-r (rverse 翻转)降序(默认是从小到大-升序)
16. uniq -unique -文件去重(相邻相同的内容会被过滤掉)
17. head/tail -查看文件开头/结尾的部分
18. more/less -分页查看文件
例如: cat -n taobao.html | more 查看文件里边的内容,加more,路径更深一层
19.diff -different -比较文件的差别
20. 拷贝文件 cp(copy)
拷贝文件夹 cp -r 原文件间名 目标文件夹名/(cp后重命名)
补充: cp 文件名 (目的地)目录/ 新文件名(重新命名可有可无)
[....] # cp hehe code/hali
含义为:将文件夹hehe拷贝到code下,并且重命名为hali
-r recursive 循环的 ,递归的
22. 移动文件 -mv move 原文件 目标文件 (同一个路径下移动相当于重命名操作)
移动后原来的没有了,到了新的地方,cp就会产生新的和旧的
22 / 表示前一级的里边
如:hello/hello1/hello2 表示 hello文件夹里边有 hello1
hello1文件夹里又有hello2
***3、快捷补充***
|-管道 将多个进程连接起来(把前一个命令的输出作为下一个命令的输入)
>-输出重定向
>>-追加输出重定向
2>-错误输出重定向
2>>- 错误追加输出重定向
ctrl +D 结束输入
ctrl+C 中断一个正在执行的命令
ctrl+W 删除命令中的一块
ctrl+A 光标到行首
ctrl+E 光标到行尾
```go
4、简单应用举例:
[root@izhp32b2fxgjiz6je7nwcZ ~]# ls
列出当前目录下的内容
[root@izhp32b2fxgjiz6je7nwcZ ~]# mkdir -p hello/hello2
创建文件夹hello ,并在hello内创建hello2
[root@izhp32b2fxgjiz6je7nwcZ ~]# cd hello
改变目录至hello ,就是进入到文件夹hello 下
[root@izhp32b2fxgjiz6je7nwcZ ~]# mv goodbye/ hello/hello2
移动文件夹goodbye到hello内的hello2文件夹
三、linux系统下的软件安装:
1.、通过包管理工具
yum -yellowdog undate modified 黄狗更新器
应用实例:
-yum search nginx 从磨人的仓库中搜索有没有指定的软件
-yum install -y nginx 安装软件
-yum remove nginx 卸载软件
-yum info nginx 查看软件相关信息
-yum list installed 查看已经安装的软件
-yum update 更新所有软件
-yum update nginx 更新软件
``
rpm -redhat package manage 红帽版本下 使用
apt ubantu下使用安装软件或包
优点:目标软件依赖的其他软件都会被一起下载
注意:不懂那个名词或命令的全称或意义,可同过man等帮
助命令查看 如:[…]# man yum 返回的是yum的底层设计
1:包管理工具安装软件举例
① [.....]# yum search Nginx 搜索Nginx服务器是否存在
返回:Nginx.x86_64 : A high performance web server and
reverse proxy sever
② [.....]# yum install Nginx 下载Nginx 服务器 [.....]# yum
install -y Nginx
下载的过程中凡是遇到询问是否都回答yes
③ [.....]#yum info Nginx 查看软件的信息
④ [.....]#Nginx 回车 即:Nginx下载成功后启动起来
启动后会返回一个Nginx 的界面
⑤ [.....]# Nginx -s stop 停止访问Nginx
⑥ [.....]# yum remove Nginx 删除Nginx 删除后再启动Nginx
([.....]#Nginx 回车) 返回的是: No such file or directory
⑦[.....]# yum list installed 查看已经安装了的所有软件 [.....]#
***yum list installed | grep Nginx 查看具体的软件Nginx***
(通过管道加上具体查看的内容)
2、源代码构件安装
-gcc /makegcc c语言编译器 (g 开源协议 cc )
源代码构件安装时、目标软件的依赖的内容不会主动补齐,需要提前手动下载
***三:Nginx应用***
为使云服务器成为web服务器(全世界的人都可以访问)只需
下载一个软件即可实现,软件为:
1、Nginx -web服务器(HTTP服务器)/反向代理服务器
最好的,体积小,功能强大,俄国人发明的
2、Apache -web服务器 美国人发明的,性能不如
激活nginx
[.....]# nginx enter
停止nginx
[.....]# nginx -s stop
(-s signal 发送信号的简写)
卸载nginx前需停止nginx
四:Vim的相关知识:
1、作用:
利用Vim编辑修改,Vim使用需要提前设置一些格式,比如 缩进,格式,行号,坐标尺等;
编辑格式前: 需创建一个隐藏文件(touch)-名字必须为 .vimrc,即 ***touch .vimrc***
ls -a(list directory contents) 查看当前目录下的 ***隐藏文件***
然后进入该文件: Vim .vimrc
后进行编辑格式命令
set nu 行号
syntax on高亮语法 字体颜色
syntax Off 关闭高亮语法
set ts=4(tab space)
set expandtab 空格键缩进
set autoindent 自动缩进
set ruler 光标尺
set nohls 搜索到的内容不会高亮语法显示
2、含义
vim(Linux下编辑器,尤其可编辑程序),
命令模式: 按键代表命令 i或者a 进入编辑模式(页面左下角显示insert)
:或者/ 进入末行模式
编辑模式: 键入内容 ESC 退出编辑模式至命令模式
末行模式: 搜索/配置/执行系统命令 enter------> 进入命令模式
补充:
Vim +文件名 进入Vim环境
文件存在,进入文件没若不存在,则新建该文件
注意: 这样进入的是命令模式,要想进入Vim的编辑(插入)模式,
按i进入,退出编辑模式esc,回到命令模式,:q!强制退出Vim
3、vim 操作命令补充
***~映射快捷键***:
~ map gg9999dd 光标移到行首,删除99999行
~inoremap -main 表示 if __name__ == '__main__':
***~多文件操作***
vim一次打开多个窗口
[...]# vim hehe.py hehe1.py hehe2.py
[...] # vim -d hehe.py hehe1.py (d distinguish表示区分)
vim直接一次打开两个窗口,并比较他们有何区别
下述命令都在末行模式进行:
~ :ls 查看所有打开的文件
~ : b 数字 指定显示那个文件
~ :vs 垂直拆分 (vertical 垂直的,拆分split)
~ :sp 水平拆分
~ : 两下crtl +w 光标左右移动(切换窗口)
~光标在那个窗口,命令作用于那个窗口:
~ :q 退出 (quit)
~ :qa 全部(窗口)退出 (quit all)
~ :wqa 全部保存退出
***4 vim 使用的问题:***
①: 在编辑某个文件时突然服务器异常,系统会自动将未编辑完的文件命令保存,再次进入时会提示:
R恢复 Delete 删除 Abort 放弃
②不小心按 F1 帮助界面
:p 退出
③ 将常用的一些长命令按钮,命简短别名
[..]# alias ll ="ls -l"
不想要这个别名,
[..]# unalias ll ="ls -l" 这个别名就不存在了
***
5 、宏操作***
录制宏:
命令模式下:按q a(a时寄存器的名字) 进入录制(recording录制中)
编辑模式下 操作录制的内容
按q结束录制(宏存于寄存器a中)
播放4次宏 4@a
6、 vim 查找或替换
查找~
-? 或者-/ -/idx 查找idx(支持正则表达式)
-n/N 正向搜索/反向搜索
命令模式下输入:
?从下往上找
/ 从下往下找
例如:/0 找0
替换:末行模式下 先搜索(范围)再替换
例如~:1,$(第一行到最后一行)s(表示替换)/0(找0 这里还可以写正则表达式)/1000(0替换为1000)
-:1,$s/idx/index/cige
~c confirm 确认是否替换
~g global 全局(一行出现多处匹配全部找出)
~i ignore case 忽略大小写
~e error 忽略错误