Linux常用命令

来源:互联网 发布:舒缦水暖床垫淘宝网 编辑:程序博客网 时间:2024/05/29 18:03

最近在慕课网上看了《Linux达人养成计划1》的免费课程,课件讲得非常好,通俗易懂,简明扼要。现总结如下:
一、命令基本格式
[root@localhost ~]#
其中:
root:当前登录用户
localhost:主机名,localhost是Linux的默认主机名
~:当前所在的家目录,即用户的初始登录位置。对于管理员用户来说,家目录是根下的一级目录:/root;对于普通用户(例如user1)来说,家目录是home下的二级目录:/home/user1。在建立这个用户的同时,就会生成这个用户的家目录。
#:超级用户的提示符,普通用户的提示符是$

ps:
1.Linux中管理员账号是root,Windows中是admin。
2.Windows中局域网内的主机名不能重名,而Linux则没有这个限制。

命令格式:
命令 [选项] [参数]
注意:
1.个别命令的使用不遵循此格式
2.当有多个选项时,可以写在一起
3.简化选项与完整选项 例如:-a 等于 –all

命令1>>查询目录中的内容:ls
ls [选项] [文件或目录]
选项:
-a 显示所有文件,包括隐藏文件
-l 显示详细信息
-d 显示目录属性,要看的是目录本身的属性,而不是该目录下的文件属性
-h 人性化显示文件大小,即将字节数转化为K、M等单位显示
-i 显示inode。每个文件都有一个id号。
ps:
1. ll命令是ls -l命令的别名
2. 详细信息中文件的权限:
-rw-r–r–
权限默认10位,首位表示文件类型,
后面三位表示所有者(u)的权限、接着的后三位表示所属组(g)的权限、最后三位表示其他人(o)的权限
权限有:r读、w写、x执行
Linux的文件类型有7种:-文件、d目录、l软链接(即快捷方式)、块文件、字符文件、Socket文件、管道文件。
ls -l命令效果
ls-lh命令效果
二、文件处理命令
命令2>>创建目录:mkdir -p [目录名]
说明:
-p 递归创建
命令英文原意:make directories

命令3>>切换目录:cd [目录名]
简化操作:
cd ~ 进入当前用户的家目录
cd 进入当前用户的家目录
cd - 进入上次目录
cd .. 进入上一级目录,相对路径
cd . 进入当前目录(没实际用处)
命令英文原意:change directory

命令4>>查询所在目录位置:pwd
命令英文原意:print working directory

命令5>>删除空目录:rmdir
命令英文原意:remove empty directories
此命令在实际中很少用到

命令6>>删除文件或目录:rm
rm -rf [文件或目录]
选项:
-r 删除目录
-f 强制,不用确认
让Linux自杀的命令: rm -rf /

命令7>>复制命令:cp [选项] [原文件或目录] [目标目录]
命令英文原意:copy
选项:
-r 复制目录
-p 连带文件属性复制
-d 若源文件是链接文件,则复制链接属性
-a 相当于-pdr,目标文件和原文件将一模一样,包括上次修改时间等等属性
实例:
cp xxx.log /temp/ 表示将xxx.log文件复制到temp目录下
cp xxx.log /temp/yyy.log 表示将xxx.log文件复制到temp目录下,并且改名为yyy.log

命令8>>剪切或改名命令:mv
mv [原文件或目录] [目标目录]
如果原文件和目标文件在同一个目录下,就是改名命令
如果不在同一个目录下,就是剪切命令

Linux常用目录的作用
/ 根目录
/bin 命令保存目录(普通用户就可以读取的命令)
/boot 启动目录,启动相关文件
/dev 设备文件保存目录
/etc 配置文件保存目录
/home 普通用户的家目录
/lib 系统库保存目录
/mnt 系统挂载目录
/media 挂载目录
/root 超级用户的家目录
/tmp 临时目录
/sbin 命令保存目录(超级用户才能使用的目录)
/proc 直接写入内存的
/sys
/usr 系统软件资源
/usr/bin/ 系统命令(普通用户)
/usr/sbin/ 系统命令 (超级用户)
/var 系统相关文档内容

