Linux培训教材

更新时间:2024-05-25 10:39:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一、远程登录Linux服务器

开发中,我们经常会登录到Linux服务器进行工作,比如我们的19服务器,或者远程的机器等。那么我们首先就需要登录上去。有些现场服务器不能直接连接上去,需

要通过跳转机进行跳转。那么我们需要先登录跳转机,再从跳转机跳转到我们想要

的服务器上。

使用SecureCRT终端仿真程序进行连接远程服务器。

(1)

(2)

(3)

从一台机器telnet到另外一台机器

使用telnet命令可以从一台服务器登录到另外一台的服务器。

命令如:telnet 192.168.168.182 ,输入用户名、密码即可登录。使用exit命令可以退出登录。

我们可以使用telent --help查看telnet命令的使用方法

或者

man telnet

命令查看更详细的帮助说明。Linux系统的所有命令都可以通过

help和man命令获取到帮助,以后大家要多使用这两个帮助命令。

登录过程如下图

开启和关闭Linux系统中的虚拟机

有时我们需要在Linux系统中安装一个虚拟机,例如19服务器上的虚拟机17。可以使用virsh命令来开启和关闭虚拟机,改名了必须在root用户下才能使用。 输入

virsh命令进入虚拟化交互式终端,标题会变成virsh #,这时就可以输入其它的交

互命令了。可以使用help命令查看帮助。

list --all 查看有哪些虚拟机,并可以查看到虚拟机所处的状态,是运行中还是停止。

上图只有一个虚拟机,处于运行状态,redhat47.17就是这个虚拟机的名称

start 虚拟机名 可以开始虚拟机 shutdown 虚拟机名 可以关闭虚拟机

该提示标识虚拟机已经在运行状态了。

二、文件和目录的操作

1、ls

ls用来打印出当前目录的清单,如果ls指定其他目录,那么就会显示指定目录里的文件及文件夹清单。通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限),查看目录信息等等。

