第一章:Linux各级目录的介绍
第二章:Linux常用命令
1.命令格式与目录处理命令ls
命令 【-选项】 【参数】
简化选项:-a = 完整选项:--all
英文原意:list 命令名称:ls 命令所在路径:/bin/ls(所有用户)
简化选项:
-a(all显示所有文件,包括隐藏文件(意思是你没事最好别碰它))-l(long详细信息显示) -d(directionary查看目录属性)
-h(human人性化的显示内存信息) -i(可以显示进程号)
- -rw-r--r--一共有10个字符:第一个字符:- 代表文件 ,d代表目录 , l 代表软连接然后每三个三个的代表:u所有者,g所属组,o其他人,的操作权限。r可读,w可写,x可执行!
- 接下来的数字30:代表引用的次数
- 第一个root和第二个root代表:所属者和所属组
- 然后是内存(-h是人性化显示),最后一次修改时间,目录名称
2.目录处理命令
命令:mkdir(make directories(目录))
功能:创建新目录,-p可以递归创建,可以一次创建多个目录
mkdir -p .... .... ...
命令:cd(change directory)
功能:切换目录
cd .. 切换到上一级 cd ....
命令:pwd(print working directory)
功能:显示当前绝对路径
命令:rmdir(remove empty directory)
功能:删除空目录
命令:cp(copy)
功能:复制文件或者目录,本身是复制文件,-r递归,-p连属性复制,-d复制链接的源头,一般直接-a因为代表-pdr。
命令:mv(move)
功能:剪切文件,改名称(从当前移动到当前即可,名称进行变换)
mv ... ....
命令:rm(remove)
功能:删除文件,-r可以删除目录,-f(force)忽略警告强制删除
3.文件处理命令
命令:touch
功能:创建空文件
命令:cat
功能:直接显示文件内容,-n显示行号(tac是逆向显示!)
命令:more(不能向上翻页)
功能:分页显示文件内容,向下翻页空格/f,换行Enter,退出q/Q,:f显示行和和文件
命令:less(可以向上翻页,支持关键字查找)
功能:分页显示文件内容,查找下一个关键字n,向上翻页PgUp
命令:head
功能:指定前几行,-n指定行数,默认是10行够用了。
head -n 7 ....
命令:tail
功能:指定后几行,-n指定行数,-f动态指定末尾内容
4.链接命令
命令:ln(link)
功能:生成链接文件,-s生成软连接,正常生成硬链接
软连接特征:(类似windows的快捷方式)
1.lrwxrwxrwx文件权限
2.文件大小很小,只是索引到真实数据,而不存放数据。
硬链接特征:(只能创建文件,而不能对目录作用)
1.cp -p + 同步更新(通过i节点识别,在同一个节点上)
2.两个文件大小相同,且一个失效另一个正常存在。
3.硬链接不能跨分区创建,而软连接可以。
4.硬链接不能对目录使用,而软连接可以。
5.权限管理命令
命令:chmod(change the permission(许可) mode of a file)
功能:改变文件或者目录权限,-R递归修改,r---4,w----2,x-----1,
语法:chmod 【{ugoa}{+-=}(加入,减去,赋予){rwx}】 .... 和 【mode=421(代表三个对象ugo)】a是所有 .....
示范:chmod g+w ....基于字母的 chmod -R 777 ....基于数字的
532 = r-x-wx-w-
这张表要好好看看!
6.其他权限管理命令
命令:chown(change file ownership)(只能root)
功能:改变文件或者目录的所有者,chown 【用户】【文件或者目录】
命令:chgrp(change file group ownership)
功能:改变文件或者目录的所属组,chgrp 【用户组】【文件或目录】
一般可以把所属者和所属组一次性改掉:chown root:tgroup /project/(改变所有者和所属组)
命令:umask(user mask)
功能:可以显示/设置目录的缺省权限,-S以字符的形式表示,文件默认没有可执行权限,umask 023改变默认
7.文件搜索命令find
命令:find(实时查找,不需要更新文件资料库)
描述:find 【搜索范围】【匹配条件】
find /etc -name init(*init,init???)*匹配任意个字符, ?匹配一个字符,iname可匹配大小写
find /etc -size +204800(+n大于,-n小于,n等于)100M=102400KB=204800块 每块=512k
find /etc -user/-group ... 根据用户或者所属组查找
find /etc -amin(访问时间)/-cmin(文件属性)/mmin(文件内容) -5(5分钟前)
-a两个条件同时满足,-o先个条件满足一个,-exec/-ok 命令 {} \;对搜索结果执行操作
-type根据文件类型查找(f文件,d目录,l软连接文件)
find /etc -name init* -a -type f -exec ls -l {} \;
-inum根据节点查找 可以查询硬链接,可以根据ls -i找到节点,然后对-inum的搜索结果在exec删除!
find . -inum 35342 -exec rm {} \;
8.其他搜索命令
命令:locate
功能:在文件资料库里查找文件,速度快,locate inittab,-i也是不区分大小写。
updatedb更新文件资料库locate,tmp的文件更新不过去
命令:which
功能:搜索命令所在目录及别名信息,which ls
命令:whereis
功能:搜索命令所在目录及帮助文档路径,whereis ls
命令:grep
功能:在文件中查找字符串匹配的行并输出,-i不区分大小写,-v排除指定字符串(^#去除以注释开头)
9.帮助命令
命令:man(manual)(命令和配置文件,会进入到文件,全部信息)
功能:获得帮助信息,man ls(查看ls命令的帮助信息),man services(查看配置文件帮助信息)
命令:ls --help(系统命令,直接打印出来,主要信息)
功能:查看命令的帮助信息。
命令:help(shall内置命令,直接打印出来,主要信息)
功能:获得shell内置命令的帮助信息。
10.用户管理命令
命令:useradd
功能:添加用户,uaseradd name
命令:passwd(只能root/sudo修改)
功能:设置用户密码,passwd zhu
命令:who
功能:查看登录用户信息,tty本地终端,pts远程终端
命令:w(查看登录用户详细信息)
命令:uptime(查看用户和系统负载情况)
11.压缩解压命令
命令:gzip(针对文件)(压缩,不保留原文件)
功能:压缩文件,压缩为gz
命令:gunzip(针对文件)(解压)
功能:解压.gz的文件
命令:tar
功能:打包目录,(-c打包,-v显示详细信息,-f立即要被处理的文件名,-z/j基于gzip/bzip2格式,-t查询)。
压缩为.tar.gz:tar -czvf japan.tar.gz japan
功能:解压缩,(-x解包),tar -xzvf japan.tar.gz (-C指定解压的目录)
命令:zip(win,Linux通用)
功能:压缩文件或者目录,-r压缩目录(递归压缩),压缩后为.zip。 zip buduo.zip buduo
功能:解压.zip的文件,unzip test.zip
命令:bzip2(对gzip改进,可以保留原文件,压缩比例很高)
功能:-k可以保留原文件,压缩后文件格式.bz2,bzip2 -k boduo,
打包压缩:tar -cjvf japan.tar.bz2 japan
打包解压:tar -xjvf japan.tar.bz2
12.网络命令
命令:write(给用户发送信息)(write name)
命令:wall(给全体在线用户发信息)(wall message)
命令:ping(ping ip)
命令:ifconfig(查看ip地址)
命令:mail(查看和发送邮件)(mail root)
命令:last(列出目前和过去的登陆和登出用户信息)
命令:lastlog(检查特定用户上次登录时间)(lastlog -u 502)
命令:traceroute(显示数据包到主机的路径,看节点是否有问题)
命令:netstat(显示网络相关信息)
描述:-t是tcp协议,-u是udp协议,-l是监听,-r是路由,-n显示ip和端口
netstat -tlun(查看本机监听的地址和端口号)
netstat -an(查看本机所有的网络连接)
netstat -rn(查看本机路由表)
命令:mount(挂载)
描述:mount 【-t 文件系统】设备文件名 挂载点 mount /dev/sr0 /mnt/cdrm
13.关机重启命令
命令:shutdown(可以保存信息,安全)
描述:-c取消上一个关机命令,-h关机,-r重启,
shutdown 【选项】 时间 , shutdown -r now
命令:init 0-6
系统运行级别:
0 关机(不能默认) 1 单用户(root运行) 2 不完全多用户(不含NFS服务) 3 完全多用户(常用)
4 未分配(自定义) 5 图形界面 6重启(不能默认) ps:0和6不能默认否则无无限循环!
命令:runlevel(查询系统运行级别)
命令:logout(退出登录命令)
第三章:包管理
1.包管理(需要手动进行依赖性安装,很麻烦)
- Linux现在常用的有两大体系,一个是CentOS体系,一个是Ubuntu体系,前者使用rpm,后者使用 deb。
- CentOS下面使用rpm -i jdkXXX_linux-x64_bin.rpm进行安装。
- Ubuntu下面使用dpkg -i jdk-XXX_linux-x64_bin.deb。其中-i就是install的 意思。
-
凭借 rpm -qa 和 dpkg -l 就可以查看安装的软件列表,-q就是query,a就是all,-l的意思就是 list, 通常配合管道符来进行查找 ;
2.软件管家(自动:解决依赖性,且自动把软件包和依赖都自动下载,并自动安装)
- CentOS下面是yum,Ubuntu下面是apt-get。
- 例如搜索yum search jdk和apt-cache search jdk,可以搜索出很多很多可以安装的jdk版本。
- 用yum install java-11-openjdk.x86_64和apt-get installopenjdk-9-jdk来进行安装。
- 卸载我们可以使用yum erase java-11-openjdk.x86_64和apt-get purge openjdk-9-jdk。
- 配置从哪里下载这些软件的,地点就在配置文件里面。
- 对于CentOS来讲,配置文件在/etc/yum.repos.d/CentOS-Base.repo里。对于Ubuntu来讲,配置文件在/etc/apt/sources.list里。
3.包安装的位置:
- 主执行文件会放在/usr/bin或 者/usr/sbin下面,其他的库文件会放在/var下面,配置文件会放在/etc下面,不用设置环境变量。
- 使用压缩包解压的形式都会在一块,所有需要自己设置环境变量的。
第四章:Linux系统管理
进程管理:
进程查看:
命令:ps -aux(查看系统的所有进程)(a:前台进程,x:后台进程,u:显示用户)
命令:ps -le(作用相同)
查看系统健康状态:
命令:pstree(查看继承树)
选项:-p(显示进程的PID),-u(显示用户名)
pstree -p | grep httpd(把前面的当成后面的输入)
命令:tree(显示目录树)
进程管理:
命令:kill -l(查看可用进程的信号)
信号1:重启,9:强制终止,15:正常终止(默认信号)
命令:kill -1/-9 PID号
命令:killall -9 进程名(不是PID号)
命令:pkill(可以和killall一样的功能)
选项:增加了-t按终端号来踢用户。(tty1-6,pts/0....)pkill -9 -t tty1。
工作管理:
把进程放到后台:
系统资源查看:
命令:vmstat 【刷新延时 刷新次数】
命令:dmesg(开机时内核监测信息)(dmesg | grep CPU)
命令:free(查看内存使用情况)(-b字节(bytes),-k:KB,-m:MB,-g:GB)
命令:cat /proc/cpuinfo(查看cpu信息)
.......
系统定时任务:(一般是定时执行shell脚本备份啊啥的)
crond(d代表守护进程)服务管理是自动启动的:ps aux | grep crund
第五章:日志管理
日志管理简介:
rsyslogd对syslogd进行了升级!ps -aux | grep rsyslogd(查看是否服务启动)
常见日志:
第六章:vim的一些命令
vim的三大模式:
命令行模式:一进入文件就是
底行模式:按Esc键
插入模式:按i键