ps:
1.根目录下的bin和sbin,usr目录下的bin和sbin,这四个目录都是用来保存系统命令的。sbin是只有超级用户(root用户)才可以执行。
2.系统准备了三个空目录:mnt、media、misc,来作为外接存储设备的盘符。
3.proc和sys目录不能直接操作,这两个目录保存的是内存的挂载点。

命令9>>链接命令:ln
ln -s [原文件] [目标文件]
命令英文原意:link
功能描述:生成链接文件
选项:
-s 创建软链接,不加该选项的创建的是硬链接

硬链接特征:
1.拥有相同的i节点和存储block块,可以看做是同一个文件
2.可通过i节点识别
3.不能跨分区
4.不能针对目录使用,只有文件才可以创建硬链接

软链接特征:
1.类似Windows快捷方式
2.软链接拥有自己的i节点和Block块,但是数据块中只保存原文件的文件名和i节点号,并没有实际的文件数据
3.lrwxrwxrwx l指软链接类型,文件权限都为rwx
4.修改任意文件,另一个都改变,与硬链接的相同。
5.删除原文件,软链接不能使用

ps:
格式化是为了写入文件系统,把空间分为数据块。使用若干个数据块来存储一个文件。每个分区上存有一个文件索引表,每条数据对应一个文件,记录着文件的inode号、存储的数据块、时间等信息。

三、文件搜索命令
命令10>>文件搜索命令locate
命令格式:locate 文件名
在指定的后台数据库中按文件名搜索,搜索速度更快,数据库为/var/lib/mlocate,该数据库非实时更新。默认一天一更新。
可以使用updatedb命令来主动更新数据库。缺点:只能按文件名搜索。locate是根据配置文件来搜索的。

命令11>>命令搜索命令whereis与which
whereis 命令名
搜索命令所在路径及帮助文档所在位置,只能查系统命令
选项:
-b 只查找可执行文件
-m 只查找帮助文件

which [文件名或命令名]
搜索命令所在路径及别名,与whereis非常类似,区别在于可以查看别名。
whereis和which搜索命令的路径,依赖与环境变量PATH中定义的路径的。

命令12>>文件搜索命令find
find [搜索范围] [搜索条件]
用来搜索文件。
例子:find / -name install.log 在整个根目录下搜索文件名为install.log的文件
注意事项:
1.避免大范围搜索,会非常耗费系统资源
2.find是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配。

Linux中的通配符
* 匹配任意内容
? 匹配任意一个字符
[] 匹配任意一个中括号内的字符

示例:
find [目录] -iname install.log
说明:其中的i表示不区分大小写,Linux是严格区分大小写的。
find [目录] -user root
说明:搜索是root用户的所有者的文件
find [目录] -nuser
说明:查找没有所有者的文件,情况1:内核产生的文件有可能没有所有者,情况2:外来文件,来自光盘、移动硬盘等。
find [目录] -mtime +10
说明:查找10天前修改的文件
-10 10天内修改的文件
10 10天当天修改的文件
+10 10天前修改的文件

atime 文件访问时间 access
ctime 改变文件属性的时间 change
mtime 修改文件内容 modify

find . -size 25k
find . -size 25M
说明:在当前目录下搜索文件大小是25KB或者25MB的文件,其中的.表示当前目录。其中不能不写单位,不写单位表示多少个扇区数据块。

find . -inum 262422
说明:在当前目录下搜索i节点是262422的文件

find /etc -size +20k -a -size -50k
说明:查找/etc/目录下,大于20KB并且小于50KB的文件
-a and,逻辑与
-o or,逻辑或

find /etc -size +20k -a -size -50k -exec ls -lh {} \;
说明:-exec [命令] {}\;对搜索结果再次执行操作;

