1、Linux概述

为什么要用Linux?
     Window+tomcat-->服务器。widows因为里面有追加的日志系统,占用内存多。windows开始时间久就会很卡。越处理越慢,处理高并发的项目,很吃力。
     正规项目都是LIunx部署。linux无论从系统运行的流畅度上,还是从安全,cpu和内存的消耗极小,并且硬件的扩展特别容易。

1.1、Unix

多用户,多任务。一般用于服务器架设。
 
为什么要用Linux?
     Window+tomcat-->服务器。widows因为里面有追加的日志系统,占用内存多。windows开始时间久就会很卡。越处理越慢,处理高并发的项目,很吃力。
     正规项目都是LIunx部署。linux无论从系统运行的流畅度上,还是从安全,cpu和内存的消耗极小,并且硬件的扩展特别容易。

1.1、Unix

多用户,多任务。一般用于服务器架设。
 
centOs优先选择作为服务器开发。
Linux内核:还是由开发研发负责修改和维护
RedHat是收费的,免费版本不支持在线升级。
centos每个版本是免费的,升级容易。很多公司使用CentOs替代商业版RedHat Linux
ubantu是一个以桌面应用为主的linux操作系统。ubantu的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件组建而成的操作系统。为桌面虚拟化提供支持平台。

1.2、Linux版本

Linux的版本分两种:内核版本和发行版本。
内核版本:是在Linux领导下内核小组开发维护的系统内核的版本号。
发行版本:是一些组织和公司根据自己发行版的不同而自定的。

1.3、Linux系统应用

服务器系统:web应用服务器、数据库服务器、接口服务器、DNS、FTP等等
嵌入式系统:路由器、防火墙、手机、PDA、交换机

1.4、虚拟机以及CRT工具

VMware Workstation 兼容性非常好。
VirualBox是一款开源虚拟机软件。Sun被Oracle收购后更名为Oracle VM VirtualBox,兼容性特别差,虚拟技术不稳

1.5、Liunx目录结构

 
 
