Linux相关知识
来源:互联网 发布:sql存储过程返回值 编辑:程序博客网 时间:2024/06/05 22:53
终端编辑工具:vi vim emacs等
基本介绍;vim 是vi的扩展,被誉为终端编辑器之神
软件安装:yum install -y vim
工作模式:
1.正常模式
1.主要用来浏览或修改文本内容
2.使用vim打开文件的默认模式
3.在任意模式下按ESC按键即可进入该模式
2.编辑模式
主要用来想文本添加内容,也叫插入模式
正常模式下输入以下字符都可进入该模式
i:在光标所在字符前开始输入文字
I:在行首指第一个非空白字符处开始插入文字
a;在光标所在字符后开始插入文字
A:在行尾开始输入文字
o:在光标所在行的下面单独开一新行来输入文字
O:在光标所在行的上面单独开一新行输入文字
s:删除光标所在的字符并进行输入模式
S:删除光标所在行并进入插入模式
3.命令模式
主要用来管理文件或设置VIM如保存,退出、放弃等,’而不是修改文件内容
在正常模式下,输入‘:’即可进入命令模式,由于操作都是在一行完成,因此也叫单行模式
保存文件:w
退出文件:q
vim使用技巧,可以大大提高开发效率
1、打开文件
vim filename 打开文件,并将光标定位到文件开头,1.若文件已存在,则直接打开2、若文件不存在名字新建文件
vim filename +n 打开文件,并将光标定位到文件第n行,
vim filename +打开文件,并将光标定位到文件末尾
2.光标定位
gg:首行
GG:尾行
ngg:第n行
-:行首
^:首个非空字符
$:行尾
k:向上
j:向下
h:向左
l:向右
3.复制粘贴
yy:复制光标所在行
dd:剪切光标所在行
p:粘贴缓冲区的内容
nyy:复制光标开始的n行
ndd:剪切光标开始的n行
4.操作回退
u:撤销刚才的操作
ctrl+r反撤销
5.查找替换
命令模式下操作
?查找内容,然后敲回车即可查找想管内容,n向前翻,N想后翻
:%s/查找内容/替换内容[g]将查找到的内容替换,g表示全局替换,[]表示可选
:起始行,结束行s/查找内容/替换内容[g],替换从起始行到结束行查找到的内容
6、基本配置
:set nu 设置行号
:set nonu 取消行号
:set tabstop=4 设置tab键为4个空格
:set fileeccodings=utf-8.gkb 设置字符集
7、配置文件
上面第6步在命令模式下的配置是单次的,退出vim后配置就无效了
要想一次配置,自动生效可以创建专门的配置文件
在用户目录下,创建vimrc文件,这个文件就是vim配置文件
当该用户登录时就会生效,可以将vim相关的配置写入即可
要想是配置文件生效可以重启系统,也可使用命令source -/.vimrc
说明:文件未保存就关闭vim时,会产生临时文件,下次打开时会提示
文件内容查看
cat:作用:一次性顺序显示文件的所有内容 cat file
tac作用:一次性倒序显示文件的所有内容 tac file
head作用:显示文件开头的若干行内容 head -n file n为要显示的行数
tail作用:显示文件结尾的若干行内容 tail -n file
more作用:分页显示其他命令知道的结果 其他命令|more cat file|more
说明:1、当内容显示一屏停止2.空格向下翻页3.回车键向下显示一行4.q键退出
less作用:分页显示其他命令执行的结果 cat file|less,,说明和more差不多
文件整体操作
touch:作用:创建普通文件 touch file
cp作用:拷贝文件 cp 源文件 目标文件
rm作用:删除文件 rm文件
mv作用:移动文件, mv源文件 目标文件
mkdir作用:创建目录文件 mkdir dir
rmdir作用:删除空的目录文件
说明:1、删除文件时会有提示,若不想提示可以添加参数-f
2、删除或拷贝目录时需要添加参数-r
ln作用:创建链接文件 ln[-s] 源文件 目标文件
硬连接:不加-s选项时,简单理解为一个文件有多个名字
1.不占实际空间2.不允许给目录创建3.只能跨文件系统
软连接:添加-s选项时,简单理解为一个文件的内容是另一个文件的路径
1,类似Windows快捷方式2,可以对目录创建3.可以跨文件系统
文件搜索定位
grep作用:通用规则表达式分享程序,是一种强大的文本搜索工具,他能使用正则表达式搜索文本,并吧匹配的行打引出来 grep [选项] pattern [文件ming]
选项:-i字母不区分大小写 -n显示行号
说明:pattern为索要匹配的正则表达式待定,要用好grep这个工具其实就是要用好正则表达式
实例grep ftp /etc/passwd
在/etc/passwd文件下查找包含ftp字符的行
grep 'test' d*
显示所有以d开头文件中包含test的行
ls/bin |grep '^m'
通过管道过滤ls/bin输出的内容,只显示以m开头的行
grep -i 'hello world' menu.h main.c
显示在menu,h和main,c文件中匹配'hello world的行忽略大小写
find 作用:最常见的和最强大的查找命令,你可以用它找到任何你想找的文件, find [目录] [条件]【动作】
目录:索要搜索的目录以及所有子目录,默认当前目录
条件:索要搜索的文件的特征
动作:对搜索的结果进行特定的处理
选项:-name 指定文件名可以通过*模糊查找 -type指定文件类型, -size指定文件大小 -user指定用户 -group指定组
-mtime/atime/ctime:指定修改/访问、创建时间,单位为天+表示几天前-表示几天后
-amin.mmin/cmin:功能同上单位为分钟
whereis:作用:只能用于程序名的搜索
whereis grep
grep :/bin/grep /usr/share/man/man1/gerp.1.gz
名称 二进制文件路径 帮助文档路径
which作用:在$PATH变量指定的路径中搜索某个系统命令的位置并且返回第一个搜索结果,也就是说可以看某个系统命令是否存在,以及执行的到底是什么
PATH:说明:环境变量,打印echo $PATH
导出:1.一次性的设置export PATH=$PATH:dir1[:dir2]2、永久性的设置,所有用户有效需要重启生效或使用source命令,将方式1的导出操作添加到文件/etc/profile的末尾3、永久性的设置,只针对一个用户,需要重启生效优先级高于2将方式1的导出操作添加到-/.bashrc的末尾
文件压缩解压
gzip作用:压缩文件,只能说单个文件,不能说多个也不能是目录,gzip file执行命令会生成file.gz删除原来的file
gunzip作用:解压使用gzip压缩生成的文件,gunzip file.gz 解压文件生成File删除压缩的文件
bzip2/bunzip2说明:1.用法与gzip/gunzip相同只是多了几个参数,压缩或解压后保留源文件
tar说明gzip/gunzip/bzip2/bunzip2命令指适应于单个文件而tar则可将多个文件或目录进行压缩打包
-c压缩
-x解压
-z使用gzip
-j使用bzip2
-f指定处理文件
-v显示压缩解压过程的详细信息
文件权限管理
chmod作用:修改文件的权限
说明:ls -l中的第一列就是权限的相关信息下面对其中的ll个字符进行说明1:文件类型2、3、4:文件所有这的读写执行权限-表示不具有该权限55、6、7文件所有这所属组的读写执行权限8、9、10:其他用户的读写执行权限11:表示启用了selinux空表示没有开启
r可读
w:可写
x:可执行在Linux系统中没有后缀的概念,文件多类型即i权限不以后缀区分
+添加权限
-去掉权限
=设置权限
u用户
g组
o其他
数值表示:Linux中的权限以一组数据来表示,所有者、组、其他的权限分别以3位二进制表示,然后再将起写成8进制就OK了755=》 111 101 101结果就是:所有者拥有读写执行权限同组拥有读、执行权限,其他拥有读、执行权限
umask作用:查看或设置umask的值,用来创建文件的默认权限
说明:1.若后面没有根值表示查看后面有值表示设置2、创建的普通文件默认没有执行权限
实例:umask 0022 =>000 010 010
创建的目录文件权限rwx r-x r-x
创建的普通文件权限rw- r-- r- -
用户及用户组
whoami作用:查看当前登录的用户
/etc/passwd说明:该文件存放了系统中所有的用户,每一行的每一列如下
用户名:密码:描述:用户/uid:组ID/GID:用户家目录:shell
useradd作用:添加用户
选项:
-d指定用户家目录
-u指定用户ID必须大于500
-s指定用户执行的shell若用户已经创建可以使用一下方式禁止登录
chsh用户名-s/sbin/nologin
userdel作用:删除指定用户
说明:彻底删除用户还需要'/home/用户名‘目录和’/var/mail/用户名‘目录’
passwd作用:设置用户密码
说明:修改指定用户的密码,若不制定则修改当前登录的用户密码2、查看所有用户密码/etc/shadow
su作用:切换用户
sudo说明:1.若只想简单 的执行一个超级用户的命令,不想切换用户2.格式实在原来命令的前面加上sudo即可
特殊标识:#超级用户$普通用户~表示用户家目录
/etc/group查看系统中所有的组
groupadd添加用户组
groupdel删除用户组
gpasswd想用户组添加或删除用户-a将制定的用户加入指定组-d将制定的用户从制定的=组删除
chgrp设置文件所属的组 chgrp 组名 文件名
chown设置文件的所有者
网络配置文件/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=00:IC:42:51:74:18DDR=
TYPE=Ethernet
UUID=b3de21de-5cc9-472d-ac0d-3e8198988ddd
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPOROTO=dhcp
DNS1=8.8.8.8
vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 860336 24400 42564 0 0 73 6 44 28 1 2 96 1 0
说明:
procs进程:r表示运行队列就是说多少个进程真的分配到CPUb表示阻塞的进程数
memory内存
swpd虚拟内存已使用的大小如果大于0表示你的机器物理内存不足了
free空闲的物理内存的大小
buff用来存储目录里面有什莫内容权限等的缓存
cache直接用来记忆我们打开的文件,给文件做缓冲
swap交换
si每秒从磁盘读入虚拟内存的大小
so每秒虚拟内存写入磁盘的大小
io块设备
bi块设备每秒接收的快数量
bo块设备每秒发送的快数量
system系统
in每秒CPU的中断次数包括时间中断
cs每秒上下文切换次数
w作用:当前系统在干什么
结果:
10:37:55 up 20 min, 2 users, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 - 10:19 18:07 0.21s 0.21s -bash
root pts/0 192.168.1.11 10:33 1.00s 0.64s 0.45s w
top作用:1、w的详细显示,每3秒刷新一次2、shift+m可以安找所占内存排序3、q退出
free -h查看内存数据
total used free shared buffers cached
Mem: 996M 156M 840M 204K 23M 41M
-/+ buffers/cache: 90M 905M
Swap: 2.0G 0B 2.0G
ps查看进程
选项:a显示控制终端的所有进程u显示用户信息x显示没有控制终端的进程 ps aux
kill杀死一个进程-9强制结束 kill -9 PID
Yum及RPM安装
Yum安装软件
基本说明:1、yum相当于Windows上面的360的软件中心,安桌的应用商店2、yum 是redhat系列发型版的软件安装命令,debian系列用的是apt-get3、yum安装软件的来源的存在一个地方,这个地方就叫做软件仓库4、yum源的配置文件在/etc/yum/repos.d/这个目录下面
更换yum源
进入目录cd /etc/yum.repos.d
备份文件mv CentOS-Base.repo CentOS-Base.repo.bak
下载文件curl -O http://mirrors.163.com/.help/CentOS6-Base-163.repo
修改名称mv CentOS-Base-163.repo CentOS-Base.repo
清除缓存yum clean all
生成缓存yum makecache
常用操作
清空所有缓存clean all
重新生成包信息缓存makecache
安装制定软件install
安装一组软件groupinstall
更新指定软件undate
卸载制定软件remove
搜索制定软件search
显示所有软件list
常用选项
默认确定操作-y
只下载不安装--downloadonly
指定下载目录- -downloaddir
RPM安装软件
说明1、使用此方式安装的软件大多有依赖关系问题,通常一个软件需要依赖几个包
实例:安装VIM
下载vim:yum install vim -y - -downloadonly - - downloaddir
安装vim:
rpm -ivh vim-filesystem-7.4.629-5.e16.x86_64.rpm
rpm -ivh vim-common-7.4.629-5.e16.x86.rpm
rpm -ivh vim-enhanced-7.4.629-5.e16.x86_64.rpm
源码安装软件
实例:安装Apache
1下载c编译器,用来编译c语言编写的源代码yum install -y gcc,gcc -v查看版本
2、下载Apache源码,curl -O 去Apache官网得到压缩包的链接
3解压下载的压缩包
4进入解压后的文件夹cd httpd-2.2.32
5编译前的配置./configure - - prefix=/usr/local/apache2
配置选项-h查看帮助- -prefix指定安装目录
6编译源代码make
7安装make install
8控制Apache软件
控制命令PREFIX/bin/apachect1
控制操作start|stop
9设置防火墙
service iptables status查看防火墙状态
Service iptables start|stop
- Linux 硬盘相关知识
- Linux PS1相关知识
- Linux inode相关知识
- Linux库相关知识
- linux tc 相关知识
- linux cpufeq相关知识
- linux 相关知识总结
- linux 相关知识总结
- Linux 相关知识
- Linux相关知识总结
- linux swappiness相关知识
- linux cpufeq相关知识
- Linux mutex相关知识
- linux相关知识
- Linux相关知识
- 嵌入式linux相关知识
- linux中断相关知识
- Linux Inode相关知识
- select2 使用记录 (3.5.1版本)
- Python实现车辆租赁管理软件
- 线程池Executors.newFixedThreadPool
- Tomcat 本地部署 【404】错误解决
- 搭建vue.js环境
- Linux相关知识
- 实现短信验证码5分钟有效时间
- tensorflow: interrupted by signal 9: SIGKILL
- JS之闭包总结学习
- 剑指offer(9)—变态跳台阶
- IDEA:从安装到使用步骤记录
- 经典排序算法
- 区块链原理学习-区块链结构
- 网络编程(UDP)