首页 > 系统相关 >Linux常用命令

Linux常用命令

时间:2022-11-28 18:33:34浏览次数:45  
标签:文件 tar 常用命令 命令 搜索 Linux 挂载 目录


目录

  • ​​目录​​
  • ​​命令基本格式​​
  • ​文件处理命令​
  • ​​目录或文件处理​​
  • ​​Linux中常见目录​​
  • ​​链接命令​​
  • ​搜索命令​
  • ​​文件搜索命令​​
  • ​​命令搜索命令​​
  • ​​字符串搜索命令​​
  • ​​find命令与grep命令的区别​​
  • ​​帮助命令​​
  • ​​压缩与解压缩命令​​
  • ​​关机和重启命令​​
  • ​其他常用命令​
  • ​​挂载命令​​
  • ​​用户登录查看和用户交互命令​​
  • ​​修改系统时间​​


命令基本格式

  命令提示符:​​[root@localhost~]#​​​
  其中:

内容

说明

root

当前登陆用户

localhost

主机名

~

当前所在目录(家目录)。如果是root用户登录,那么它的家目录就是 /root,如果是其他用户登录,如user1用户,则它的家目录就是 /home/user1

#

超级用户的提示符。普通用户的提示符是$。

  (注意:在Windows内局域网是不允许有相同主机名的计算机存在,否则它们俩之间是不能上网的,谁也不能通信,局域网内ip地址不能重叠,主机名也不能重叠。Linux中的主机名在局域网内也可以相同。)

  命令格式:​​命令 [选项] [参数]​

  注意:

    个别命令使用不遵循此格式

    当有多个选项时,可以写在一起

    简化选项与完整选项 -a等于–all

    

如:查询目录中内容:ls

​ls [选项] [文件或目录]​

选项:

  -a 显示所有文件,包括隐藏文件

  -l 显示详细信息

  -d 查看目录属性

  -h 人性化显示文件大小

  -i 显示inode(可以说是文件的id号)