ls –help 或 man help 获取ls的帮助信息 ◇命令格式:ls [选项] [目录名 ◇应用场景:

需要列出目录的详细信息,包括隐藏的文件

ls –alh

-a 列出目录下的所有文件,包括以 . 开头的隐含文件。 -l 列出文件的详细信息。 -h 以容易理解的格式列出文件大小 (例如 1K 234M 2G)

第一位表示文件类型,-表示文件,d表示目录 2-4位表示文件所有者的权限,u权限

5-7位表示文件所有者所属组成员的权限,g权限

8-10位表示所有者所属组之外的用户的权限,o权限

原始权限 rwxrwxr-x rwxr-xr-x 转换为数字 (421)(421)(401) (421)(401)(401) 数字表示法 775 755 修改权限的例子:将文件test的权限修改为所有者和组成员具有读写的权限,其他人只有读权限

chmod 664 test

文本表示法用4个字母表示不同的用户: u:所有者 g:组成员 o:其他成员 a:所有人

权限仍用r、w和x表示 和数字表示法不同,文本表示法不仅可以重新指定权限,也可以在原来权限的基础上 增加或减少权限,如下: -:对目前的设置减少权限 +:对目前的设置增加权限

chmod u+x,g-x,o=x test

当文件比较多且想找出最大的前10个文件

ls –lhS | head -10 ls –lht | head -10

-S 根据文件大小排序 -t 根据时间排序 head -10 取前面10行内容

如果想找时间最新的10个文件也同样道理。

ls还可以用于查看系统有哪些消息队列

ls –li /msg

如何查看消息队列里面是否有消息呢?可以使用

ipcs –q命令

2、cd、pwd

变换工作目录至 dirName。 其中 dirName 表示法可为绝对路径或相对路径。若

目录名称省略,则变换至使用者的 home directory (也就是刚 login 时所在的目录)。 另外,\也表示为 home directory 的意思,\则是表示目前所在的目录,\则表示目前目录位置的上一层目录。

绝对路径:相对于根目录/的路径;cd /home/cattsoft/BuzCollect 相对路径:相对于所处当前目录的路径。cd MM1

pwd 命令来查看”当前工作目录“的完整路径。

命令格式 : cd [dirName] 命令格式 : pwd

应用场景:

每个用户都有自己的用户目录,即home directory,刚登录就会默认自自己的home directory里面。

使用cd ~ 或直接 cd 可以快速回到自己的home directory

进入目录的上上一级的MM7目录

cd ../../MM7

3、cp

linux下的cp命令的功能是将给出的文件或目录拷贝到另一文件或目录中

命令格式: cp [选项] 源文件或目录 目标文件或目录

应用场景:

我们在操作某个文件的时候,通常会拷贝一份备份文件,以便可以还原回原来的文件

将文件test1.c拷贝到/usr/cpp 这个目录下,并改名为 test2.c。

cp test1.c /usr/cpp/test2.c

如果不希望重新命名,可以使用下面的命令:

cp test1.c /usr/cpp/

将所有的log日志文件拷贝至 bak 子目录中

cp *.log ./bak

如果要拷贝目录,必须加上-r选项了,将目录dir1拷贝一份,拷贝的那份命名为dir2

cp –r dir1 dir2

- r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件至目的地。

4、mv

用户可以使用mv命令来为文件或目录重命名或将文件由一个目录剪切到另一个目录中。

命令格式:mv [选项] 源文件或目录 目标文件或目录

应用场景:

我们经常要将文件移动到某个指定的地方,这时就可以用MV命令了

将MM1中的所有文件移到当前目录(用”.”表示)中

mv ../MM1/* .

将文件test.txt重命名为wbk.txt

mv test.txt wbk.txt

加了-i选项的效果

- i 交互方式操作。如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写,要求用户回答y或n,这样可以避免误覆盖文件。

如果加-i选项的话,遇到重名就会提示是否覆盖,没有-i选项则直接覆盖不提示

5、rm

rm命令用于删除不需要的文件或目录

命令格式:rm [选项] 文件…

应用场景:

删除所有log后缀文件

rm *.log

删除 MM2 目录

rm -r MM2

- r 指示rm将参数中列出的全部目录和子目录均递归地删除。如果没有使用- r选项,则

rm不会删除目录。

有时删除目录时,会逐一提示是否删除目录里面的文件,我们确定要删除,并不希望有提示,可以加上-f选项禁掉所有的提示。

将 MM2 子目录及子目录中所有档案删除,并且不用确认

rm -rf MM2

- f 忽略不存在的文件,从不给出提示。

rm */*.d */*.o

6、mkdir、touch

mkdir命令新建文件夹,touch可以新建一个空文件,可以修改文件的创建时间

命令格式:mkdir [-p] 目录名 命令格式:touch 文件名

应用场景:

mkdir DIRA mkdir -p DIRC/hello

-p: 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录;

touch run.sh

7、cat、more、tail、head

cat把文件传到基本输出(屏幕或加 > fileName 到另一个档案)。或结合管道使用将文件内容重定向到管道

more类似 cat,不过会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,按enter滚动一行。

tail 类似cat,但输出文件尾的若干行,tail默认是输出文件的最后10行,也可以指定输出多少行,或加-f选项实时输出文件的内容。

head 是打印前面部分,默认是打印前面10行

命令格式:cat fileName 命令格式:more fileName 命令格式:tail [-f] fileName

应用场景:

提取cdr文件中的源IP和目的IP,并重定向到a.log

cat cdr_Mm1_20120329085500.log | awk –F ?##? ?{print $5,$6}? > a.log

awk是提取字段的命令,各个字段用‘##’分开,且源目的IP在第5和第6个字段

cdr文件比较多时,只想查看最后的5个文件,可以使用

ls –lh | tail -5

查看文件前面或后面5行的内容

tail -5 cdr_Mm1_20120329085500.log head -5 cdr_Mm1_20120329085500.log

其它应用

ls –lhS | tail -5

tail –f cdr_Mm1_20120329085500.log

加-f选项实时输出文件的内容

8、wc

wc命令的功能为统计指定文件中的字节数、字数、行数, 并将统计结果显示输出。

命令格式:wc [选项] 文件…

应用场景:

统计文件cdr_Mm1_20120329085500.log的行数

wc -l cdr_Mm1_20120329085500.log - l 统计行数;

一共是14280行。

统计29号一天所有文件个数和所有文件加起来的行数

ls –lh cdr_Mm1_20120329* | wc –l cat cdr_Mm1_20120329* | wc -l

统计29号8点中生成文件的总字节数

cat cdr_Mm1_2012032908* | wc –c

- c 统计字节数; - w 统计字数;

三、系统常用操作

1、top

显示系统当前的进程和其他状况; top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态。q 退出。

命令格式:top [-] [d] [p] [u]

应用场景:

只显示cattsoft用户的动态进程状况

top –u cattsoft

-u 只显示cattsoft用户的进程

只显示PID为8114的进程状况

top –p 5342

-p 通过指定监控进程ID来仅仅监控某个进程的状态。

每个10秒记录一次程序的内存与CPU情况,并输出到文件中

top –d10 | grep –i mm7 >> a.log -d 指定每两次屏幕信息刷新之间的时间间隔

-i的意思是忽略大小写

输出的文件

2、ps

ps 是显示瞬间行程的状态,并不动态连续;如果想对进程运行时间监控,应该用 top 工具。ps一般与grep一起使用,用于查看某进程的状态或查看某进程是否存在。

命令格式:ps -[选项]

应用场景:

显示进程mm7的状态或者可用与判断mm7进程是否存在

ps –ef | grep –i mm7

-e 显示所有进程,环境变量 -f 全格式

3、kill

用来终止一个进程

命令格式:kill –[sig] [pid]

kill -9 [pid] 表示强制杀死进程

应用场景:

强迫杀死进程ID为5432的进程

Kill -9 5432

4、du、df

du统计目录(或文件)所占磁盘空间的大小。

df检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。

命令格式:du [-sh] [目录或文件] 命令格式:df –lh

应用场景:

统计cattsoft目录下所有文件或文件佳的大小

du –sh /home/cattsoft/*

查看系统硬盘的使用情况

df –lh

5、su

切换用户的命令。

例如现在login的用户是A,但是用户想使用另一个用户身份来执行程序,这时候可以使用 su B或者 su - B

su - 与 su 的区别是,使用su - 时,用户的切换是完全切换,就是A切换到B的时候,会以B用户重新以登录流程执行相应的登录的脚本,读取相应用户设置的环境变量;如果是使用su 切换时,仅切换用户。

如果不接用户光使用su或者su - 时,默认将切换到root用户。

6、tar、zip

Linux用于打包和压缩的命令,打包和压缩是两个不同的过程。

命令格式:tar [-cxzvf] 文件与目录 ....

命令格式:zip [参数] [打包后的文件名] [需要打包的文件]

参数说明:

-c :建立一个压缩文件的参数指令(create 的意思); -x :解开一个压缩文件的参数指令!

-z :是否同时具有 gzip 的属性,亦即是否需要用 gzip 压缩。

-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程! -f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!

应用场景:

将src目录进行打包并压缩成src.tar.gz

tar –zcvf src.tar.gz src

解压已有的压缩包 src.tar.gz

tar –zxvf src.tar.gz

压缩src目录成src.zip

zip src.zip src

解压 src.zip

unzip src.zip

三、其它常用命令

1、让程序在后台运行

nohup ./mm7 >> /dev/null &

2、查看某端口是否在使用

netstat -an | grep 端口号

-a 显示所有连线中的Socket

-n 直接使用IP地址,而不通过域名服务器。

3、查看所有的端口,并显示对应的服务程序

netstat –ap

-p显示正在使用Socket的程序识别码和程序名称。

4、现场机器上次和下载文件

rz –be 上传文件

sz 文件名 下载文件

5、查找文件中包含某字符串的行数

grep –o ?字符串? 文件名 | wc –l

-o可以根据匹配筛选出某一匹配的部分

6、查找是否有名字apr开头的文件

find 要查找的目录 –name apr*

7、判断CallID是否唯一

cat cdr_20111011120000.log | awk -F '##' '{print $1}' | sort | uniq -c | sort | head Sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。

Uniq 检查文件中重复出现的行列,-c 每行行首加上本行在文件中出现的次数

8、ftp上传与下载文件命令

ftp 192.168.168.182 username: password: bin

cd 目录名 ls put get

bye

四、Vi常用命令

vi编辑器是所有Unix及Linux系统下标准的编辑器。

vi的基本概念

基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下: 1) 命令行模式command mode)

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。

2) 插入模式(Insert mode)

只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。 3) 底行模式(last line mode)

将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。

vi的基本操作 1.打开文件命令:

vi filename 打开或新建文件,并将光标置于第一行首

2.退出命令

:q 直接退出 :q! 不保存退出:wq 保存退出 :w 保存当前文件

3.光标移动命令(命令模式下):

h 光标左移一个字符 l 光标右移一个字符 j 光标下移一行 k 光标上移一行

w 光标右移一个字至字首 b 光标左移一个字至字首 e 光标右移一个字至字尾 0 光标移至当前行首 ^ 光标移至当前行首 $ 光标移至当前行尾 n+ 光标下移n 行 n- 光标上移n 行 H 光标移至屏幕顶行 M 光标移至屏幕中间行 L 光标移至屏幕最后行 ctrl + g 显示当前行号 n shift+ g 跳转到第n 行

4.屏幕翻滚类命令

Ctrl+u 向文件首翻半屏 Ctrl+d 向文件尾翻半屏 Ctrl+f 向文件尾翻一屏

Ctrl+b 向文件首翻一屏

5.插入类命令

i 在光标前 a 光标后 I 在当前行首 A 在当前行尾

o 在当前行之下新开一行 O 在当前行之上新开一行

6.删除替换字符

dw 删除单词

ndw 删除n 个单词 dd 删除当前行 ndd 删除n 行 d$ 删除至行尾

d^或d0 删除至行首

cw 删除单词,并进入插入状态

ncw 删除n 个单词,并进入插入状态 cc 删除当前行,并进入插入状态 ncc 删除n 行,并进入插入状态 c$ 删除至行尾,并进入插入状态

c^或c0 删除至行首,并进入插入状态

R 替换当前字符及其后的连续多个字符,直至按ESC 键 r 用输入的字符替换当前字符 x 删除光标后的一个字符 X 删除光标前的一个字符

7.复制黏贴撤销

yw 复制当前单词到缓冲区 nyw 复制n 个单词到缓冲区 yy 复制当前行到缓冲区 nyy 复制n 行到缓冲区

y$ 复制当前位置至行尾到缓冲区

y^或y0 复制当前位置至行首到缓冲区 p 将缓冲区的信息粘贴到光标的后面

将光标移到复制的首位置,按下v 进入试图模式,用hjkl 移动, 按y 复制,按p 粘贴 u 撤消最后执行的命令

Ctrl+R 恢复命令,也就是撤消掉撤消命令。

8.搜索及替换命令

/pattern 从光标开始处向文件尾搜索pattern ?pattern 从光标开始处向文件首搜索pattern n 在同一方向重复上一次搜索命令 N 在反方向上重复上一次搜索命令

:s/p1/p2/g 将当前行中所有p1 均用p2 替代

:n1,n2s/p1/p2/g 将第n1 至n2 行中所有p1 均用p2 替代 :g/p1/s//p2/g 将文件中所有p1 均用p2 替换 /pattern\\c 忽略大小写

:set ic 或者:set ignorecase 忽略大小写

:set noic 或者:set noignorecase 开启大小写

9.选项设置

使用:set 选项进行设置 all 列出所有选项设置情况 term 设置终端类型

ignorance 在搜索中忽略大小写

list 显示制表位(ctrl+i)和行尾标志($) number(nu) 显示行号

report 显示由面向行的命令修改过的数目 terse 显示简短的警告信息

warn 在转到别的文件时若没保存当前文件则显示no write 信息 nomagic 允许在搜索模式中,使用前面不带“\\”的特殊字符 nowrapscan 禁止vi 在搜索到达文件两端时,又从另一端开始__

常用操作

1、 想输入字符,按2、 3、 4、

i命令进入插入模式,坐下端会有提示

0跳到句首,$跳到行尾

yy负责当前行,p黏贴已复制的内容 dd删除当前行

5、

u撤销前一个操作

4、设置行号

:set nu

5、在文件中查找mm7单词的个数

:%s/mm7//gn

本文来源:https://www.bwwdw.com/article/20a7.html

Top