Linux笔记
掌握20个linux的命令,一些基本命令都是在应用程序→附件→终端里面操作的,相当于Windows的DOS 查看IP:ifconfig
swap分配物理内存的2倍;
swap分区的含义
Swap分区在系统的物理内存不够用的时候,把物理内存中的一部分空间释放出来,以供当前运行的
程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存
到Swap分区中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。
Swap分区,即交换区,系统在物理内存不够时,与Swap进行交换。 其实,Swap的调整对Linux服
务器,特别是Web服务器的性能至关重要。通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级
费用。
课程目标:
了解Linux的发展历史
掌握Linux系统的安装与配置
掌握常见的Linux的命令
学习测试环境的搭建
shell脚本的初识
-----------------------------------------------------------
目录
第一章 认识Linux
1.1常见的操作系统
1.2Linux的历史发展
第二章 Linux的安装与配置
2.1Linux的安装与配置
2.2SecureCRT、xftp、Xshell的使用
2.2.1SecureCRT的使用
2.2.2Xshell的使用
2.2.3Xftp的使用
2.2.4了解系统启动的过程
第三章 Linux的基本命令
3.1Linux系统结构
3.1.1热热身!
3.2Linux操作和命令
3.2.1注销—重启—关机
3.2.2目录管理:ls/mkdir/rmdir/mv/cd/cp
3.2.3文件操作:touch/vi/cp/mv/rm/wc/sort/find/grep/diff/cmp/file/which
3.2.4文本查看命令:cat/head/more/tail/less
3.2.5用户管理:useradd==adduser/passwd/usermod/userdel/groupadd/groupmod/groupdel
3.2.6Linux权限管理:ls -l/chmod/chown/chgrp
3.2.7系统设置命令:alias/echo/export
3.2.8网络通信命令:ifconfig/netconfig/netstat/ping
3.2.9磁盘管理命令:df/du
3.2.10系统资源查看:top/ps/vmstat
3.2.11打包压缩命令:gzip/gunzip/tar/zip
3.2.12加载外围设备(了解)
第四章 了解shell脚本
-----------------------------------------------
第一章 认识Linux
1.1常见的操作系统
Windows
Mac(Unix内核的桌面版)
Linux
1.2Linux的历史发展
Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的
Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路
由器、视频游戏控制台、台式计算机、大型机和超级计算机。
严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于
Linux内核,并且使用GNU 工程各种工具和数据库的操作系统(也被称为GNU/Linux)(企鹅的由来)。基
于这些组件的Linux软件被称为Linux发行版。一般来讲,一个Linux发行套件包含大量的软件,比如软件开
发工具,数据库,Web服务器(例如Apache),X Window,桌面环境(比如GNOME和KDE),办公套
件(比如OpenOffice.org),等等。
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、
支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和
64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。(Linux
是线程还是进程?一个进程可以有很多线程,每条线程并行执行不同的任务。进程(英语:Process)是计
算机中已运行程序的实体。进程本身不会运行,是线程的容器。程序本身只是指令的集合,进程才是程序
(那些指令)的真正运行。)
流行的Linux发行版本:
目前世界上大概有三百多种Linux发行版本,其中流行的主要有:
Fedora Core、SUSE、Debian、ubantu、centos
-Red Hat:http://www.redhat.com
-Fedora:http://frdora.redhat.com
-Ubantu:https://www.ubantu.com
-Mandriva:http://www.mandriva.com
-Novell SuSE:http://www.novell.com
-Debian:http://www.debian.org
-Slakware:http://www.slackware.com
Linux的主要特点:
1.成本低廉(Linux并非完全免费,服务是收费的)
2.协议标准统一(技术标准层面、法律层面)
3.高稳定性和安全性(内核小,设计理念先进)
4.网络应用丰富(诞生于因特网,支持所有标准因特网协议)
Linux应用领域:
1.因特网应用架构与网络服务
LAMP、J2EE、.NET
WWW、DNS、FTP、MAIL、防火墙
2.数据库服务器
Mysql、Oracle、DB2
3.软件开发
C、C++、PHP、JAVA+JSP,python,ruby
记住第一层目录
第二章 Linux的安装与配置
root 123456 登录------>根目录
ifconfig --->查看当前ip地址;
eth0 ---> 第一块虚拟网卡;eth1--->第二块;
lo ---> localhost;
pwd ---> 查看当前在什么路径下;
~ ---> 表示当前路径的家目录;
# ---> 超级管理员
(2)用普通用户登录:
admin 123456
$ ---> 当前用户
Windows下输出path环境变量:echo %path%
Linux下输出path环境变量:echo $PATH
环境变量的含义
环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参
数,如:临时文件夹位置和系统文件夹位置等。
环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信
息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的
完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境
变量,来更好的运行进程。
怎么使ifconfig能在普通用户下使用?
配置环境变量:
1)配置临时环境变量(为的是将ifconfig启用):export PATH=$PATH:/sbin
2)配置当前用户的环境变量
vi .bashrc,在最后一行添加
export PATH=$PATH:/sbin
source ~/.bashrc 加载这个配置档
3)配置全局的环境变量
vi /etc/profile,在最后一行添加
export PATH=$PATH:/sbin
source /etc/profile 加载全局的配置档
source命令:用于重新执行刚修改的初始化文件,使之生效,不必注销及重新操作。
方法2的具体操作步骤:
vi .bashrc
按 i 进入插入模式
上下键移动光标至最后行
插入 export PATH=$PATH:/sbin
按esc退出插入
按shift+;
输入wq!,即:wq!
source .bashrc
ifconfig
方法3具体操作步骤:
切换至超级管理员 su
超级管理员切换至普通用户 exit
vi /etc/sudoers 将一些普通用户添加成为可使用超级管理员权限
vi /etc/profiles
vi /etc/sudoers
vi /etc/sudoers
1)配置临时环境变量
2)配置局部环境变量
3)配置全局环境变量
-----------------------------------------
Linux发展历史图
-----------------------------------------------------------
2.2SecureCRT、xftp、Xshell的使用
2.2.1SecureCRT的使用
SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,同时支持Telnet和rlogin协
议。SecureCRT是一款用于连接运行包括Windows、UNIX和VMS的远程系统的理想工具。
在Windows上远程连接虚拟机Linux的工具
通过SecureCRT向linux传文件
上传文件只需在shell终端仿真器中输入命令“rz”,即可从弹出的对话框中选择本地磁盘上的文
件,利用Zmodem上传到服务器当前路径下。
下载文件只需在shell终端仿真器中输入命令“sz 文件名”,即可利用Zmodem将文件下载到本
地某目录下。通过“File Transfer”可以修改下载到本地的默认路径。设置默认目录:options--
>session options-->x/y/zmodem(Download path)
使用SecureCRT的优点
1:在UNIX,Linux或VMS上到Windows,Linux,和Mac上机器运行安全的访问企业应用程
序。 - 适用于VT100/102/220, ANSI,SCO ANSI,Wyse50/60,Xterm, 和Linux 控制台的丰富的
仿真支持。
2:使用完全控制回溯,键映射,颜色,字体等配置,管理和定制1到5000次的会议完。
3:使用SSH2,SSH1,远程登录,远程登录/ SSL,串口和其他协议从一个客户端访问您的完整
的网络设备。
4:使用节省时间的UI功能高效利用,包括多会话启动,标签会话,会话拼接,克隆会话,重复
命令按钮栏,和映射键。
5:适用于加密登陆和会话数据,灵活的身份验证选项,以及可选FIPS140-2-认证密码的开放式
标准安全外壳协议。
2.2.2Xshell的使用
一次性接受
2.2.3Xftp的使用
一次性授权
2.2.4了解系统启动的过程
内核 kernel
先问一个问题,"启动"用英语怎么说?
• 回答是boot。可是,boot原来的意思是靴子,“启动”与靴子有什么关系呢? 原来,这里的boot是
bootstrap(鞋带)的缩写,它来自一句谚语:“pull oneself up by one‘s bootstraps”。
• 计算机的整个启动过程分成四个阶段。
∙ 一、第一阶段:BIOS
上个世纪70年代初,rom被发明出来,开机程序被刷入ROM芯片,计算机通电后,第一件事就是读
取它。这块芯片里的程序叫做"基本輸出輸入系統"(Basic Input/Output System),简称为BIOS。
1.1硬件自检
• BIOS程序首先检查,计算机硬件能否满足运行的基本条件,这叫做"硬件自检"(Power-On
Self-Test),缩写为POST。
• 如果硬件出现问题,主板会发出不同含义的蜂鸣,启动中止。如果没有问题,屏幕就会显示出
CPU、内存、硬盘等信息
• 1.2启动顺序
• 硬件自检完成后,BIOS把控制权转交给下一阶段的启动程序。
• 这时,BIOS需要知道,"下一阶段的启动程序"具体存放在哪一个设备。也就是说,BIOS需要
有一个外部储存设备的排序,排在前面的设备就是优先转交控制权的设备。这种排序叫做"启动
顺序"(Boot Sequence)。
∙ 二、第二阶段:主引导记录
• BIOS按照"启动顺序",把控制权转交给排在第一位的储存设备。
• 这时,计算机读取该设备的第一个扇区,也就是读取最前面的512个字节。如果这512个字节的最后
两个字节是0x55和0xAA,表明这个设备可以用于启动;如果不是,表明设备不能用于启动,控制权
于是被转交给"启动顺序"中的下一个设备。
• 这最前面的512个字节,就叫做"主引导记录"(Master boot record,缩写为MBR)。
• 2.1 主引导记录的结构
• "主引导记录"只有512个字节,放不了太多东西。它的主要作用是,告诉计算机到硬盘的哪一个位置
去找操作系统。
• 主引导记录由三个部分组成:
(1) 第1-446字节:调用操作系统的机器码。
(2) 第447-510字节:分区表(Partition table)。
(3) 第511-512字节:主引导记录签名(0x55和0xAA)。
• 其中,第二部分"分区表"的作用,是将硬盘分成若干个区。
∙ 三、第三阶段:硬盘启动
计算机的控制权就要转交给硬盘的某个分区了,找到操作系统。
∙ 四、第四阶段:操作系统
控制权转交给操作系统后,操作系统的内核首先被载入内存。
• 以Linux系统为例,先载入/boot目录下面的kernel。内核加载成功后,第一个运行的程序
是/sbin/init。它根据配置文件(Debian系统是/etc/initab)产生init进程。这是Linux启动后的第一
个进程,pid进程编号为1,其他进程都是它的后代。然后,init线程加载系统的各个模块,比如窗口
程序和网络程序,直至执行/bin/login程序,跳出登录界面,等待用户输入用户名和密码。
• 至此,全部启动过程完成。
Linux启动流程图
第三章 Linux的基本命令
• 1、目录管理
• 2、文件操作
• 3、文本查看命令
• 4、用户管理
• 5、权限管理
• 6、系统设置命令
• 7、磁盘管理命令
• 8、网络通信命令
• 9、备份压缩
• 10、通用命令
3.1Linux系统结构
man tree ZZ退出
tree -L ctrl+C退出
• “/”根目录部分有以下子目录:
• /bin 系统启动时需要的执行文件(二进制),这些文件可以被普通用户使用。
• /boot 用于自举加载程序(LILO或GRUB)的文件。当计算机启动时(如果有多个操作系统,有可能允
许你选择启动哪一个操作系统),这些文件首先被装载。这个目录也会包含LINUX核(压缩文件
vmlinuz),但LINUX核也可以存在别处,只要配置LILO并且LILO知道LINUX核在哪儿。
• /dev 设备文件目录。LINUX下设备被当成文件,这样一来硬件被抽象化,便于读写、网络共享以及需要
临时装载到文件系统中。正常情况下,设备会有一个独立的子目录。这些设备的内容会出现在独立的子目
录下。LINUX没有所谓的驱动符。
∙ /etc 操作系统的配置文件目录。
∙ /home 目录包含用户的文件:参数设置文件、个性化文件、文档、数据、EMAIL、缓存数据等。这个目
录在系统升级时应该保留。
∙ /lib 根文件系统目录下程序和核心模块的共享库。
∙ /mnt:光盘、U盘等外设的预设挂载点。
∙ /proc 目录整个包含虚幻的文件。它们实际上并不存在磁盘上,也不占用任何空间。(用ls -l 可以显示
它们的大小)当查看这些文件时,实际上是在访问存在内存中的信息,这些信息用于访问系统。
∙ / sbin 系统执行文件(二进制),这些文件不打算被普通用户使用。(普通用户仍然可以使用它们,但
要指定目录。)
∙ /tmp 临时文件。该目录会被自动清理干净。
∙ /usr 目录包含所有的命令、程序库、文档和其它文件。这些文件在正常操作中不会被改变的。这个目录
也包含你的Linux发行版本的主要的应用程序,譬如,Netscape。
∙ /var 目录包含在正常操作中被改变的文件:假脱机文件、记录文件、加锁文件、临时文件和页格式化文
件等。
∙ /root 系统管理员(也叫超级用户或根用户)的Home目录。
∙ /opt 可选的应用程序,譬如,REDHAT 5.2下的KDE (REDHAT 6.0下,KDE放在其它的XWINDOWS
应用程序中,主执行程序在/usr/bin目录下)
∙ /lost+found 在文件系统修复时恢复的文件。
3.1.1热热身!
• 1、按[向上箭头]和[向下箭头]键可以滚动以前使用过的命令键入了文件名、命令、或路径名的一部分,然后按 [Tab] 键 ,会把文件或路径名的剩余部分补全。如按一次无效,按两次 [Tab] 键 ,会出现可选文件列表。
• 2、图形与文本界面切换
图形切换到文本界面(命令行界面):ctrl+alt+f4
文本界面(命令行界面)切换到图形:alt+f7
. 代表此层目录
.. 代表上层目录
cd:改变目录,如cd /home,表示由当前目录进入home目录。
pwd:显示目前的目录。
乱码:/etc/profile中添加 export LC_ALL=zh_CN.GBK
cd - : 恢复到最近一次的目录下
cd ~ : 回到当前登录用户的家目录
3.2Linux操作和命令
(一)注销—重启—关机
3.2.1注销—重启—关机
∙ 1、注销(文本模式)
[root@localhost root]#logout 注销系统(锁定界面)
∙ 2、重启 reboot
[root@localhost root]#reboot 重启系统
∙ 3、关机 shutdown
[root@localhost root]#shutdown now 立刻关机
[root@localhost root]#shutdown +5 5分钟后关机
[root@localhost root]#shutdown 10:30 在10:30时关机
[root@localhost root]#shutdown -r now 立刻关闭系统并重启
[root@localhost root]#shutdown -r 23:59 指定在23:59时重启动
(二)目录管理
3.2.2目录管理:ls/mkdir/rmdir/mv/cd/cp
• ls 查看文件目录信息
-l 文件详细列表
-a 显示全部文件,其中隐藏文件的以名称前的“.”做区分
-k 以KB(千字节)为单位显示文件大小
• mkdir 创建目录
• rmdir 删除空目录
• mv 重命名/移动
• cd
第一个字符为“d”,表示该文件是文件夹
第一个字符为“l”,表示该文件是链接文件
第一个字符为“-”,表示该文件是普通文件
(1)mkdir
∙ mkdir -p:一次性建立嵌套文件夹 mkdir -p 2/3/4
• 创建一个目录
• [root@localhost~]# mkdir test
• 创建一个名称为test 的目录
∙ mkdir -m:创建有一定权限的目录
• [root@localhost~]# mkdir -m 711 test1
• 创建权限为rwx--x--x的目录
(2)rmdir
• 删除一个空目录
• [root@localhost~]# rmdir test
• 删除名称为test 的空目录
∙ rmdir -p 连同上一级的空目录一起删除
rm 删除文件/目录
• rm -r:删除嵌套文件夹
• rm -i filename 删除 filename 前提示,若多个文件则每次提示
• rm -rf folder/subfolder/ 递归删除 subfolder 下所有文件及文件夹,包括 subfolder 自身
• rm -d folder 删除空文件夹‘’【‘’【】;】
(3)mv
• 1:重命名目录
• 用法:mv [原文件名] [新文件名]
• [root@localhost~]# mv test test1
• 将test目录重命名为test1
• 注意:
• mv重命名功能时后面对象仅能是对象名,如果有路径将实现移动功能。
• 2:移动文件
• 用法:mv [文件名] [目标绝对路径]
(4)cp
• 功能说明:将源文件拷贝至某处
• 语法:
• cp [-drsu] [来源文件] [目的文件]
• 参数说明:
• -d:在进行 copy 的时候,如果是 copy 到 link 文件:
若不加任何参数,则预设情況中会将 link 到的原始文件copy 到目的地,其文件名称为链
接文件的名称,如重新给与了名称,则其文件名称为新名称;
若加 -d 时,则 link文件可原封不动的将 link 这个捷径拷贝到目的地。
∙ -r:可以进行目录的copy
• -s:做成链接文件,而不 copy 之意!与 ln 指令相同功能!
• -u, --update:如果来源文件比较新,或者是没有目的文件,那么才会进行copy 的动作
• -p:连同文件的属性一起复制过去,而非使用默认属性(备份常用)
红色表示源文件缺失
(6)cd
• 目录路径的切换
• [root@localhost~]# cd test1/
• 如果知道目录的绝对路径,可直接输入目录路径
• [root@localhost/]# cd /home/root/test1/
(三)文件操作
3.2.3文件作:touch/vi/cp/mv/rm/wc/sort/find/grep/diff/cmp/file/which
• touch • vi • cp • mv • rm • wc • sort • find •
grep
(1) touch命令
• 新建一个空文件,也可以改变创建文件的时间
• touch a
• touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间
(2)Vi命令
• vi是unix系统上的第一个全屏模式编辑器,它用法简单,而且所占空间不大,操作灵活无比。
• vim是vi的升级版,有颜色区分,目前输入的vi命令调用的是vim,用/bin/vi 打开的是一种颜
色。
∙ 进入vi命令
• vi filename :打开或新建文件,并将光标置于第一行首
• vi +n filename :打开文件,并将光标置于第n行首
• vi + filename :打开文件,并将光标置于最后一行首
• vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename
• vi filename1 filename2….. :打开多个文件,依次编辑(可使用:n及:N去切换)
• open:在vi编辑器中再打开其他文件
• :n:在多个文件中切换至下一个文件
• :N:在多个文件中切换至下上一个文件
• :n filename:在多个文件中直接跳转至下一个文件
• vi -o filename1 filename2…..上下窗口方式打开文本
• vi -O filename1 filename2….. 左右窗口方式打开文本
• ctrl+W进行切换
--------------------------------------------------------------------
Vi三种模式详解
命令行模式( command mode/一般模式)
任何时候,不管用户处于何种模式,只要按一下“ ESC”键,即可使Vi进入命令行模式;我们在
shell环境(提示符为$)下输入启动Vi命令,进入编辑器时,也是处于该模式下。
在该模式下,用户可以输入各种合法的Vi命令,用于管理自己的文档。此时从键盘上输入的任何
字符都被当做编辑命令来解释,若输入的字符是合法的Vi命令,则
Vi在接受用户命令之后完成相应的动作。但需注意的是,所输入的命令并不在屏幕上显示出来。
若输入的字符不是Vi的合法命令,Vi会响铃报警。
文本输入模式( input mode/编辑模式)
在命令模式下输入插入命令i(insert)、附加命令a (append)、打开命令o(open)、修改命
令c(change)、取代命令r或替换命令s都可以进入文本输入模式。在该模式下,用户输入的任何:
字符都被Vi当做文件内容保存起来,并将其显示在屏幕上。在文本输入过程中,若想回到命令模
式下,按" ESC"键即可。
末行模式( last line mode/指令列命令模式)
末行模式也称ex转义模式。
Vi和Ex编辑器的功能是相同的,二者主要区别是用户界面。在Vi中,命令通常是单个键,例如
i、a、o等;而在Ex中,命令是以按回车键结束的正文行。Vi有一个专门的“转义”命令,可访问
很多面向行的Ex命令。在命令模式下,用户按“:”键即可进入末行模式下,此时Vi会在显示窗口
的最后一行(通常也是屏幕的最后一行)显示一个“:”作为末行模式的提示符,等待用户输入命
令。多数文件管理命令都是在此模式下执行的(如把编辑缓冲区的内容写到文件中等)。末行命
令执行完后,Vi自动回到命令模式
----------------------------------------------------
∙ vi移动光标类命令 (命令行下)
∙ h:光标左移一个字符
∙ l:光标右移一个字符
• space:光标右移一个字符
• Backspace:光标左移一个字符
∙ k或Ctrl+p:光标上移一行
∙ j或Ctrl+n:光标下移一行
• Enter:光标下移一行
• w或W:光标右移一个字至字首
• b或B:光标左移一个字至字首
• e或E:光标右移一个字至字尾
∙ nG:光标移至第n行首, 文件首行(1G)
• H:光标移至屏幕顶行
• M:光标移至屏幕中间行
• L:光标移至屏幕最后行
∙ 0:(注意是数字零)光标移至当前行首或者( ^ )
∙ $:光标移至当前行尾
• G: 光标移至文件的最后一行行首
• :0 光标移至文件首行 -----等同于:1
∙:n光标移至N行首
• 显示行号 :set nu (末行模式)u
:∙ vi插入文本类命令(在查看模式下输入)
• i:在光标前
• I:在当前行首
• a:光标后
• A:在当前行尾
• o:在当前行之下新开一行
• O:在当前行之上新开一行
∙ vi保存退出命令
• :q :退出vi
• :wq :保存并退出vi
• :w :保存编辑内容
• :q! :强制退出
• :wq! :强制保存并退出vi
∙ 复制粘贴 (命令模式下)
• yy复制一行
• p 粘贴
• nyy复制n行(yny)
• p 粘贴
∙ 剪切与删除(命令模式下)
• dd删除一行
• ndd删除光标行的后n行(dnd)
• p粘贴上面的内容
∙ 搜索:
• 命令模式下,键入 / 后面按搜索的内容
• 按 n 向后搜索
• 按 N 向前搜索
∙ 替换
• 末行模式下
• :%s/源/目标替换/g
%:指代整个文件内容
g:代表全局替換(该行的全局)
s:就是替换的命令
• :1,10s/源/目标替换
∙ 撤销
• 命令模式下,u 撤销至上一步
• crtl + r恢复至上一步撤销
∙ 清空整个文本
• $d+shift+g(d+G)------删除光标以下行
∙ 其它命令
• 显示/隐藏行号
• 末行模式:set nu!
• 显示当前文件名
• 末行模式 file
---------------------------------------------
LINUX没有所谓的驱动符
背linux系统结构目录,根目录下的一级命令
----------------------------------------------------
(3)cp命令
• [root@localhost~]# cp -r test1 test2
• 将test1目录拷贝到test2中
• [root@localhost~]# cp test1/test.txt ./后面跟目标目录
• 将test1中test.txt文件拷贝到当前目录下
(4)mv命令
• 功能说明:将源文件剪切至某处
• 语法:mv [-u] [来源文件] [目的文件]
• 参数说明:
• -u :同样的,为 update 的简写,当来源文件比目的文件还新的时候才会有效
• [root@localhost~]# mv test1 test2/
• 将test1文件夹剪切到test2目录下
(5)rm命令
• rm:删除文件或目录
• rm -rf 强制删除目录或文件,如有目录嵌套,则不提示
• rm -i 删除文件或目录时给予确认提示
• rm filename直接删除掉文件,如果想删除文件夹,你就加参数 -r
(6)wc命令
• 打印出文件中字符行数、字节数、单词个数等
• -c, --bytes:统计字节数
• -m, --chars:统计字符数
• -l, --lines: 统计行数
• -L, --max-line-length:打印最长行的长度
• -w, --words: 统计字数(由空白、等分隔)
#[root@localhost]# wc test.txt 查看文件的行数、文字总数、字符数、
6 6 12 test.txt
#[root@localhost]# wc -c test.txt 统计字节数
12 test.txt
#[root@localhost]# wc -m test.txt 统计字符数
12 test.txt
#[root@localhost]# wc -l test.txt 统计行数
6 test.txt
(7)find命令
• find命令在目录结构中搜索文件,并执行指定的操作
• 语法:find【文件路径】【参数】【文件名】
• -name 按照文件名查找文件
• -perm 按照文件权限来查找文件
• -user 按照文件属性来查找文件
• -group 按照文件所属的组来查找文件
• -mtime -n +n 按照文件的更改时间来查找文件, -n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前
• -type 查找某一类型的文件
• find . -name “*.txt*“
• find . -name “[A-Z]*.txt”
• find . -perm 755 找755权限的文件
• find . -type d (d目录 l软链接 f 文件)
• find . -size +10 查找长度大于10块的文件 (1块=512字节)
查找超过1M的文件 find / -size +1M -type f
查找等于6字节的文件 find . -size 6c
查找小于32k的文件 find . -size -32k
• find ./ -type d -name “*log*”
∙ find $HOME -mtime 0 (24小时以内)
• find多条件组合:
• find /usr/ -size +10M -a -type f 与
-----a是and的缩写,-a可省略
• 查询文件大小小于1M,或者文件的修改时间在24H之内的
• find ./ -size -1M -o -mtime 0 或
• find ./ -not -type f 非
• find命令的补充:
• find . -name "demo*.txt" | xargs rm 前一个标准输出作为第二个的输入
xargs是强制前面为参数,比如文件就是非标准的,后面命令为grep时也需要加
(8)sort命令
• 功能说明:将文本文件内容加以排序
• [root@localhost]# sort test.txt
• Test.txt文件内容为:
• A
• C
• D
• B
• F
• E
• 排序后为:A、B、C、D、E、F
• sort -r test.txt (倒序排序)
• sort -n test.txt (纯数字按从小到大顺序排序)
(9)Grep命令
• grep指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设grep指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为“-”,则grep指令会从标准输入设备读取数据,grep还有强大的正则表达式处理
方式.
• 用法: # grep 要过滤的字符 要过滤的文件
• Grep命令:
-c:只输出匹配行的计数。
-i:不区分大小写
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件的文件名。
-n:显示匹配行及行号。
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。
• Grep命令用法介绍:先使用vi创建一个test文件,内容如下:
Grep -c 的用法
• -c代表输出匹配项的行数数量
• 对test文件包含E关键字的行数的查找
• Grep -n 用法
• -n代表列出所有的匹配行,并显示行号
查找test文件中 F关键字的匹配行以及行号
• Grep -i用法
• -i选项代表对大小写不敏感,不区分大小来查找关键字信息
• 不区分大小写查找f关键字信息
• Grep 选项的-l 的的用法:
• -l选项表示只列出符合匹配文件内容的文件名,而不列出具体的行数
查找F关键字的文件名前缀名有te开头的文件
• 递归查找
• 案例:grep -i Aa 11.txt在11.txt中搜索Aa(不区分大小写)[AA,aa,Aa,aA]都符合
• 案例:grep -l A 11*.txt在11开头.txt结尾的多个文件中搜索字符A,如找到仅只显示文件
名20
• 案例:grep -n A 11.txt在11.txt中搜索A字符,将匹配到的行号也打印出来
注意:(以上图为例)grep以“.”间隔,第一个显示匹配上的文件名,第二个显示
行号,第三个显示匹配的行
(四)文本查看命令
3.2.4文本查看命令:cat/head/more/tail/less
• 1、cat • 2、head • 3、more • 4、tail • 5、less
∙ cat
• 显示文件内容,并且支持将多个文件串连后输出
• 注意:该命令一次显示完整个文件,若想分页查看,需使用more
• 格式: cat [ options ] filename1 … filename2 …
• 常用 options:
• -n 对所有输出行进行编号
• -b 与-n相似,但空白行不编号
• 例:$ cat file1 file2 file3 同时显示三个文件
$ cat -b file1 file2 file3
∙ head
• 输出文件最前面的几行数据
• head [OPTION]... [FILE]...
• [root@localhost]$ head -3 test.txt ----------显示test.txt文件前3行数据
∙ more
• 分页显示文件内容 (一页一页地显示,仅只能向前)
• more [-dlfpcsu] [-num] [+/ pattern] [+ linenum] [file ...]
• 参数说明:
• -num:每页显示多少行内容
• +num:从多少行开始显示
• 空格表示显示下一页,回车表示下一行
• q退出
• 示例:
• [root@localhost]$ more +2 -3 test.txt
• 从第2行开始,每页显示3行数据阅读test.txt文件
• 说明:less和more用于文件里面信息量大的时候使用
∙ less
• 分页浏览 (可以向前翻页与可以向后翻页)
• less [参数] 文件
• 下翻页 d , 上翻页u,退出是q
• 说明:less和more用于文件里面信息量大的时候使用
∙ tail
• 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志
文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的
文件内容.
• tail [必要参数] [选择参数] [文件]
∙ -f 循环读取(相当于动态输入)---ctrl+c手动中断
• -q 不显示处理信息
• -v 显示详细的处理信息
• -c<数目> 显示的字节数
• -n<行数> 显示行数
• --pid=PID 与-f合用,表示在进程ID,PID死掉之后结束.
• -q,--quiet,,--silent 从不输出给出文件名的首部
• -s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒
• tail -f filename
• tail -n 20 filename
• tail -f -n 10 filename (tail -10f filename)
-----------
tail实时打印输出最新的文件,动态文件,日志
-f ,-n两个命令要记住
tail,less重要
第一列“-”表示一般文件
第二列“rw”文件拥有者的权限,读写
第三列“r--”所属组的权限,读
第四列“r--”其他用户读的权限
-user属于那个使用者
4,2,1:读,写,执行
与:-a,或-o,非-not
find多练习,755权限的理解
--------------------
配置环境变量:
1.配置临时环境变量(为的是将ifconfig启用):
首先输入echo $ PATH →$ PATH
export PATH=$PATH:/sbin
最后输入ifconfig即可查询到linux下的环境变量
2.配置当前用户(局部)的环境变量:
vi .bashrc,在最后一行添加
export PATH =$PATH:/sbin
source~/.bashrc 加载这个配置档
3.配置全局的环境变量:
vi /etc/profile,在最后一行添加
export PATH=$PATH:/sbin
source /etc/profile 加载全局的配置档
source命令:用于重新执行刚修改的初始化文件,使之生效,不必注销及重新登录。
切换至超级管理员su - root,环境变量,所属环境全部切换
su root;;超级管理员切换为普通用户:exit
----------------------------
Linux的时间命令:
1>ctime 写入文件,更改所有者chmod,权限,链接等
2>mtime文件内容被修改的时间
3>atime 文件内容被读取的时间
date 查看系统时间;date -s 后面加时间,修改系统时间;最后输入:clock -w
find命令补充:find . -name "demo*.txt |xargs rm 查找文件并删除
/etc/sudoers附权