Linux入门知识.docx
- 文档编号:3940077
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:37
- 大小:2.53MB
Linux入门知识.docx
《Linux入门知识.docx》由会员分享,可在线阅读,更多相关《Linux入门知识.docx(37页珍藏版)》请在冰点文库上搜索。
Linux入门知识
Linux(centOS)
2.2.1虚拟机安装VMWARE
2.2.2centOS安装
Linux目录结构:
/:
根目录,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中
/bin:
/usr/bin:
可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等。
/boot:
放置linux系统启动时用到的一些文件。
/boot/vmlinuz为linux的内核文件,以及/boot/gurb。
建议单独分区,分区大小100M即可
/dev:
存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱mount/dev/cdrom/mnt。
/etc:
系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有/etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d修改配置文件之前记得备份。
注:
/etc/X11存放与xwindows有关的设置。
/home:
系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示当前用户的家目录,~test表示用户test的家目录。
建议单独分区,并设置较大的磁盘空间,方便用户存放数据
/lib:
/usr/lib:
/usr/local/lib:
系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助,比较重要的目录为/lib/modules。
/lost+found:
系统异常产生错误时,会将一些遗失的片段放置于此目录下,通常这个目录会自动出现在装置目录下。
如加载硬盘于/disk中,此目录下就会自动产生目录/disk/lost+found
/mnt:
/media:
光盘默认挂载点,通常光盘挂载于/mnt/cdrom下,也不一定,可以选择任意位置进行挂载。
/opt:
给主机额外安装软件所摆放的目录。
如:
FC4使用的Fedora社群开发软件,如果想要自行安装新的KDE桌面软件,可以将该软件安装在该目录下。
以前的Linux系统中,习惯放置在/usr/local目录下
/proc:
此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有/proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/*等
/root:
系统管理员root的家目录,系统第一个启动的分区为/,所以最好将/root和/放置在一个分区下。
/sbin:
/usr/sbin:
/usr/local/sbin:
放置系统管理员使用的可执行命令,如fdisk、shutdown、mount等。
与/bin不同的是,这几个目录是给系统管理员root使用的命令,一般用户只能"查看"而不能设置和使用。
/tmp:
一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下
/srv:
服务启动之后需要访问的数据目录,如www服务需要访问的网页数据存放在/srv/www内
/usr:
应用程序存放目录,/usr/bin存放应用程序,/usr/share存放共享数据,/usr/lib存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。
/usr/local:
存放软件升级包。
/usr/share/doc:
系统说明文件存放目录。
/usr/share/man:
程序说明文件存放目录,使用manls时会查询/usr/share/man/man1/ls.1.gz的内容建议单独分区,设置较大的磁盘空间
/var:
放置系统执行过程中经常变化的文件,如随时更改的日志文件/var/log,/var/log/message:
所有的登录文件存放目录,/var/spool/mail:
邮件存放的目录,/var/run:
程序或服务启动
后,其PID存放在该目录下。
建议单独分区,设置较大的磁盘空间
2.2.3Linux常用命令
2.2.3.1Shell
计算机硬件是由运算器、控制器、存储器、输入/输出设备等设备组成的,而能够让机箱内各种设备各司其职东西就叫做——系统内核。
内核负责驱动硬件、管理活动和分配/管理硬件资源,如此说来系统内核对计算机来讲可真的是太重要了,所以它不能直接让用户操作。
因为用户不能直接控制硬件也不能直接操作内核,于是便需要基于“系统调用接口”开发出的程序/服务来满足用户日常工作了。
“Shell“——也可称为“壳”,充当的是人与内核(硬件)的翻译官,用户将一些命令“告诉”Shell,它就会调用相应的程序服务执行工作啦,很厉害吧~~现在包括红帽系统在内的许多热门Linux系统主流默认字符Shell是Bash(Bourne-AgainSHell)。
Bash的优势:
1.默认保存历史命令(可用上下键翻看)
2.命令仅需输入前几位就可以用tab键补全
3.强大的批处理脚本
4.实用的环境变量
命令行通配符
配符包括:
通配符
含义
*
匹配零个或多个字符。
?
匹配任意单个字符。
[0-9]
匹配范围内的数字。
[abc]
匹配已出的任意字符。
2.2.3.2执行命令与查看帮助
既然有了如此好用的“翻译官”,那么接下来就有必要好好学习下如何更高效的和它沟通了~
要想准确的、高效的完成工作,不能够光靠命令本身,还应该根据实际情况来组合各种命令选择和命令参数:
命令名称[命令参数][命令对象]
注意:
命令名称、命令参数、命令对象之间请用空格键分隔。
比较好理解的是命令对象,命令对象一般是指要处理的目标(普通文件/目录文件/用户等等),而命令参数对于新手来讲比较麻烦,因为这个值会随命令的不同和环境情况的不同而异,所以在参数选择搭配上需要长时间的经验积累才可以。
命令的参数可以选用长格式(完整的选项名称)也可选用短格式(单个字母的缩写),分别用”—“与”–“做前缀。
长格式如:
man –help
短格式如:
man -h
当遇到了一个陌生命令后如何知道它有那些可用的参数?
这时就可以用man命令了。
man命令的操作按键:
按键
用处
空格键
向下翻一页。
[PageDown]
向下翻一页。
[PageUp]
向上翻一页。
[HOME]
直接前往首页。
[END]
直接前往尾页。
/关键词
从上至下搜索某个关键词,如"/linux"。
?
关键词
从下至上搜索某个关键词,如"?
linux"。
n
定位到下一个搜索到的关键词。
N
定位到上一个搜索到的关键词。
q
退出帮助文档。
2.2.3.3常用系统工作命令
2.2.3.3.1echo
echo命令用于在终端显示字符串或变量,格式为:
“echo[字符串|变量]”。
将echo命令的字符串输出到终端:
[root@mylinux~]#echoMylinux.Com
Mylinux.Com
用echo命令查看SHELL变量的值(前面有$符号):
[root@mylinux~]#echo$SHELL
/bin/bash
查看本机主机名:
[root@mylinux~]#echo$HOSTNAME
Mylinux.Com
2.2.3.3.2date
date命令用于显示/设置系统的时间或日期,格式为:
”date[选项][+指定的格式]”。
强大的date命令能够按照指定格式显示系统的时间或日期,只需键入”+”号开头的字符串指定其格式,详细格式如下:
参数
作用
%t
跳格[TAB键]
%H
小时(00-23)
%I
小时(01-12)
%M
分钟(00-59)
%S
秒(00-60)
%X
相当于%H:
%M:
%S
%Z
显示时区
%p
显示本地AM或PM
%A
星期几(Sunday-Saturday)
%a
星期几(Sun-Sat)
%B
完整月份(January-December)
%b
缩写月份(Jan-Dec)
%d
日(01-31)
%j
一年中的第几天(001-366)
%m
月份(01-12)
%Y
完整的年份
查看当前的系统时间:
[root@mylinux~]#date
MonAug2416:
11:
23CST2015
按照”年-月-日小时:
分钟:
秒”的格式:
[root@mylinux~]#date"+%Y-%m-%d%H:
%M:
%S"
2015-08-2416:
29:
12
设置系统时间为2015年9月1日8点半:
[root@mylinux~]#date-s"201509018:
30:
00"
TueSep108:
30:
00CST2015
查看当前系统时间:
[root@mylinux~]#date
TueSep108:
30:
01CST2015
查看本地系统时区:
[root@mylinux~]#date"+%Z"
CST
查看星期几:
[root@mylinux~]#date"+%A"
Tuesday
输入当前是上午还是下午:
[root@mylinuxDesktop]#date"+%p"
AM
判断今天是一年中的第几天:
[root@mylinux~]#date"+%j"
2.2.3.3.2reboot
reboot命令用于重启系统(仅root用户可以使用),格式为:
”reboot”。
重启计算机:
[root@mylinux~]#reboot
2.2.3.3.3wget
wget命令用于使用命令行下载网络文件,格式为:
“wget[参数]下载地址”。
参数
作用
-b
后台下载模式。
-O
下载到指定目录。
-t
最大尝试次数。
-c
断点续传
-p
下载页面内所有资源,包括图片、视频等。
-r
递归下载
2.2.3.4系统状态检测命令
2.2.3.4.1ifconfig
ifconfig用于获取网卡配置与网络状态等信息:
格式为”ifconfig[网络设备][参数]”。
查看本机当前的网卡配置与网络状态等信息:
[root@mylinux~]#ifconfig
2.2.3.4.2ping
ping用于测试与其它的PC网络连接是否正常:
[root@mylinux~]#ping主机IP
2.2.3.4.3path
alias命令用于设置命令的别名,格式为:
“alias别名=命令”。
例如担心复制文件时误将文件覆盖,那么执行aliascp=”cp-i”则每次覆盖都会询问用户。
unalias命令用于取消命令的别名,格式为:
“unalias别名”。
设置cp命令的别名:
[root@mylinux~]#aliascp="cp-i"
取消cp命令的别名:
[root@mylinux~]#unaliascp
那当用户执行了一条”ls“命令后发生了什么事情?
步骤一:
检查是否为alias别名命令。
步骤二:
由bash判断其是“内部命令”还是“外部命令”。
内部命令:
属于解释器内部的
外部命令:
独立于解释器外的命令文件
步骤三:
通过$PATH变量中定义的路径进行命令查找。
查看$PATH变量的方法:
echo$PATH
/usr/local/bin:
/usr/local/sbin:
/usr/bin:
/usr/sbin:
/bin:
/sbin
如果您想知道某个命令是“内部命令”还是“外部命令”?
执行执行“type命令名字”,解释器就会告诉你呦~
$PATH变量是“解释器的助手”,它负责告诉bash用户要执行的命令可能存放在那里,然后bash就会乖乖的在这些目录里寻找。
在变量$PATH中目录之间用冒号“:
”间隔开了,当然您也能自定义一些命令存放目录,比如/root/bin。
查看当前的$PATH变量内容:
[root@mylinux~]#echo$PATH
/usr/local/bin:
/usr/local/sbin:
/usr/bin:
/usr/sbin:
/bin:
/sbin
为变量增加新的值:
[root@mylinux~]#PATH=$PATH:
/root/bin
查看此时的$PATH变量内容:
[root@mylinux~]#echo$PATH
/usr/local/bin:
/usr/local/sbin:
/usr/bin:
/usr/sbin:
/bin:
/sbin:
/root/bin
2.2.3.4.4uname
uname命令用于查看系统内核版本等信息,格式为:
“uname[-a]”。
查看系统的内核名称、内核发行版、内核版本、节点名、硬件名称、硬件平台、处理器类型、操作系统等信息:
[root@mylinux~]#uname–a
2.2.3.4.5who
who命令用于查看当前登入主机的用户情况,格式为:
”who[参数]”。
查看当前登入主机用户的情况:
[root@mylinux~]#who
2.2.3.5工作目录切换命令
2.2.3.5.1pwd
pwd命令用于显示当前的工作目录,格式为:
“pwd[选项]”。
参数
作用
-P
显示真实路径。
(即非快捷链接的地址)
查看当前的工作路径:
[root@mylinuxetc]#pwd
2.2.3.5.2cd
cd命令用于切换工作路径,格式为:
“cd[目录名称]”。
参数
作用
-
切换到上一次的目录,如“cd-”
~
切换到“家目录”,如"cd~"
~username
切换到其他用户的家目录,如"cd~teak"
..
切换到上级目录,如"cd.."
切换进/etc目录中:
[root@mylinux~]#cd/etc
切换进/bin目录中:
[root@mylinuxetc]#cd/bin
返回上级目录(即/etc目录):
[root@mylinuxbin]#cd-
/etc
返回用户自己的家目录:
[root@mylinuxetc]#cd~
[root@mylinux~]#
2.2.3.5.3ls
ls命令用于查看目录中有那些文件,格式为:
“ls[选项][文件]”。
查看当前目录下有那些文件(长格式):
[root@mylinuxetc]#ls-al
参数
作用
-a
查看全部文件(包括隐藏文件)
-d
仅看目录本身
-h
易读的文件容量(如k,m,g)
-l
显示文件的详细信息
查看/etc目录中有那些文件:
[root@mylinux~]#ls/etc
查看/etc目录的权限与属性:
[root@mylinux~]#ls-ld/etc
drwxr-xr-x.132rootroot8192Jul1010:
48/etc
追加-h参数,以K/M/G为单位显示容量:
[root@mylinux~]#ls-ldh/etc
drwxr-xr-x.132rootroot8.0KJul1010:
48/etc
2.2.3.6文本文件编辑命令
2.2.3.6.1cat
cat命令用于查看纯文本文件(较短的),格式为:
“cat[选项][文件]”。
查看文本文件:
[root@mylinux~]#cat文件名
参数
作用
-n
显示行号
-b
显示行号(不包括空行)
-A
显示出“不可见”的符号,如空格,tab键等等
2.2.3.6.2more
more命令用于查看纯文本文件(较长的),格式为:
“more[选项]文件”。
查看文本文件:
[root@mylinux~]#more文件名
参数
作用
-数字
预先显示的行数(默认为一页)
-d
显示提示语句与报错信息
2.2.3.6.3head
head命令用于查看纯文本文档的前N行,格式为:
“head[选项][文件]”。
查看文本文件前20行:
[root@mylinux~]#head-n20文件名
参数
作用
-n10
显示10行
-n-10
正常输出(如cat命令),但不显示最后的10行
2.2.3.6.4tail
tail命令用于查看纯文本文档的后N行,格式为:
“tail[选项][文件]”。
查看文本文件后20行:
[root@mylinux~]#tail-n20文件名
参数
作用
-n10
显示后面的10行
-f
持续刷新显示的内容
2.2.3.6.5wc
wc命令用于统计指定文本的行数、字数、字节数,格式为“wc[参数]文本”。
参数
作用
-l
只显示行数
-w
只显示单词数
-c
只显示字节数
统计当前系统中的用户个数:
[root@mylinux~]#wc-l/etc/passwd
2.2.3.6.6grep
grep命令用于对文本进行搜索,格式为:
“grep[选项][文件]”。
搜索某个关键词:
“grep关键词文本文件”
参数
作用
-b
将可执行文件(binary)当作文本文件(text)来搜索
-c
仅显示找到的次数
-i
忽略大小写
-n
显示行号
-v
反向选择——仅列出没有“关键词”的行。
搜索在/etc/passwd中”/sbin/nologin”出现的行,找出系统中不允许登陆的用户。
[root@mylinux~]#grep/sbin/nologin/etc/passwd
2.2.3.7文件目录管理命令
2.2.3.7.1touch
touch命令用于创建空白文件与修改文件时间,格式为:
“touch[选项][文件]”。
我们可以用“touchtest”轻松的创建出一个名字为test的空白文档,所以这个功能无须介绍。
对于在Linux中的文件有三种时间:
更改时间(mtime):
内容修改时间(不包括权限的)
更改权限(ctime):
更改权限与属性的时间
读取时间(atime):
读取文件内容的时间
如果黑客执行了touch-d“2daysago”test,便将访问与修改时间修改为了2天前(伪造了自己没有动过该文件的假象)。
参数
作用
-a
近修改“访问时间”(atime)
-m
近修改“更改时间”(mtime)
-d
同时修改atime与mtime
-t
要修改成的时间[YYMMDDhhmm]
2.2.3.7.2mkdir
mkdir用于创建空白的文件夹,格式为:
“mkdir[选项]目录”。
创建文件夹:
[root@mylinux~]#mkdir文件夹名
参数
作用
-m=MODE
默认的文件目录权限,如:
"-m755"
-p
连续创建多层目录(若文件夹已存在则忽略)
-v
显示创建的过程
创建一个名字叫mylinux的目录:
[root@mylinux~]#mkdirmylinux
使用ls命令查看该目录的权限属性等信息:
[root@mylinux~]#ls-ldmylinux/
一次创建5个目录a/b/c/d/e:
[root@mylinuxmylinux]#mkdir-pa/b/c/d/e
查看目录的属性,验证是否成功:
[root@mylinuxmylinux]#ls-lda/b/c/d/e/
drwxrwxr-x.2rootroot6Aug2910:
16a/b/c/d/e/
2.2.3.7.3cp
cp命令用于复制文件或目录,格式为:
“cp[选项]源文件目标文件”。
复制命令的三种情况:
目标文件是一个目录,会将源文件复制到该目录中。
目标文件是一个文件,会将源文件覆盖该文件。
目标文件不存在,将会复制源文件并修改为目标文件的名称(重命名)。
参数
作用
-p
保留原始文件的属性
-d
若对象为"链接文件",则保留该"链接文件"的属性
-r
递归持续复制(用于目录)
-i
若目标文件存在则询问是否覆盖
-a
相当于-pdr(p,d,r为上述的参数)
创建一个名为install.log的文件:
[root@mylinux~]#touchinstall.log
将install.log复制为x.log:
[root@mylinux~]#cpinstall.logx.log
查看到确实出现了文件x.log
[root@mylinux~]#ls
install.logx.log
2.2.3.7.4mv
mv命令用于移动文件或改名,格式为:
“mv[选项]文件名[目标路径|目标文件名]”。
将文件aaa重命名为bbb:
[root@mylinux~]#mvaaabbb
2.2.3.7.5rm
rm命令用于删除文件或目录,格式为:
“rm[选项]文件”。
删除普通文件并提示确认信息:
“rm文件名”
删除普通文件或目录文件,不提示:
“rm-rf文件或目录名”
参数
作用
-f
忽略警告信息
-i
删除前先询问
-r
删除文件夹
查看当前目录下的文件:
[root@mylinux~]#ls
install.logx.log
删除install.log文件,输入”y”即确认:
[root@mylinux~]#rminstall.log
rm:
removeregularemptyfile‘install.log’?
y
删除x.log文件而无需确认:
[root@mylinux~]#rm-rfx.log
Linux系统中还有一个rmdir命令,它不同于rm-rf命令会删除一切,而是仅删除空目录,遇到目录内有文件时则报错。
2.2.3.8打包压缩文件命令
2.2.3.8.1tar
tar命令用于对文件打包压缩或解压,格式为:
“tar[选项][文件]”。
打包并压缩文件:
“tar-czvf压缩包名.tar.gz文件名”
解压并展开压缩包:
“tar-xzvf压缩包名.tar.gz”
参数
作用
-c
创建压缩文件
-x
解开压缩文件
-t
查看压缩包内有那些文件
-z
用Gzip压缩或解压
-j
用bzip2压缩或解压
-v
显示压缩或解压的过程
-f
目标文件名
-p
保留原始的权限与属性
-P
使用绝对路径来压缩
-C
指定解压到的目录
将/etc目录内文件打包并通过gzip格式压缩:
[root@mylinux~]#tarczvfetc.tar.gz/etc
将etc.tar.gz解压到/root/etc目录中:
[root@mylinuxost~]#mkdir/root/etc
开始解压etc.tar.gz文件:
[root@mylinux~]#tar-xzvf
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 入门 知识