Linux基础知识部分的命令及任务整理Word格式文档下载.docx
《Linux基础知识部分的命令及任务整理Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《Linux基础知识部分的命令及任务整理Word格式文档下载.docx(23页珍藏版)》请在冰豆网上搜索。
..双点号—表示工作目录上层目录
-连字符—表示前一个工作目录
~波浪号—表示用户的家目录
mkdir创建目录(mkdir–p选项创建嵌套目录)
任务:
在当前目录下创建dirlevel01目录,同时在dirlevel01下创建dirlevel02目录。
mkdir–p/tmp/dirlevel01/dirlevel02
rmdir删除目录(只能删除空目录)
2.2列出文件和文件属性
ls列出文件(-a选项表示列出所有文件,-l选项表示以长格式列出文件详细属性信息,-al可以连用)
chmod修改文件访问的属性
chown[所有者][:
[组]]文件
2.3拷贝、移动、删除和创建文件
touch创建文件
cp拷贝文件
将/tmp目录下的文件file01文件拷贝到当前家目录中
将/tmp目录下的文件file01文件拷贝到当前家目录中,并将其重命名为file01-bak
将/tmp目录下的文件file02、file03、file04拷贝到当前用户家目录中
任务四:
将/tmp目录下的目录dir01目录拷贝到当前用户家目录中(-r选项表示拷贝整个目录)
任务五:
拷贝批量同名文件存在
任务六:
以root身份将/tmp目录中sample.sh文件拷贝到stu的家目录下,文件拥有者等属性不改变(-p选项使文件属性不变)
mv移动文件,可以实现文件重命名功能
将/tmp目录下的文件file05文件移动到当前用户家目录中
将当前用户家目录下的文件file05移动到当前用户家目录(即本目录下),文件名改为file05-rename
rm删除文件
将当前用户家目录下的file01文件删除
将当前用户家目录下的dir01目录删除(跟上-R选项)
2.4创建文件链接
ln命令–s选项表示创建符号链接
为/tmp目录下hello.sh创建一个名为hello-slink的符号链接。
为/tmp目录下的sample.txt文件创建一个硬链接sample-hl01。
2.5打包和压缩文件
tar打包文件命令,-c选项小时创建打包文件,-f选项跟着指定要创建的打包文件名,-tf查看打包文件中的文件名,--delete选项删除打包文件中的某个特定文件,-A选项合并两个打包文件,-x表示解包
将tmp目录下的一批文件打包为samplefile.tar。
将tmp目录下的sampledir01目录打包为sampledir01.tar
删除打包文件samplefile.tar中的一个文件删除
将samplefile.tar合并到sampledir01.tar文件中
将sampledir01.tar文件解包
gzip压缩命令,-d选项表示解压
压缩tmp目录下的sampledir01.tar文件
2.6查找文件
locate命令,需要先用updatedb命令更新数据库。
find命令
一、根据文件名来查找,条件选项为-name,后面跟上文件名
查找根目录下,名字为passwd的文件
扩展任务:
1、列出当前目录及子目录下所有文件和文件夹(find.)
2、在/home目录下查找以.txt结尾的文件名(find/home-name"
*.txt"
),忽略大小写(find/home-iname"
二、根据文件类型查找,条件选项为-type,后面跟上代表文件类型的字符查找
d目录文件,f普通文件,c字符设备文件,b块设备文件,l符号链接文件
查找bin目录下所有的符号链接文件
三、根据文件属性进行查找,相关选项有六个,分为三组(方法类同)
-mtime–mmin文件修改时间(天/分钟)
-ctime–cmin文件属性修改的时间(天/分钟)
-atime–amin文件被读取/执行时间(天/分钟)
•访问时间(-atime/天,-amin/分钟):
用户最近一次访问时间。
•修改时间(-mtime/天,-mmin/分钟):
文件最后一次修改时间。
•变化时间(-ctime/天,-cmin/分钟):
文件数据元(例如权限等)最后一次修改时间。
以第一组为例,-mtime单位是天
在/tmp目录下查找3天之内文件内容发生改变的文件
在/tmp目录下查找7天前文件内容曾发生改变的文件
在/tmp目录下查找在第4天前的那一天(当天)文件内容曾发生改变的文件
-mmin单位是分钟
在/tmp目录下查找在10分钟前文件内容曾发生改变的文件
任务七:
在/tmp目录下查找在一个小时之内文件内容曾发生改变的文件
四、根据文件大小进行查找,条件选项为-size,使用的大小单位是:
小写c——字节
小写k——1024字节
大写M——1024k
大写G——1024M
任务八:
在tmp目录下查找比3k字节小的文件
任务九:
在tmp目录下查找大小正好是10M字节的文件
任务十:
在tmp目录下查找比100字节大的文件
五、根据文件拥有者和从属用户组的属性查找,选项为
-user-uid
-group–gid
任务十一:
在tmp目录下查找拥有者是root用户的文件
任务十二:
在tmp目录下查找拥有者用户uid是500的文件
任务十三:
在tmp目录下查找从属于stu用户组的文件
任务十四:
在tmp目录下查找从属于gid为0的用户组文件
六、根据文件的权限进行查找,条件选项为-perm,后面跟的是一个八进制文件访问权限数值。
任务十五:
在tmp目录下查找754权限(文件拥有者可读可写可执行,文件从属组的用户可读可执行,其他用户可读)的文件
七、Find命令连用
使用“与-a”“或-o”“非!
”三种运算符链接查找条件,用圆括号把多个查找文件括起来。
任务十六:
在tmp目录下查找文件大小大于1k,小于1M,在30分钟内文件内容被修改过的普通文件。
1、找出/home下不是以.txt结尾的文件(find/home!
-name"
2、查找所有以abc开头并且不含.php扩展名的文件。
(find./test-name'
abc*'
!
-name'
*.php'
)建议文件名加上引号,否则容易出错。
3、查找所有以.php结尾或者以.txt结尾的文件。
(find-name'
-o-name'
*.txt'
4、当前目录及子目录下查找所有以.txt和.pdf结尾的文件(find.\(-name"
-o-name"
*.pdf"
\))
八、Find命令动作选项-exec
任务十七:
在tmp目录下查找文件大小大于1k,小于10M的普通文件,并将它们都删除。
任务十八:
在当前用户家目录下查找在10分钟内被修改过的目录文件,并将它们打包成与目录同名,后缀为.tar的打包文件。
拓展任务:
1、删除tmp目录下扩展名为.txt的文件(find/tmp-typef-name"
-execrm-f{}\;
2、删除目录,只要把-type后面的f改为d,并且在rm命令后面加上-r即可。
(find/tmp-typed-name"
dir*"
-execrm-r-f{}\;
2.7通配符
一、*代表任意长度字符串
将tmp目录下的文件后缀为.txt的所有文件都删除。
二、?
代表任意单个字符
列出bin目录下所有名字长度为4个字符,并以sh结尾的文件。
三、[]中括号
[c1—c2]表示匹配c1到c2字符序列中的任意单一字符,前提是c1到c2确实是一个有序的字符序列,如:
数字或者英文。
将tmp目录下名字以file字样打头,紧接着0-9之间的一个整数,以.txt结尾的文件拷贝到当前用户家目录下。
[c1,c2,……cn]表示匹配中括号之间字符列表中的任意单一字符。
将tmp目录下名字以script字样打头,紧接着a,1,x中的任意一个字符,以.sh结尾的文件的访问权限改为700。
四、{}大括号{string1,string2,……stringN}表示匹配string1,string2直至stringN这N个字符串中的某个字符串。
删除tmp目录下名字以string或者jiaoben字样打头,以.sh结尾的文件。
五、!
感叹号,通常与[]和{}一起连用,表示对其中内容的取反。
将tmp目录下名字以file字样打头,紧跟着一个除0到9之间数字之外的任意字符,以.txt结尾的所有文件打包成为一个叫file.tar的文件。
2.8查看文本文件内容
一、cat命令,适用于查看较小的文本文件,将文件的内容都输出在命令行中。
查看系统下的用户配置文件etc/passwd。
二、less命令,适用于查看较大的文本文件。
进入less后,键盘上下箭头用来上下翻行,pageup和pagedown用来上下翻页,“/关键字”可在文件中查找关键字文本,n跳转到下一个关键字,N跳转到上一个关键字,q退出less返回命令行。
查看var/log目录下的massages日志文件。
三、一对特殊的文件查看命令head和tail(头和尾巴)
head用于查看文件的头几行
查看var/log目录下的massages日志文件的头20行
Tail用于查看文件末尾几行。
查看var/log目录下的massages日志文件的后20行
3用好重定向和管道
3.1输入输出重定向
标准输出流stdout显示来自命令的输出,文件描述符是1
标准错误输出流stderr显示来自命令的错误输出,文件描述符是2
标准输入流stdin向命令提供输入,文件描述符是0
一、输出重定向
使用右箭头>
(覆盖文件原有内容)和双右箭头>
>
(保留文件原有内容,添加到原来内容的后面)来重定向标准输出。
“&
”与号右尖括号将命令的标准输出和错误输出重定向到一个文件中。
将ls命令标准输出重定向到当前目录stdout.txt文件中去。
应用例子一:
用文件输出重定向结合echo命令创建文本文件。
应用例子二:
用文件输出重定向来忽略命令错误输出(即执行某个命令但不希望在屏幕上显示命令的错误输出)
二、输入重定向,让命令从指定文件中获取输入,而非stdin键盘中获取输入。
使用左箭头<
和双左箭头<
<
来重定向标准输入。
将结合tr命令(用于从标准输入中替换特定字符,并将结果写入到标准输出)使用输入重定向。
结合sort命令(用于对文本文件内容按照规定字段进行排序)展示了输入重定向的一种特殊形式。
3.2管道
接受标准输入输出流的文本处理命令:
grep,cut,head,tail,less,more,wc,tr,sort
将ls命令的输出作为文件查看less的输入,能逐页逐行的查看ls命令的输出。
一、grep文本搜索工具
将ls命令的输出作为grep的输入,用于查找ls命令输出中带有”ssh”字样的行。
二、cut文本切割命令,用于切割文本文件或者标准输出中指定列并输出,-c选项按字符列切割文本,后面紧跟的数字表示切割的字符序列号。
-d选项后紧跟的符号表示文本中字段隔开用的分隔符,-f选项紧跟的数值表示切割的字段序列号。
切割输出当前用户家目录下install.log的前两列字符。
切割输入etc/passwd文件中第一个字段,字段用“:
”隔开。
三、wc文本统计命令,统计文本文件或者标准输出中的文本行数,单词数和字节数。
-l选项表示仅仅统计文本行数。
统计当前用户家目录下所有目录文件的数目。
统计bin和sbin目录下的所有文件数目。
4用好vi
4.1vi入门
vim命令打开编辑器,i表示进入插入编辑模式,esc键退出编辑回到一般模式,h左j下k上l右,x删除一个字符,dd删除整行,大J删除换行符,u撤销,ctrl+r取消撤销恢复原来状态,退出vim并保存文件内容用:
wq(:
进入命令模式,w保存,q退出vim),退出vim不保存用:
q!
(:
进入命令模式,q退出vim,!
强制退出不保存)
4.2vi初探
我们要完成的任务是这样的:
1.请在/tmp这个目录下建立一个名为vimtest的目录,进入vimtest这个目录当中,将/etc/man.config拷贝到本目录底下,使用vim打开这个文本文件;
2.在vim中设定一下行号;
:
setnu
3.移动到第58行行首,再向右移动30个字符,移动到第8行行尾,再向左移动3列,最后移动到文件末行;
gg,57j,30l,8G,$,3h,G
4.移动到第一行行首,并且向下搜寻一下“man”这个字符串;
gg,普通模式下/man,n和N跳转已查到的关键字
5.将50到100行之间的man改为MAN,并且一个一个挑选是否需要修改
:
50,100s/man/MAN/gc
6.复制51到60行这十行的内容,并且贴到最后一行之后;
50G,10yy,G,p
7.删除11到30行之间的20行;
去第29行首,并且删除15个字符;
10G,20dd,29G,15x
9.修改完之后,突然反悔了,要全部复原;
u或者:
e!
10.将这个文件另存成一个名为man.config.bak的文件;
wman.config.bak
11.在最后一行后插入当前目录下turtle.txt文件内容,并保存;
G,:
r./sample.txt,w
12.在不关闭man.config.bak的文件情况下,再次打开man.config;
(同时打开)
vim./man.config.bak./man.config,用:
n和:
N切换文件
13.将步骤11中在man.config.bak中插入的turtle.txt文件内容的第1列到第10列拷贝并粘贴到man.config中;
Ctrl+v,y,p
14.储存两个文件后离开vim。
wq
5管好用户
1、三类用户、主用户组和从属用户组
2、查看用户id和finger命令(安装finger命令,yuminstallfinger)
3、切换用户su命令-l选项(可简化为su–用户名)
4、创建用户useradd命令,-c用于指定用户备注,-u用于指定用户UID,-d用于指定用户家目录,-g用于指定主用户组,-G用于指定除主用户组外,用户从属的其他组用户组。
5、修改用户usermod命令,-l用于修改用户的用户名,-u用于修改用户UID,-c用于修改用户备注,-d用于修改用户家目录,-g用于修改主用户组,-G用于修改用户从属用户组。
-L选项暂时锁定用户,让其无法登陆系统,-U选项可以解锁用户。
6、删除用户userdel命令,-r选项把用户家目录一同删除。
7、创建用户组groupadd命令(groupaddstus),修改用户组groupmod命令,删除用户组groupdel命令
8、部分让渡根用户权限,用root用户修改/etc/sudoers文件,找到
rootALL=(ALL)ALL(第一字段root表示可以使用sudo命令的用户,第二字段“=”前表示用户登陆的主机名,“=”后表示可让渡权限的命令列表)
输入命令sudo–uroot授权的命令格式(如:
sudo–urootpasswdstu)
9、用户管理配置文件,第一组用户管理文件,/etc/passwd是系统花名册,系统所有用户都在这个文件中记录;
/etc/shadow是存储着用户密码等一些信息文件。
第二组是用户组管理文件,/etc/group是系统用户组花名册;
/etc/gshadow存储着用户组的一些信息。
6管好硬盘
6.1查看硬盘
如:
/dev/hda3表示在第一个IDE硬盘上的第3个主分区或者扩展分区
/dev/sdb6表示在第二个SCSI硬盘上的第2个逻辑分区
命令fdisk用于查看硬盘详细信息,如:
fdisk–l/dev/sda或fdisk–l
6.2分区和格式化硬盘
先给虚拟机添加一块硬盘,(安装时的硬盘为sda,后添加的这块硬盘为sdb)
1、对硬盘分区,其中最精简的工具fdisk,输入fdisk/dev/sdb进入分区界面,其中n表示新建分区(t表示修改分区文件类型,d表示删除分区),e表示扩展分区extended,p表示主分区primarypartition(1-4),输入分区大小+100G
2、格式化分区
mkfs命令,-t选项为其指定文件类型为ext4或者vfat,如mkfs–text4/dev/sdb1
mkswap命令,为交换分区创建文件系统。
6.3手动挂载分区
在根目录下出创建一个project_mooc目录,并在其下分别创建finished,material,shared,audio,video五个目录,分别挂载sdb1,sdb5,sdb6,sdb7和sdb8五个分区
挂载分区使用的命令是mount(只有根用户root有权限使用),需要跟两个参数,一个指定要挂载的设备名,也就是分区名,一个是指定的挂载点,-t选项表示指定挂载设备的文件系统类型。
-o选项用于指定分区挂载后的行为属性(读r写w执行x)mount–t分区类型–o挂载后行为分区名挂载点
mount–text4/dev/sdb1/project_mooc/finished
mount–text4–oro/dev/sdb5/project_mooc/material(ro表示readonly只读方式,rw表示可读可写)
mount不加参数,可用来查看挂载好的分区
卸载分区命令umount,只跟一个参数是卸载的设备名(分区名)或者是卸载的设备挂载点目录。
umount/dev/sdb8
注意:
1、请尽量将分区挂载到空目录上
2、勿将同一个分区多次挂载到不同的目录上
手动挂载分区,重启系统后失效
6.4自动挂载分区
自动开机挂载功能,通过/etc/fstab配置文件,用标签或者UUID来挂载分区
给分区添加标签命令e2label(e2label/dev/sdb5materrial-disk)
用blkid命令列出设备中的所有UUID。
7管好网络
一、常用网络命令
1、ifconfig命令查看网络接口。
-a选项查看所有主机上的网络接口,不论是否启用和配置好。
2、开启eth1网络接口的命令ifconfigeth1up
3、ipaddress查看IP命令
4、临时修改IP和掩码命令(重启失效)ifconfigeth1192.168.16.125netmask255.255.255.0
5、ping测试连通性,-c选项是返回次数,-i选项是时间间隔(ping–c5–i1172.30.24.207)
6、重启网络servicenetworkrestart
7、dig域名(dig)
二、配置TCP/IP参数,常用配置网络文件:
1)/etc/sysconfig/network设置主机名称及能否启动Network网关
2)/etc/sysconfig/network-scripts/ifcfg-eth0设置网卡参数的文件
3)/etc/modprobe.conf开机时用来设置加载内核模块的文件
4)/etc/resolv.conf设置DNSIP(解析服务器)的文件
5)/etc/hosts记录计算机IP对应的主机名称或主机别名
详细配置如下:
1、#vim/etc/sysconfig/network-scripts/ifcfg-eth0//修改网卡配置
DEVICE=eth0#描述网卡对应的设备别名,例如ifcfg-eth0的文件中它为eth0
TYPE=Ethernet
ONBOOT=yes#系统启动时是否设置此网络接口,设置为yes时,系统启动时激活此设备。
如果你只有一个网卡而且设置为no就不能上网了。
NM_CONTROLLED=no
BOOTPROTO=static#设置网卡获得ip地址的方式,可能的选项为static,dhcp或bootp,分别对应静态指定的ip地址,通过dhcp协议获得的ip地址,通过bootp协议获得的ip地址.
IPADDR=12.168.1.2#如果设置网卡获得ip地址的方式为静态指定,此字段就指定了网卡对应的ip地址
NETMASK=255.255.255.0#子网掩码
GATEWAT=192.168.1.1#网关地址,与/etc/sysconfig/network中的网关一致
DNS=192.168.1.1#指定DNS服务器,与/etc/resolv.conf中DNS一致
保存退出:
2、#vim/etc/sysconfig/network//修改网关
NETWORKING=yes(表示系统是否使用网络,一般设置为yes。
如果设为no,则不能使用网络,而且很多系统服务程序将无法启动)
HOSTNAM