**
LINUX
**
1.定义
简单的说,Linux是Unix克隆(Unix clone)或Unix风格(Unix alike)的操作系统(OS),
在原代码级上兼容绝大部分Unix标准(指的是IEEEPOSIX,System V,BSD),
是一个支持多用户, 多进程,多线程,实时性较好的功能
2.文件系统
在linux下,我们看到的是文件夹(目录),我们看不到驱动器盘符(windows系统可以看到)
3.linux主要目录速查表
/:根目录
/bin、/usr/bin:可执行二进制文件的目录,如常见命令ls,tar,mv,cat
/boot:放置linux系统启动时用到的一些文件,如linux的内核文件:/boot/vmlinuz,系统引导器: /boot/grub
/dev:存放linux系统下的设备文件,访问该目录下的某个文件,相当于访问某个设备。常用的是挂载光驱 mount /dev/cdrom/mnt
/etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有,如下
/ect/inittab(可以设置运行级别)
/ect/fstab(负责配置linux开机时自动挂载的分区)
/ect/init.d(各种服务器和程序的二进制文件存放目录)
/ect/X11(X11也叫做X Window系统,是图形化窗口管理系统 )
/ect/sysconfi(终极服务程序)
/home:系统默认的用户家目录
/lib、/usr/lib、/usr/local/lib:系统使用的函数库的目录
/lost+fount:系统产生错误是, 会讲一些遗失的段片放置此目录
/mnt:/media:光盘默认挂载点
/opt:给主机安装软件时所摆放的目录
/proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放在内存中,所以不占用磁盘空间
/root:系统管理员root的家目录
/sbin:放置系统管理员(root)可执行命令,如fdisk、shudown、mount
/tmp:一般用户或者正在执行的程序临时存放文件的目录
/srv:服务启动后需要访问的数据目录。如www服务需要访问的网页数据存放在/srv/www
/usr:应用程序存放目录
/usr/bin:存放应用程序
/usr/share:存放共享程序
/usr/lib:存放不能直接运行的,却是许多程序运行所必需的一些函数库文件
/usr/local:存放软件升级包
/usr/share/doc:系统说明文件存放目录
/usr/share/man:程序说明文件存放目录
/var:放置系统执行过程中经常变化的文件
/var/log:随时更改的日志文件
/var/spool/mail:邮件存放的目录
/var/run:程序或者服务启动后,其PID存放在该目录下
4.常用的LINUX命令的基本使用
(1)常见linux命令-->熟记
ls(查看当前文件夹的内容)
格式:ls
参数:
-a:显示所有文件,包括隐藏文件
-l:显示文件详细信息
-h:配合-l一起使用,显示文件大
通配符搭配使用:
* (文件所有字符)
ls te*(查找以te开头的文件)
ls *html(查找结尾为html的文件)
?(代表文件中的任意一个字符)
ls ?.c(只找第一个字符任意,后缀为.c的文件)
ls a.?(只找3个字符,前2个为a.,最后一个字符任意)
[abc]匹配a、b、c任意一个
[a-f]匹配a到f范围内的任意一个字符
ls [a-f]*查找a到f任意一个字符开头的所有文件
ls a-f 查找a-fzhege 文件
\ 反义符号
ls \*a 查找文件为*a的文件
pwd(查看当前所在文件夹(路径))
cd(切换文件夹)
cd (回家)
cd ~(回家)
cd .(回到当前目录)
cd ..(回到上级目录)
cd -(可进入上次所在目录)
touch(创建空白文件)
后缀名没有严格后缀,文件名可以为任意文件名
mkdir(创建目录)
mkdir a (创建a目录)
mkdir a/b/c -p(创建a/b/c递归目录)
mkdir a c(创建a 和 b 两个目录)
rm (删除指定文件名)
rm a(删除a目录,此时a要存在且是空文件)
rm a -f (删除a目录,此时a可以不存在)
rm a -r(删除a目录,此时a可以有子文件在)
clear(清屏)(快捷键ctrl+l)
cp(复制)
格式: cp 被复制名 复制后命名(也可设置路径)
常用选项:
-a(保持文件原有属性)
-f(覆盖已存在文件不给出提示)
-i(覆盖已存在文件给出提示)
-r (递归复制文件)
-v(显示复制进度)
mv(移动、重命名)
格式: mv 1.txt 2.txt(重命名)
mv 1.txt 路径(移动)
常用选项:
-f(如有覆盖不给出提示)
-i(如有覆盖,会询问是否重写)
-v(显示移动进度)
chmod(设置权限)
备注:如果想给递归所有目录加上相同权限,需要加上参数“-R”
字母法:chmod u/g/o/a +/-/= rwx 文件
u :user
g : group
o : other
a : all
+ :增加权限
- :撤销权限
= :设定权限
r :read(数字“4”)
w : write(数字“2”)
x : excute(可执行)(数字“1”))
数字法:chmod u-7,g=5,0=4 文件名
find(查找文件名)
常见用法:
find . -name test.sh(查找当前目录下所有名为test.sh的文件)
find . -name "*.sh"(查找档期目录下所有后缀为.sh结尾的文件)
grep(查找文件里的内容)
格式:grep [选项] ’搜索内容‘ 文件名
常见选项:
-v(取反)
-n(匹配行和行号)
-i(忽略大小写)
常见正则表达式
^a(行首,搜寻以a开头的行,grep "^a" 1.txt)
ke$(行尾,搜寻以ke结尾的行,grep "ke$" q.txt)
[abc](匹配a、b、c任意一个)
重定向(将左边执行的结果给到右边指定的文件))
ls > test.txt(如果test.txt不存在,则新建,如果存在,则覆盖)
ls >> test.txt(如果test.txt不存在,则新建,如果存在,则追加)
软连接/硬链接(软连接相当于快捷键,硬链接相当于复制)
(1)软连接:ln -s 源文件 链接文件
(2)硬链接:ln 源文件 链接文件
备注:如果软链接文件和源文件不在同一个目录之下,源文件要使用绝对路径
more(分页)
格式:more test.txt
tar(打包,解包)
打包:tar cf a.tar *.txt(打包所有.txt文件为a.tar)
解包:tar xf a.tar -C atar(将a.tar解压到atar)
常见参数
-c(创建打包文件)
-v(显示进度)
-f(指定文档名字)
-t (列出档案中包含的文件)
-x (解开档案文件)
gzip(压缩,解压)(压缩或解压tar打包好的文件)
格式: gzip [选项] 被压缩文件
选项:
-d(解压)
-r(压缩)
一步打包压缩
tar cfg a.tar.gz *txt
tar xfg a.tar.gz -C 路径
zip和unzip(压缩或者解压.zip文件)
zip -r xxx.zip xxx文件
unzip xxx.zip
cat(查看或者合并文件内容)
cat test.txt(查看test文件)
cat 1.txt 2.txt(合并1和2两个文件)
which(查看命令位置)
which 文件名
su(切换用户)
su admin
su root
shudown(给出用户提示,一般用于系统关机)
shutdown -r now:重新启动操作系统,shutdown会给别的用户提示
shutdown -h now:立刻关机
shutdown -h 20:25:系统在今天20:25会关机
shutdown -h +10:系统在过十分钟会自动关机
reboot(重新启动操作系统)
who(查看登录用户)
who -q(显示当前用户登录的数量)
who -u (显示列标题(详情))
exit(退出登录用户)
如果是图形界面,退出当前终端
如果是使用ssh远程登录,退出登录账户
如果是切换后的登录用户,退出则返回上一个登录账户
passwd(设置密码)
passwd zhangsan
adduser(增加用户)
adduser zhangsan
userdel(删除用户)
userdel zhangsan
管道(将左边执行的结果一指定方式输出)
格式:ls |more(一般以more形式输出)
vim(内置编辑器)
①插入模式
i:插入光标前一个字母
I:插入行首
a:插入光标后一个字母
A:插入行末
o:向下新开一行,插入行首
O:向上新开一行,插入行首
②命令模式
Esc:从插入模式或者末行模式进入命令模式
u:一步步撤销
ctrl+r:反撤销
③末行模式
可以保存(:w)、
可以保存并退出(:wq)
可以不保存强制退出(:q!)
set nu(显示行号)
(2)自动补全-->tab键
5.linux终端命令格式
(1)终端命令格式
command [opotions][parameter]
命令名 【选项(可省略)】【参数】
(2)查阅命令帮助信息
①command --help
②man command(man是manual的缩写,是LINUX提供的一个手册,包含了绝大部分的命令、函数的详细使用说明)
enter键:显示手册页的一行
b键:回滚一屏
f键:前滚一屏
q键:退出
/word:搜索word字符串
6.linux查看日志
tail xxx.log
tail 100f xxx.log 实时监控100行日志
tail -n 10 xxx.log 查看最后10行日志
head -n 10 xxx.log 查看头10行日志
7.linux查看进程,杀掉进程,启动进程
查看进程 ps -ef|fgrep 进程名
杀掉进程 kll -9 进程号
启动进程 cd到bin目录,然后./startup.sh
8.linux清除redis缓存
①先确保redis进程存活 ps -ef|grep redis
②执行./redis-cli或者./redis-cli -h 127.0.0.1 -p 6379
③执行:dbsize命令
④执行:flushall命令
⑤使用keys * 进行验证是否为空
⑥执行:exit