Linux命令
2022-04-06 10:20:15 81 举报
AI智能生成
Linux命令是一组用于与操作系统进行交互的指令,它们可以在终端窗口中输入并执行。这些命令可以帮助用户完成各种任务,如文件管理、系统配置、进程管理等。Linux命令通常具有简洁明了的名称,如“ls”用于列出目录内容,“cd”用于切换目录,“mkdir”用于创建新目录,“rm”用于删除文件等。此外,许多Linux命令还支持选项和参数,以便用户根据需要调整其功能。例如,“ls -l”可以以长格式列出目录内容,而“rm -r”可以递归删除目录及其所有内容。总之,熟练掌握Linux命令对于有效地使用和管理Linux系统至关重要。
作者其他创作
大纲/内容
用户组
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建
groupadd
新建用户组
groupadd <选项>
groupadd group1
此命令向系统中增加了一个新组group1
新组的组标识号是在当前已有的最大组标识号的基础上加1
-g
groupadd -g
groupadd -g 101 group2
此命令向系统中增加了一个新组group2,同时指定新组的组标识号是101。
-o
一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同
groupdel
删除用户组
groupde
groupdel
groupdel group1
newgrp
用户可以在用户组之间切换
newgrp
newgrp root
将当前用户切换到root用户组
centOS的观察
uname -r # 查看核心版本
uname -m # 查看作业系统的位元版本
档案系统
磁盘和目类的容量
df:列出档案系统的整体磁碟使用量;
-a :列出所有的档案系统,包括系统特有的/proc 等档案系统;
du:评估档案系统的磁碟使用量(常用在推估目录所占容量)
-a :列出所有的档案与目录容量,因为预设仅统计目录底下的档案量而已。
-h :以人们较易读的容量格式(G/M) 显示;
-s :列出总量而已,而不列出每个各别的目录占用容量;
-S :不包括子目录下的总计,与-s 有点差别。
-k :以KBytes 列出容量显示;
-m :以MBytes 列出容量显示;
Symbolic Link (软链接,,符号连结,亦即是捷径)
ln [-sf] 来源档目标档
-s 软链接(符号链接)
-b 删除,覆盖以前建立的链接
ln -s log2013.log link2013
为log2013.log文件创建软链接link2013,如果log2013.log丢失,link2013将失效
为log2013.log文件创建软链接link2013,如果log2013.log丢失,link2013将失效
磁盘的分割、格式化、检验与挂载
lsblk [-dfimpt] [device]
-d :仅列出磁碟本身,并不会列出该磁碟的分割资料
-f :同时列出该磁碟内的档案系统名称
-i :使用ASCII 的线段输出,不要使用复杂的编码(再某些环境下很有用)
-m :同时输出该装置在/dev 底下的权限资料(rwx 的资料)
-p :列出该装置的完整档名!而不是仅列出最后的名字而已。
-t :列出该磁碟装置的详细资料,包括磁碟伫列机制、预读写的资料量大小等
挂载与卸载
mount -a
umount [-fn] 装置档名或挂载点
Linux 系统常见的压缩指令
gzip [-cdtv#] 档名
-c :将压缩的资料输出到屏幕上,可透过资料流重导向来处理;
-d :解压缩的参数;
-t :可以用来检验一个压缩档的一致性~看看档案有无错误;
-v :可以显示出原档案/压缩档案的压缩比等资讯;
-# :# 为数字的意思,代表压缩等级,-1 最快,但是压缩比最差、-9 最慢,但是压缩比最好!预设是-6
xz [-dtlkc#] 档名
-d :就是解压缩啊
-t :测试压缩档的完整性,看有没有错误
-l :列出压缩档的相关资讯
-k :保留原本的档案不删除~
-c :同样的,就是将资料由屏幕上输出的意思!
-# :同样的,也有较佳的压缩比的意思!
bzip2 [-cdkzv#] 档名
tar 可以将多个目录或档案打包成一个大档案,同时还可以透过gzip/bzip2/xz 的支援,将该档案同时进行压缩
tar [-z|-j|-J] [cv] [-f 待建立的新档名] filename... <==打包与压缩
-c :建立打包档案,可搭配-v 来察看过程中被打包的档名(filename)
-t :察看打包档案的内容含有哪些档名,重点在察看『档名』就是了;
-x :解打包或解压缩的功能,可以搭配-C (大写) 在特定目录解开
特别留意的是, -c, -t, -x 不可同时出现在一串指令列中。
-z :透过gzip 的支援进行压缩/解压缩:此时档名最好为*.tar.gz
-j :透过bzip2 的支援进行压缩/解压缩:此时档名最好为*.tar.bz2
-J :透过xz 的支援进行压缩/解压缩:此时档名最好为*.tar.xz
特别留意, -z, -j, -J 不可以同时出现在一串指令列中
-v :在压缩/解压缩的过程中,将正在处理的档名显示出来!
-f filename:-f 后面要立刻接要被处理的档名!建议-f 单独写一个选项啰!(比较不会忘记)
-C 目录:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。
Linux 帐号管理与ACL 权限设定
job control 的管理
直接将指令丢到背景中『执行』的"&"(该账户离线了就不会继续在后台继续运行)
管理背景当中的工作: kill
kill -signal %jobnumber
-9 :立刻强制删除一个工作;
-15:以正常的程序方式终止一项工作。与-9 是不一样的。
离线管理问题
nohup [指令与参数] <==在终端机前景中工作
nohup [指令与参数] & <==在终端机背景中工作
程序管理
程序的观察
ps :将某个时间点的程序运作情况撷取下来
ps aux <==观察系统所有的程序资料
-a :不与terminal 有关的所有process ;
-u :有效使用者(effective user) 相关的process ;
x :通常与a 这个参数一起使用,可列出较完整资讯。
ps -lA <==也是能够观察所有系统的资料
l :较长、较详细的将该PID 的的资讯列出;
-A :所有的process 均显示出来,与-e 具有同样的效用;
ps axjf <==连同部分程序树状态
j :工作的格式 (jobs format)
-f :做一个更为完整的输出。
top:动态观察程序的变化 top [-d 数字] | top [-bnp]
-d :后面可以接秒数,就是整个程序画面更新的秒数。预设是5 秒;
-b :以批次的方式执行top ,还有更多的参数可以使用喔!
通常会搭配资料流重导向来将批次的结果输出成为档案。
-n :与-b 搭配,意义是,需要进行几次top 的输出结果。
-p :指定某些个PID 来进行观察监测而已。
系统资源的观察
free :观察内存使用情况 free [-b|-k|-m|-g|-h] [-t] [-s N -c N]
-b :直接输入free 时,显示的单位是Kbytes,我们可以使用b(bytes), m(Mbytes)
k(Kbytes), 及g(Gbytes) 来显示单位喔!也可以直接让系统自己指定单位(-h)
-t :在输出的最终结果,显示实体记忆体与swap 的总量。
-s :可以让系统每几秒钟输出一次,不间断的一直输出的意思!对于系统观察挺有效!
-c :与-s 同时处理~让free 列出几次的意思~
uname:查阅系统与核心相关资讯 uname [-asrmpi]
-a :所有系统相关的资讯,包括底下的资料都会被列出来;
-s :系统核心名称
-r :核心的版本
-m :本系统的硬体名称,例如i686 或x86_64 等;
-p :CPU 的类型,与-m 类似,只是显示的是CPU 的类型!
-i :硬体的平台(ix86)
netstat :追踪网路或插槽档 netstat -[atunlp]
-a :将目前系统上所有的连线、监听、Socket 资料都列出来
-t :列出tcp 网路封包的资料
-u :列出udp 网路封包的资料
-n :不以程序的服务名称,以(port number) 来显示;
-l :列出目前正在网路监听(listen) 的服务;
-p :列出该网路服务的程序PID
查询已开启档案或已执行程序开启之档案
lsof :列出被程序所开启的档案档名 lsof [-aUu] [+d]
-a :多项资料需要『同时成立』才显示出结果时!
-U :仅列出Unix like 系统的socket 档案类型;
-u :后面接username,列出该使用者相关程序所开启的档案;
+d :后面接目录,亦即找出某个目录底下已经被开启的档案!
范例二:仅列出关于root 的所有程序开启的socket 档案 lsof -u root -a -U
使用-i:port来显示与指定端口相关的网络信息 lsof -i:8183
pidof :找出某支正在执行的程式的PID
-s :仅列出一个PID 而不列出所有的PID
-x :同时列出该program name 可能的PPID 那个程序的PID
认识系统服务(daemons)
1.win7上安装linux虚拟机
下载VMware
在百度搜索即可下载。它是收费的,所以可以先试用30天。有汉化版,安装步骤直接下一步就可以了,没什么特别注意的
下载CentOS的镜像文件
百度搜索CentOS就可以。一般镜像文件比较大,约4G左右,
用VMware新建虚拟机
选择CentOS的镜像文件就可以了。
启动虚拟机
就得到一个Linux操作系统的机器了
2.文件权限
档案的类型与权限之内容
改变文件的属性
chgrp:改变档案所属群组
chown:改变档案拥有者
chown root:root
chmod:改变档案的权限, SUID, SGID, SBIT等等的特性
文件与目录
ls
列出目录
-a
连同隐藏档( 开头为 . 的文件) 一起列出来
-d
仅列出目录本身,而不是列出目录内的文件数据
-l
长数据串列出,包含文件的属性与权限等等数据
cd
切换目录
Change Directory的缩写
cd /root/runoob/
绝对路径
cd ./runoob/
相对路径
pwd
显示目前所在的目录)
Print Working Directory的缩写
mkdir
创建新目录
mkdir
mkdir
mkdir test
创建一名为 test 的新目录
-p
mkdir -p drictory-name1/drictory-name2/drictory-name3/drictory-namet4
mkdir -p test1/test2/test3/test4
创建多层目录
-m
mkdir -m 711 mulu2
创建了munul2,并通过-m指定目录的权限
711:用户有读+写+执行的权限,即1+2+3=7
用户所在的组有读的权限,即1+0+0=1
其他用户有读的权限,即1+0+0=1
rmdir
删除空的目录
rmdir
rmdir runoob
-p
rmdir -p
rmdir -p test1/test2/test3/test4
连同上一级『空的』目录也一起删除
cp
复制文件或目录
cp -i
-i
cp -i ~/.bashrc /tmp/bashrc
rm
移除文件或目录
rm [-fir] 文件或目录
-i
互动模式,在删除前会询问使用者是否动作
rm -i bashrc
mv
移动文件与目录,或修改名称
mv [-fiu]
-i
若目标文件 (destination) 已经存在时,就会询问是否覆盖!
Filesystem Hierarchy Standard (FHS)
文件内容查阅及搜索
more
空白键(space):代表向下翻一页
Enter :代表向下翻『一行』;
:f :立刻显示出档名以及目前显示的行数;
b 或[ctrl]-b :代表往回翻页,不过这动作只对档案有用,对管线无用。
less (一页一页翻动)
空白键 :向下翻动一页;
[pagedown]:向下翻动一页;
[pageup] :向上翻动一页;
/字串 :向下搜寻『字串』的功能;
?字串 :向上搜寻『字串』的功能;
n :重复前一个搜寻(与/ 或? 有关!)
N :反向的重复前一个搜寻(与/ 或? 有关!)
g :前进到这个资料的第一行去;
G :前进到这个资料的最后一行去(注意大小写);
q :离开less 这个程式;
head (取出前面几行)
-n :后面接数字,代表显示几行的意思
tail (取出后面几行)
-n :后面接数字,代表显示几行的意思
-f :表示持续侦测后面所接的档名,要等到按下[ctrl]-c才会结束tail的侦测
/etc/man_db.conf 的第11 到第20 行
head -n 20 /etc/man_db.conf | tail -n 10
whereis
-l :可以列出whereis 会去查询的几个主要目录而已
-b :只找binary 格式的档案
-m :只找在说明档manual 路径下的档案
-s :只找source 来源档案
-u :搜寻不在上述三个项目当中的其他特殊档案
locate updatedb更新资料库
-i :忽略大小写的差异;
-c :不输出档名,仅计算找到的档案数量
-l :仅输出几行的意思,例如输出五行则是-l 5
-S :输出locate 所使用的资料库档案的相关资讯,包括该资料库纪录的档案/目录数量等
-r :后面可接正规表示法的显示方式
find [PATH] [option] [action]
find /home -user dmtsai
find / -name passwd
find / -name "*passwd*"
Vim文本编辑器
0 条评论
下一页