(文件权限:

  如:-rw-r–r–. (.代表ACL权限)

    通过权限位第1位区分文件类型。

    文件类型(Linux中文件类型只有7种)(最常见的3种文件类型:-代表文件;d代表目录;l代表软链接文件,软链接就是快捷方式)

    rw- r– r–

    u所有者 g所属组 o其他人

    r读 w写 x执行

Linux常用命令_搜索


  其中1表示引用计数,只在我们的硬链接中有用。

  在Linux中 . 开头的文件名是隐藏文件。

(Ctrl+L 清屏)

文件处理命令

目录或文件处理

(1)建立目录:mkdir
​​​mkdir [-p] [目录名]​​​
  -p 递归创建
(2)切换所在目录:cd(change directory)
简化操作:

命令

功能

cd ~ 或者 cd

进入当前用户的家目录

cd -

进入上次目录

cd ..

进入上一级目录

cd .

进入当前目录

  相对路径:参照当前所在目录,进行查找;绝对路径:从根目录开始指定,一级一级递归查找。在任何目录下,都能进入指定位置。
(3)查询所在目录位置:pwd(print working directory)
(4)删除空目录:rmdir(remove empty directories)
​​​rmdir [目录名](只能删除空白目录)​​​
(5)删除文件或目录:rm
​​​rm [-rf] [文件或目录]​​​
选项:-r 删除目录; -f 强制
如: ​​​rm -rf /test/*​​​ 其中*表示删除的是test目录下的所有内容
  ​​​rm -rf /test/​​​ 表示的是删除test目录
(6)复制命令:cp
​​​cp [选项] [原文件或目录] [目标目录]​​​
选项:
  -r 复制目录
  -p 连带文件属性复制
  -d 若原文件是链接文件,则复制链接属性
  -a 相当于 -pdr
注:
  ll命令 == ls -l命令
  date命令:显示系统时间
(7)剪切或改名命令:mv
​​​mv [原文件或目录] [目标目录]​

Linux中常见目录

目录

作用

/

根目录

/bin

命令保存目录(普通用户就可以读取的命令)

/boot

启动目录,启动相关文件

/dev

设备文件保存目录

/etc

配置文件保存目录

/home

普通用户的家目录

/lib

系统库保存目录

/mnt

系统挂载目录

/media

挂载目录

/root

超级用户的家目录

/tmp

临时目录

/sbin

命令保存目录(超级用户才能使用的目录)

/proc、/sys

直接写入内存的

/usr

系统软件资源目录

/usr/bin/

系统命令(普通用户)

/usr/sbin/

系统命令(超级用户)

/var

系统相关文档内容

  注:1)根目录下的bin和sbin,usr目录下的bin和sbin,这四个目录都是用来保存系统命令的。2)proc和sys目录不能直接操作,这两个目录保存的是内存的挂载点。

链接命令

​ln [-s] [原文件] [目标文件]​​​
功能描述:生成链接文件;选项:-s 创建软链接。
  硬链接特征:
1. 拥有相同的i节点(​​​ls -i 文件​​​命令可以查看i节点)和存储的block块,可以看做是同一个文件;
2. 可通过i节点识别;
3. 不能跨分区;
4. 不能针对目录使用。
  使用硬链接方式创建的文件同原文件相比:修改任何一方文件的内容都会影响另外一方;删除其中一个文件都不影响另外一个文件的数据。
  软链接特征:
1. 类似Windows快捷方式;
2. 软链接拥有自己的i节点和block块,但是数据块中只保存原文件的文件名和i节点号,并没有实际的文件数据;
3. ​​​lrwxrwxrwx​​ l 表示 软链接,软链接文件权限都为 rwxrwxrwx,但访问该文件时,权限还要看原文件的权限
4. 修改任意文件,另一个都会改变;
5. 删除原文件,软链接不能使用。
  注:做软链接时,原文件的路径一定要写绝对路径!

搜索命令

文件搜索命令

(1)​​locate​​​命令
​​​locate 文件名​​​:在后台数据库中按文件名搜索,搜索速度更快。
  ​​​locate​​​命令所搜索的后台数据库:​​/var/lib/mlocate​​​(默认自动一天一更新);我们可以使用​​updatedb​​​命令手动更新数据库。
  ​​​locate​​​命令是根据​​/etc/updatedb.conf​​这个配置文件进行搜索的:

Linux常用命令_linux_02

  • ​PRUNE_BIND_MOUNTS = "yes"​​ 表示开启搜索限制;
  • ​PRUNEFS =​​ 表示搜索时,不搜索的文件系统;
  • ​PRUNENAMES =​​ 表示搜索时,不搜索的文件类型;
  • ​PRUNEPATHS =​​ 表示搜索时,不搜索的路径。

(2)​​find​​​命令
​​​find [搜索范围] [搜索条件]​​​:搜索文件。
如:​​​find / -name install.log​​​。
  避免大范围搜索,会非常耗费系统资源;
  find是在系统当中搜索符合条件的文件名,需要文件名完全匹配。使用通配符后可以进行模糊查询。
Linux中的通配符

通配符

说明

*

匹配任意内容

?

匹配任意一个字符

[]

匹配任意一个中括号内的字符

如:
​​​find /root -name "ab*"​​​:在​​/root​​​目录下查找文件名以ab开头的文件或目录。(匹配“ab”)
​​​find /root -name "ab?"​​​:在​​/root​​​目录下查找以ab开头的3个字符命令的文件或目录。(不匹配“ab”)
​​​find /root -name "ab[cd]"​​​:在​​/root​​​目录下查找文件名为​​abc​​​或​​abd​​的文件或目录。

如:​​find /root -iname install.log​​​:不区分大小写根据文件名进行搜索。
​​​find /root -user root​​​:按照所有者搜索。这里表示按root用户搜索其所拥有的文件。
​​​find /root -nouser​​​:查找没有所有者的文件。
注:没有所有者的文件一般都是垃圾文件,我们可以手动把它们删除。除了下面两种情况,第一种,由系统内核产生的文件,如​​​/proc​​​和​​/sys​​​目录下的文件,文件可能没有所有者;第二种,外来接入的U盘、光盘等,此外里面的文件如果由Windows产生则不存在所有者。(Windows系统不是没有文件所有者这个概念,而是它忽略了这个概念。)
​​​find /var/log/ -mtime +10​​​:查找10天前修改的文件。
选项:
  ​​​-atime​​​:文件访问时间
  ​​​-ctime​​​:改变文件属性
  ​​​mtime​​​:修改文件内容
参数,如:
  -10:10天内修改的文件
  10:10天当天修改的文件
  +10:10天前修改的文件
​​​find . -size 25k​​​:查找文件大小为25KB的文件。这里查找的是当前目录下。
参数,如:
  -25k:小于25KB的文件
  25:等于25KB的文件
  +25k:大于25KB的文件
注:可以搜索以MB为单位的文件,如​​​find . -size 2M​​​。
​​​find . inum 234567​​​:查找i节点为234567的文件。(通过​​ls -i [文件名]​​​可以查看文件的i节点)
​​​find /etc -size +20k -a -size -50k​​​:查找​​/etc/​​​目录下,大于20KB并且小于50KB的文件。
选项:
  -a(and):逻辑与,两个条件都要满足
  -o(or):逻辑或,两个条件满足一个即可
​​​find /etc -size +20k -a -size -50k -exec ls -lh {} \;​​​:查找​​/etc/​​​目录下,大于20KB并且小于50KB的文件,并显示详细信息。其中​​-exec 命令 {} \;​​​表示将前一个命令的结果作为参数执行​​-exec​​​后面的这条命令。此外​​-ok 命令 {} \;​​也具有相同的功能,不同的是,对每次命令结果作为后面命令的参数执行前会询问用户是否执行,输入y则执行。

命令搜索命令

(1)搜索命令的命令​​whereis​​​
​​​whereis 命令名​​​:搜索命令所在路径及帮助文档所在位置。
选项:
  -b:只查找可执行文件所在路径
  -m:只查找命令的帮助文件所在路径
(2)搜索命令的命令​​​which​​​
​​​which 命令名​​​:搜索命令所在路径及别名。
注:​​​whereis​​​和​​which​​​命令搜索的都是系统命令。
(3)PATH环境变量
- PATH环境变量:定义的是使用命令时系统搜索命令的路径,同样也是​​​whereis​​​和​​which​​搜索命令时查找的路径。

[root@localhost ~]# echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/wml/.local/bin:/home/wml/bin

字符串搜索命令

(1)搜索字符串命令​​grep​​​
​​​grep [选项] 字符串 文件名​​​:在文件当中匹配符合条件的字符串。
选项:
  -i 忽略大小写
  -v 排除指定字符串

find命令与grep命令的区别

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

帮助命令

(1)帮助命令​​man​​​
获取指定命令的帮助。
  ​​​man​​的级别

级别

说明

1

查看命令的帮助

2

查看可被内核调用的函数的帮助

3

查看函数和函数库的帮助

4

查看特殊文件的帮助(主要是/dev目录下的文件)

5

查看配置文件的帮助

6

查看游戏的帮助

7

查看其它杂项的帮助

8

查看系统管理员可用命令的帮助

9

查看和内核相关文件的帮助

​man -f 命令​​​(相当于 ​​whatis 命令​​​):查看命令拥有哪几个级别的帮助。
如:
  ​​​man 5 passwd​​​
  ​​​man 4 null​​​
  ​​​man 8 ifconfig​​​
​​​man -k 命令​​​(相当于​​apropos 命令​​​):查看和命令相关的所有帮助。
(2)选项帮助
​​​命令 --help​​​:获取命令选项的帮助。
如:​​​ls --help​​​。
(3)shell内部命令帮助
​​​help shell内部命令​​​:获取shell内部命令的帮助。
如:
  ​​​whereis cd​​​:确定是否是shell内部命令。如果没有输出命令的可执行文件,说明命令为内部命令。
  ​​​help cd​​​:获取内部命令帮助。
(4)详细命令帮助info
​​​info 命令​​​
显示结果后,通过按键操作,如:
  回车:进入子帮助页面(带有*号的标记处回车)
  u:进入上层页面
  n:进入下一个帮助小节
  p:进入上一个帮助小节
  q:退出

压缩与解压缩命令

  • 常用压缩格式:​​.zip​​​、​​.gz​​​、​​bz2​​​;​​.tar.gz​​​、​​.tar.bz2​​。

(一)​​.zip​​​格式
  (1)​​​.zip​​​格式压缩
​​​zip 压缩文件名 源文件​​​:压缩文件。
​​​zip -r 压缩文件名 源目录​​​:压缩目录。
  (2)​​​.zip​​​格式解压缩
​​​unzip 压缩文件名​​​:解压缩​​.zip​​​文件。
(二)​​​.gz​​​格式
  (1)​​​.gz​​​格式压缩
​​​gzip 源文件​​​:压缩为​​.gz​​​格式的压缩文件,源文件会消失。
​​​gzip -c 源文件 > 压缩文件​​​:压缩为​​.gz​​​格式,源文件保留。
​​​gzip -r 目录​​​:压缩目录下所有的子文件,但是不能压缩目录。
  (2)​​​.gz​​​格式解压缩
​​​gzip -d 压缩文件​​​:解压缩文件。
​​​gunzip 压缩文件​​​:解压缩文件。
​​​gunzip -r 压缩目录​​​:解压缩目录,会解压被压缩目录中的子文件。
(三)​​​.bz2​​​格式
  (1)​​​.bz2​​​格式压缩
​​​bzip2 源文件​​​:压缩为​​.bz2​​​格式的文件,不保留源文件。
​​​bzip2 -k 源文件​​​:压缩之后保留源文件。
  注意:bzip2命令不能压缩目录。
  (2)​​​.bz2​​​格式解压缩
​​​bzip2 -d 压缩文件​​​:解压缩文件,-k保留压缩文件。
​​​bunzip2 压缩文件​​​:解压缩文件,-k保留压缩文件。
(四)​​​.tar.gz​​​格式和​​.tar.bz2​​​格式
  (1)打包命令​​​tar​​​
​​​tar -cvf 打包文件名 源文件​​​
选项:
  -c 打包
  -v 显示过程
  -f 指定打包后的文件名
如:​​​tar -cvf tmp.tar tmp​​​。
  (2)解打包命令
​​​tar -xvf 打包文件名​​​
选项:
  -x 解打包
如:​​​tar -xvf tmp.tar​​​。
  (3)​​​.tar.gz​​​压缩格式
  其实​​​.tar.gz​​​格式是先打包为​​.tar​​​格式,再压缩为​​.gz​​​格式。
​​​tar -zcvf 压缩包名.tar.gz 源文件​​​
选项:
  -z 压缩为​​​.tar.gz​​​格式
​​​tar -zxvf 压缩包名.tar.gz​​​
选项:
  -x 解压缩​​​.tar.gz​​​格式
  (4)​​​.tar.bz2​​​压缩格式
​​​tar -jcvf 压缩包名.tar.bz2 源文件​​​
选项:  
  -z 压缩为​​​.tar.bz2​​​格式
​​​tar -jxvf 压缩包名.tar.bz2​​​
选项:  
  -x 解压缩​​​.tar.bz2​​​格式
如:
​​​tar -jxvf tmp.tar.bz2 -C /home/user1/​​​:压缩文件到指定目录。
​​​tar -zcvf test.tar.gz tmp1 tmp2​​​:压缩多个文件。
​​​tar -zcvf /tmp/test.tar.gz tmp1 tmp2​​​:压缩多个文件,并将压缩成功后的压缩包放置在​​/tmp/​​​目录下。
​​​tar -ztvf test.tar.gz​​:查看压缩包里面的内容,但不解压。

关机和重启命令

(1)​​shutdown​​​命令
​​​shutdown [选项] 时间​​​
选项:
  -c 取消前一个关机命令
  -h 关机
  -r 重启
如:
​​​shutdown -r now​​​:立即重启。
​​​shutdown -r 00:30​​​:指定某个时间后重启。运行该命令后,终端会“卡住”,被暂停使用。
​​​shutdown -r 00:30 &​​​:指定某个时间后重启,但不“卡住”终端。其中&表示将当前命令放入系统后台执行,不占用当前的操作终端。
(2)其他关机命令
​​​halt​​​
​​​poweroff​​​
​​​init 0​​​
  这几个关机命令都不太安全,在关机时并不会正确帮我们保存服务。
(3)其他重启命令
​​​reboot​​​(相对安全)
​​​init 6​​​
  上面​​​init 0​​​和​​init 6​​中的0和6表示什么呢?系统运行级别。

系统运行级别

说明

0

关机

1

单用户

2

不完全多用户,不含NFS服务

3

完全多用户

4

未分配

5

图形界面

6

重启

​runlevel​​​:查询系统运行级别。如结果为:​​N 3​​​。第一个表示进入当前系统运行级别的上一个级别,N表示null,也就是一开机就进入了3级别。第二个数字3表示当前级别。
​​​cat /etc/inittab​​​;修改系统默认运行级别。如结果为:​​id:3:initdefault:​​​。
(4)退出登录命令
​​​logout​

其他常用命令

挂载命令

(1)查询与自动挂载
​​​mount​​​:查询系统中已经挂载的设备。
​​​mount -a​​​:依据配置文件​​/etc/fstab​​​的内容,自动挂载。
(2)挂载命令格式
​​​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

重新挂载已经挂载的文件系统,一般用于指定修改特殊权限

suid/nosuid

具有/不具有SUID权限,设定文件系统是否具有SUID和SGID的权限,默认是具有

user/nouser

允许/不允许普通用户挂载,设定文件系统是否允许普通用户挂载,只有root可以挂载分区

usrquota

写入代表文件系统支持用户磁盘配额,默认不支持

grpquota

写入代表文件系统支持组磁盘配额,默认不支持

如:​​mount -o remount,noexec /home​​​ 重新挂载​​/home​​​分区,并执行​​noexec​​​,即分区中不可以运行可执行文件。(这里省略了 设备文件名 参数,因为 ​​/home​​​分区已经被挂载,系统知道​​/home​​​分区对应的设备文件名,所以这里可以省略。如果分区未被挂载,挂载时需要指明设备文件名。)
(3)挂载光盘
注:任何一个空目录都可以作为“盘符”。在Linux中,​​​/​​​根目录为我们准备了三个空目录,​​/media​​​、​​/mnt​​​、​​/misc​​​。
​​​mkdir /mnt/cdrom/​​​:建立挂载点。
​​​mount -t iso9660 /dev/sr0 /mnt/cdrom/​​​(或者 ​​mount -t iso9660 /dev/cdrom /mnt/cdrom/​​​ 因为 ​​/dev/cdrom​​​是​​/dev/sr0​​​的软连接。两种方式都可以,但是推荐前一种。):挂载光盘。可以简写为:​​mount /dev/sr0 /mnt/cdrom/​​​。
光盘的设备文件名是固定的,为​​​/dev/sr0​​​。
(4)卸载命令
​​​umount 设备文件名或挂载点​​​
如:​​​umount /mnt/cdrom​​​。
(5)挂载U盘
​​​fdisk -l​​​:查看U盘设备文件名。
​​​mount -t vfat /dev/sdb1/ /mnt/usb/​​​:执行挂载。(vfat指的是fat32文件系统。)
注:Linux默认不支持NTFS文件系统。解决方法:1)重新编译内核,添加NTFS支持;2)下载安装​​ntfs-3g​​。但是即便我们通过这两个方法实现了对NTFS文件系统的支持,在Linux中这个系统也只是只读的。

用户登录查看和用户交互命令

(1)查看登录用户信息
​​​w [用户名]​​​
命令输出:

  • USER:登录的用户名;
  • TTY:登录终端;
  • FROM:从哪个IP地址登录;
  • LOGIN@:登录时间;
  • IDLE:用户闲置时间;
  • JCPU:指的是和该终端连接的所有进程占用的时间。这个时间里并不包括过去的后台作业时间,但却包括当前正在运行的后台作业所占用的时间。
  • PCPU:是指当前进程所占用的时间;
  • WHAT:当前正在运行的命令。

​who [用户名]​​​
命令输出:用户名 登录终端 登录时间 [登录来源IP地址]。
(2)查询当前登录和过去登录的用户信息
(包括系统的重启时间)
​​​last​​​
​​​last​​​命令默认是读取​​/var/log/wtmp​​​文件数据。
命令输出:用户名 登录终端 登录IP 登录时间 退出时间 在线时间
(3)查看所有用户的最后一次登录时间
​​​lastlog​​​
​​​lastlog​​​命令默认是读取​​/var/log/lastlog​​​文件内容。
命令输出:用户名 登录终端 登录IP 最后一次登录时间。

修改系统时间

(需要root用户或者sudo权限)

sudo date -s MM/DD/YY # 修改日期
sudo date -s hh:mm:ss # 修改时间

  在修改时间以后,修改硬件CMOS的时间:

sudo hwclock --systohc # 非常重要,如果没有这一步的话,后面时间还是不准

或者

sudo hwclock -w

  使用​​date​​修改系统时间后,可能会没有效果,那么可能需要取消自动从互联网同步时间才可以。如下:

timedatectl set-ntp 0

  开启同步则:

timedatectl set-ntp 1


标签:文件,tar,常用命令,命令,搜索,Linux,挂载,目录
From: https://blog.51cto.com/u_15894233/5893370

相关文章

  • Linux中的用户管理
    目录​​目录​​​​概述​​​​关于用户组的配置文件​​​​关于用户的配置文件​​​用户和用户组的基本命令​​​用户组操作​​​​用户操作​​​用户和用户组的进......
  • Linux中的计划任务Crontab
    目录​​目录​​​​介绍​​​​安装并检查Crontab服务​​​​入门栗子​​​Crontab的基本组成​​用户任务调度​​​crontab命令的使用及相关文件​​​​Crontab的任......
  • Linux安装tesseract教程
    前言因为之前做一个登陆获取Cookie来记录登陆状态的功能时。需要识别登陆时的验证码。原本是在本地测试,后来上线那么没办法也就需要在Linux环境下再安装一下Tesseract-OCR......
  • Linux实验2:CENTOS7下的用户管理和权限设置
    一、实验目的掌握创建用户和用户组的方法;掌握文件的权限设置方法。二、实验任务1.新增加一个组名为student,密码为123。2.新增加一个用户名为zhouxingchi,其附属组......
  • Linux
    1.在第三步前得先进入到redis文件里cd redis...然后再安装gcc 在linux启动进入src再命令  Ctrlc停止进程想让前台霸屏的服务弄到后台的方法,让redis服务到后......
  • Linux:CentOS release 8.5 安装Mysql5.7
    添加Mysqlyum存储库下载安装软件包#下载软件包wgethttps://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm#安装软件包rpm-Uvhmysql80-commun......
  • 第五周(ssh服务,samba服务,Linux上布置网站)
    一:ssh服务1:开启ssh服务测试Linux是否开启ssh服务。systemctl status ssh  显示ssh服务并没有开启,此时我们需要开启ssh服务systemctlst......
  • linux grep shell相关
     ​​http://www.2cto.com/os/201307/224496.html​​​​http://wenda.so.com/q/1365651781067621​​grep​​http://blog.sina.com.cn/s/blog_406127500101dljv.html​......
  • Linux 下的 systemctl 启动/关闭/启用/禁用服务
    Linux下的systemctl启动/关闭/启用/禁用服务1、启动服务systemctlstart<服务名>2、停止服务systemctlstop<服务名>3、重启服务systemctlrestart<服务名>......
  • Linux软连接和硬链接
    1.Linux链接概念Linux链接分两种,一种被称为硬链接(HardLink),另一种被称为符号链接(SymbolicLink)。默认情况下,ln命令产生硬链接。【硬连接】硬连接指通过索引节点来进行连接。......