liunx目录机构
/根目录,一般根目录下只存放目录,不要存放文件。
/bin/usr/bin:(binaries)存放二进制可执行文件。如常用的命令Is、tar、mv、cat等。
/boot放置丨inux系统启动时用到的一些文件。
/boot/vmlinuz为linux的内核文件,以及/boot/gurb。建议单独分区,分区大小100M即可
/dev(devices)存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备。 常用的是挂载光驱mount /dev/cdrom /mnt。
/home系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示 当前用户的家目录,〜test表示用户test的家目录。建议单独分区,并设置较大的磁盘空间,方便用户存放数据
/lib(library)Ajsr/lib:/usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助,比较重要的目录为/lib/modules。
/sbin(super user binaries) /usr/sbin: /usr/local/sbin:放置系统管理员使用的可执行命令。如fdisk、shutdown、mount等。与/bin不同的是,这几个目录是给系统管理员root使用的命令,一般用户只能"查看"而不能设置和使用
/root系统管理员root的家目录,系统第一个启动的分区为/,所以最好将/root和/放置在一 个分区下。
/etc (etcetera)系统配置文件存放的目录,不建议在此目录下存放可执行文件。重要的配置文件有/etc/inittab、/etc/fstab、/etc/init.d、/etc/Xll、/etc/sysconfig、/etc/xinetd.d 修改配置文件之前记得备份。
/usr
(unix shared resources)应用程序存放目录
/usr/bin存放应用程序
/usr/share存放共享数据
/usr/lib存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。
/usr/local: 存放软件升级包。
/usr/share/doc:系统说明文件存放目录。
/usr/share/man:程序说明文件存放 目录
/var(variable)放置系统执行过程中经常变化的文件,如随时更改的日志文件/var/log, /var/log/message:所有的登录文件存放目录,/var/spool/mail:邮件存放的目录,/var/run:程序或服务启动
/opt给主机额外安装软件所摆放的目录。以前的Linux系统中,习惯放置在/usr/local目录下
/tmp(temporary) —般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数 据不可放置在此目录下
/srv服务启动之后需要访问的数据目录,如www服务需要访问的网页数据存放在/srv/www 内
/mnt:/media:(mount)光盘默认挂载点,通常光盘挂载于/mnt/cdrom下,也不一定,可以选择任意位置进行挂载。
/proc
此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内 存中,所以不占用磁盘空间,比较重要的目录有/proc/cpuinfo、/proc/interrupts、/proc/dma、 /proc/ioports、/proc/net/*等
以上规定了,哪个目录是做什么用的。上面都只是建议,并不是强制性约束。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.1、磁盘管理 

(1).Is 命令

格式:Is [参数][文件或目录]

ls列出文件名或目录名 就像windows里的 列表。
ls-l,可以简化为ll显示指定目录下的内容,友好地显示详细文件列表
ll  -h  test显示子文件夹test的所有内容
-a或-all所有文件和目录
-t用文件和目录的更改时间排序。
-r反向排序

 

 

    
 
 
 
 
 
 
 
 
 
 
 

(2).cd命令(change directory)

功能:切换目录
语法:cd [目录]
~主目录
/根目录
-上次访问目录
../上一级目录

 

 
 
 
 
 
 
 
 

(3).查看系统磁盘空间使用情况:df 和du 

df以 kb 为单位展示空间使用情况:总的大小,已经使用的,可用的空间
df  -h以可读性较高的方式来显示信息
du -sh 文件夹查看文件夹的大小
du -sh  文件查看文件大小
 
 
 
 
 
 
 
 
实例如下:

(4).其他命令

pwd显示工作目录
Clear清屏
mkdir创建目录
   -p父目录不存在情况下先生成父目录(parents)
   -v显示命令执行过程中的详细信息
rmdir删除空目录(如果目录中有内容,不能删除该目录)

 

 
 
 

 

 

 

 

2.2、文件浏览

(1).cat命令(catenate)

功能:显示文本文件内容,适用于快速查看整体内容,文件内容不能多
语法: cat文件,显示指定文件的所有内容

(2).more命令

功能:快捷分页,进行方便的翻页,和进度显示
语法:more file
 
Enter向下n行,需要定义。默认为1行
空格键 向下滚动一屏或Ctrl+F 
B返回上一屏或Ctrl+B
q退出more
 
 
 
 
 
 
 
 
 
 
 

(3).less命令

功能:分页显示文件内容,操作更详细。查看配置文件,和more的很多功能是相类似的,比起more更加丰富。
语法:less [参数]文件
-m显示类似more命令的百分比
-N显示每行的行号
   
 
 
 
 
操作:
 
空格键前进一页或page down 
b后退一页或page up
d前进半页
u后退半页
回车键前进一行或方向键向下
y后退一行或方向键向上
/字符串向下搜索
?字符串向上搜索
v进入vim编辑器
q退出

 

 

 

 

 

 

 

 

 

 

(4).tail命令

功能:用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文 件。
格式:tail[必要参数][选择参数][文件]
-n<行数> 显示行数 只显示后5行。 

2.3、文件操作

(1).cp命令(复制)

  • cp(copy)功能:复制文件或目录。
  • 语法:cp [参数][源文件或目录][目标文件或目录]    
-r或-recursive 递归处理,将指定目录下的文件与子目录一并处理。
-a :将文件的特性一起复制  
-p :连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份  
-i :若目标文件已经存在时,在覆盖时会先询问操作的进行  
-u :目标文件与源文件有差异时才会复制
示例说明:
1、cp 需要复制的文件复制到哪里去
cp test .txt testl   复制 test.txt 到子目录 testl 中
cp test.txt /testl   复制text.txt到根目录的testl目录中
2、cp需要复制的文件复制到哪里去/改什么名字
例如:cp test.txt testl/hehe.txt 复制 test.txt 到子目录 testl 中,并且改名为 hehe.txt
3、cp-r  需要复制的目录复制到哪里去
例如:cp  -r test  testl复制test目录及其所有内容,到当前目录下,改名为testl

(2).mv命令(移动)

  • mv(move)功能:移动或更名现有的文件或目录。
  • 语法:mv [源文件或目录][目标文件或目录]
             -f或-force 若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录,mv -f 强制覆盖 
示例说明:
1、mv需要移动的文件移动位置
例如:mv heh.txt test 把heh.txt移动到子目录test中
2、mv需要移动的文件移动位置/改为什么名
例如:mv catalinahehe.log test/catalina  把 catalinahehe.log 移动到子目录 test 中,并更名

(3).rm命令(删除)

  • rm(remove) rm功能:删除文件或目录。
  • 语法:rm [-dfirv][-help][-version][文件或目录…]
     -f或-force     强制删除文件或目录。
     -r或-R或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。
常用命令:
rm-rf需要删除的文件/目录 
rm-rf*清空当前目录
rm-rf/*清空Linux千万不要用

2.4、文件编辑

(1).vi和vim
基本上vi可以分为三种状态
输入vim文件名”进入“一般模式”
按下"i"从一般模式,进入“插入模式”
按下Esc从“插入模式”退出到“一般模式
在“一般模式”下,输入:wq退出编辑  
操作:

    分组

    命令

    描述

            

插入(从一般模式进 入到插入式)

 i

在光标前插入

shift+ i

在光标当前行开始插入

 a

 在光标后插入

shift + a

 在光标当前行末尾插入

 o

在光标当前行的下一行插入新行

shift+ o

在光标当前行的上一行插入新行

 

                                              复制或粘贴 C在插入模式下)

yy

单行复制,将光标移动到将要复制的行处

nyy

多行复制,将光标移动到将要复制的首行处

P

粘贴将光标移动到将要粘贴的行处

  定位

gg

 到文本的第一行

shift + g

到文本的最后一行

 

 删除

dd

  删除光标所在行

ndd

  删除n行

 

 

 

  退出

 :q

    退出vi (没有做任何修改时)

 :q!

    强制退出不保存

:w

    保存不退出

 :wq

    保存后退出

(2).管道
①.linux提供管道符号
格式:命令1丨命令2 把命令1输出作为命令2的输入
作用是“命令1”的输出内容,将作为“命令2”的输入内容。一般与 grep命令一起使用。
 
②.grep 命令(Global Regular Expression Print)
表示全局正则表达式版本
功能:用于过滤/搜索的特定字符。可使用正则表达式能多种命令配合使用,使用上十分灵活。 
格式:grep [option]  pattern [file]
-i或-ignore-case #忽略字符大小写的差别。
例如:
1、查看install .log文件中含有control字符的内容 ,并将含有这个关键字的行显示出来。
 
 
 
 
 
 
 
 
 
grep -i  control  /root/install.log -i  control  /root/install.log
 
 
2、#格式:其他命令丨grep参数过滤条件, 在cat命令输出结果基础上,进行过滤
 
 
 
 
 
 
 
 
 
 
cat /root/install. log | grep -i control     /root/install. log | grep -i control    
 
 
3、查询ll搜索到文件中带有java关键字的文件
2.5、find命令
find是一个基于查找的功能非常强大的命令,相对而言,它的使用也相对较为复杂,参数也比较多,所以在这里将给把它们分类列出,它的基本语法如下:
 
 
 
 
 
 
 
 
 
find [PATH] [option] [action]   [PATH] [option] [action]  
  
# 与时间有关的参数:  
-mtime n : n为数字,意思为在n天之前的“一天内”被更改过的文件;   n : n为数字,意思为在n天之前的“一天内”被更改过的文件;  
-mtime +n : 列出在n天之前(不含n天本身)被更改过的文件名;   +n : 列出在n天之前(不含n天本身)被更改过的文件名;  
-mtime -n : 列出在n天之内(含n天本身)被更改过的文件名;   -n : 列出在n天之内(含n天本身)被更改过的文件名;  
-newer file : 列出比file还要新的文件名   file : 列出比file还要新的文件名  
# 例如:  
find /root -mtime 0 # 在当前目录下查找今天之内有改动的文件   /root -mtime 0 # 在当前目录下查找今天之内有改动的文件  
  
# 与用户或用户组名有关的参数:  
-user name : 列出文件所有者为name的文件   name : 列出文件所有者为name的文件  
-group name : 列出文件所属用户组为name的文件   name : 列出文件所属用户组为name的文件  
-uid n : 列出文件所有者为用户ID为n的文件   n : 列出文件所有者为用户ID为n的文件  
-gid n : 列出文件所属用户组为用户组ID为n的文件   n : 列出文件所属用户组为用户组ID为n的文件  
# 例如:  
find /home/ljianhui -user ljianhui # 在目录/home/ljianhui中找出所有者为ljianhui的文件   /home/ljianhui -user ljianhui # 在目录/home/ljianhui中找出所有者为ljianhui的文件  
  
# 与文件权限及名称有关的参数:  
-name filename :找出文件名为filename的文件   filename :找出文件名为filename的文件  
-size [+-]SIZE :找出比SIZE还要大(+)或小(-)的文件   [+-]SIZE :找出比SIZE还要大(+)或小(-)的文件  
-tpye TYPE :查找文件的类型为TYPE的文件,TYPE的值主要有:一般文件(f)、设备文件(b、c)、   TYPE :查找文件的类型为TYPE的文件,TYPE的值主要有:一般文件(f)、设备文件(b、c)、  
             目录(d)、连接文件(l)、socket(s)、FIFO管道文件(p);  
-perm mode :查找文件权限刚好等于mode的文件,mode用数字表示,如0755;   mode :查找文件权限刚好等于mode的文件,mode用数字表示,如0755;  
-perm -mode :查找文件权限必须要全部包括mode权限的文件,mode用数字表示   -mode :查找文件权限必须要全部包括mode权限的文件,mode用数字表示  
-perm +mode :查找文件权限包含任一mode的权限的文件,mode用数字表示   +mode :查找文件权限包含任一mode的权限的文件,mode用数字表示  
# 例如:  
find / -name passwd # 查找文件名为passwd的文件   / -name passwd # 查找文件名为passwd的文件  
find . -perm 0755 # 查找当前目录中文件权限的0755的文件   . -perm 0755 # 查找当前目录中文件权限的0755的文件  
find . -size +12k # 查找当前目录中大于12KB的文件,注意c表示byte   . -size +12k # 查找当前目录中大于12KB的文件,注意c表示byte  
 
 
 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值