命令13>>字符串搜索命令grep
grep [选项] 字符串 文件名
在[文件]中找包含[字符串]的行
选项:
-i 忽略大小写
-v 排除指定字符串

find命令与grep命令的区别:
1.find命令:在系统中搜索符合条件的文件名,如果需要匹配,使用通配符匹配,通配符是完全匹配。
2.grep命令:在文件当中搜索符合条件的字符串,如果需要匹配,使用正则表达式进行匹配,正则表达式是包含匹配。

ps:
locate的配置文件:/etc/updatedb.conf配置文件
1.PRUNE_BIND_MOUNTS = “yes”
作用:开启搜索限制;no则筛选规则都不生效
2.PRUNEFS=
作用:搜索时,不搜索的文件系统
3.PRUNENAMES=
作用:搜索时,不搜索的文件类型
4.PRUNEPATHS=
作用:搜索时,不搜索的路径

四、帮助命令
命令13>>帮助命令man
man [级别] 命令
说明:获取指定命令的帮助,manual

man的级别
1 查看命令的帮助
2 查看可被内核调用的函数的帮助
3 查看函数和函数库的帮助
4 查看特殊文件的帮助(主要是/dev目录下的文件)
5 查看配置文件的帮助
6 查看游戏的帮助
7 查看其它杂项的帮助
8 查看系统管理员可用命令的帮助
9 查看和内核相关文件的帮助

man -f 命令
说明:相当于 whatis 命令,查看命令有哪些等级

man -k 命令
说明:相当于 apropos 命令,查看和命令相关的所有帮助

命令14>>命令 –help
说明:查看命令的选项

命令15>>help 命令
说明:shell内部命令帮助,只要是whereis找不到命令所在位置的命令,都是shell内部命令

五、压缩与解压缩命令
Linux常用压缩格式:
.zip .gz .bz2
.tar.gz .tar.bz2

命令16>>.zip格式压缩
zip 压缩文件名 源文件
说明:压缩文件
zip -r 压缩文件名 源目录
说明:压缩目录,压缩文件名中需要写清楚文件后缀,如xxx.zip

命令17>>.zip格式解压缩
unzip 压缩文件
说明:解压缩.zip文件

命令18>>.gz格式压缩
gzip 源文件
说明:压缩为.gz格式的压缩文件,源文件会消失
gzip -c 源文件 > 压缩文件
说明:压缩为.gz格式,源文件保留,使用输出重定向的方式来做到不删除源文件。-c是压缩结果输出,不写入源文件里。
例如:gzip -c cangls > cangls.gz
gzip -r 目录
说明:压缩目录下所有的子文件,即单个压缩一个个子文件,但是不能压缩目录

命令19>>.gz格式解压缩
gzip -d 压缩文件
说明:解压缩文件
gunzip 压缩文件
说明:解压缩文件

命令20>>.bz2格式压缩
bzip2 源文件
说明:压缩为.bz2格式,不保留源文件
bzip2 -k 源文件
说明:压缩之后保留源文件
注意:bzip2命令不能压缩目录

命令21>>.bz2格式解压缩
bzip2 -d 压缩文件
说明:解压缩,-k保留压缩文件
bunzip2 压缩文件
说明:解压缩
ps:
.gz是Linux的专有压缩格式,但是在Windows下是可以解压缩的

打包命令tar
tar -cvf 打包文件名 源文件
选项:
-c 打包
-v 显示过程
-f 指定打包后的文件名

解打包命令
tar -xvf 打包文件名
选项:
-x 解打包

命令22>>.tar.gz压缩格式
其实.tar.gz格式是先打包为.tar格式,再压缩为.gz格式
tar -zcvf 压缩包名.tar.gz 源文件1 源文件2
说明:可以打包多个源文件,或者打包目录
选项:
-z 压缩为.tar.gz格式
tar -zxvf 压缩包名.tar.gz
选项:
-x 解压缩.tar.gz格式

命令23>>.tar.bz2压缩格式
tar -jcvf 压缩包名.tar.bz2 源文件
选项:
-z 压缩为.tar.bz2格式
tar -jxvf 压缩包名.tar.bz2 -C 目录
说明:使用-C指定解压后存放的目录
选项:
-x 解压缩.tar.bz2格式
ps:
压缩文件里是可以带着路径的,如 /xxx/压缩文件名

六、关机与重启命令
命令24>>关机命令shutdown
[root@localhost ~]# shutdown [选项] 时间
选项:
-c 取消前一个关机命令
-h 关机
-r 重启
时间写为:now 表示,立刻关机

其他关机命令
[root@localhost ~]# halt
[root@localhost ~]# poweroff
[root@localhost ~]# init 0
这三种关机命令都不够安全,建议还是用shutdown

其他重启命令
[root@localhost ~]# reboot
[root@localhost ~]# init 6
说明:reboot可以用,也比较安全;init 6尽量就不要用了

系统运行级别
0 关机
1 单用户,最小系统模式,相当于windows中的安全模式
2 不完全多用户,不含NFS服务
3 完全多用户,字符界面
4 未分配
5 图形界面
6 重启
可以使用命令:
[root@localhost ~]# runlevel
说明:查询系统当前运行级别

命令25>>退出登录命令
[root@localhost ~]# logout

七、其他常用命令
命令26>>挂载命令mount
[root@localhost ~]# mount
说明:查询系统中已经挂载的设备,挂载就相当于windows中的分配盘符

[root@localhost ~]# mount -a
说明:依据配置文件/etc/fstab的内容,自动挂载;a是all的意思;光盘、U盘不能加入自动挂载配置里,因为一旦忘了插入光盘或U盘,启动过程就可能失败

[root@localhost ~]# mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点
选项:
-t 文件系统:加入文件系统类型来指定挂载的类型,可以ext3、ext4、iso9660等文件系统
-o 特殊选项:可以指定挂载的额外选项

特殊选项:

参数 说明 atime/noatime 更新访问时间/不更新访问时间。访问分区文件时,是否更新文件的访问时间,默认为更新 async/sync 异步/同步,默认为异步 auto/noauto 自动/手动,mount -a命令执行时,是否会自动安装/etc/fstab文件内容挂载,默认为自动 defaults 定义默认值,相当于rw、suid、dev、exec、auto、nouser、async这七个选项 exec/noexec 执行/不执行,设定是否允许在文件系统中执行可执行文件,默认是exec允许 remount 重新挂载已经挂载的文件系统,一般用于指定修改特殊权限 rw/ro 读写/只读,文件系统挂载时,是否具有读写权限,默认是rw suid/nosuid 具有/不具有SUID权限,设定文件系统是否具有SUID和SGID的权限,默认是具有 user/nouser 允许/不允许普通用户挂载,设定文件系统是否允许普通用户挂载,默认是不允许,只有root用户可以挂载分区 usrquota 写入代表文件系统支持用户磁盘配额,默认不支持 grpquota 写入代表文件系统支持组磁盘配额,默认不支持

命令27>>卸载命令
[root@localhost ~]# umount 设备文件名或挂载点

命令28>>查看登录用户信息
w [用户名]
who [用户名]
说明:who命令输出的信息更加简单

命令29>>查看当前登录和过去登录的用户信息
last
说明:last命令默认是读取/var/log/wtmp文件数据
输出的信息包括登录时间、登出时间;可以方便地查到自己的考勤记录

lastlog
说明:lastlog命令默认是读取/var/log/lastlog文件内容,查看的是所有用户的最后一次登录时间

其他常用命令:
touch [文件名] 创建空文件
vi [文件] 打开编辑文件内容
cat [文件] 查看文件内容
echo [内容] >> [目标文件] 往目标文件里写入内容
例子:
echo $PATH 查看环境变量的内容

whoami 想要知道我是谁

原创粉丝点击