Linux常用命令大全

简介: pwd:显示当前路径rmdir 删除空目录ls 查看目录或文件信息vi 文本编辑器cp 复制mv 移动rm 删除文件或目录find 查找文件grep 过滤cat 显示文本文件内容

新手必须掌握的Linux常用命令

1.1、echo命令

[root@chenstudy ~]# echo chenchen
[root@chenstudy ~]# echo $SHELL/bin/bash

1649514887392.png

1.2、date命令

# 查看当前系统时间[root@chenstudy ~]# date20220409日 星期六 22:32:21 CST
# 按照“年-月-日 小时:分钟:秒”的格式查看当前系统时间[root@chenstudy ~]# date "+%Y-%m-%d %H:%M:%S"2022-04-0922:32:46
# 将当前系统的时间设置为2022年04月0922点36分[root@chenstudy ~]# date -s "20220409 22:36:00"20220409日 星期六 22:36:00 CST
# 再次使用date查看系统当前时间[root@chenstudy ~]# date20220409日 星期六 22:36:11 CST
# dtae "+j" 用来查看今天是当年中的第几天[root@chenstudy ~]# date "+%j"099

1649515261944.png

1.3、wget命令

# wget 命令用于在终端中下载网络文件,格式为“wget [参数] 下载地址”。[root@chenstudy ~]# cd /home[root@chenstudy home]# wget http://www.linuxprobe.com/docs/LinuxProbe.pdf-b# 后台下载模式-P# 下载到指定目录-t# 最大尝试次数-c# 断点续传-p# 下载页面内所有资源,包括图片、视频等-r# 递归下载# wget 命令递归下载 www.linuxprobe.com 网站内的所有页面数据以及文件,下载完后会自动保存到当前路径下一个名为 www.linuxprobe.com 的目录中[root@chenstudy home]# wget -r -p http://www.linuxprobe.com

1649515964579.png


1.4、ps命令

  • ps 命令用于查看系统中的进程状态,格式为“ps [参数]”
  • 参数
  • -a # 显示所有进程(包括其他用户的进程)
  • -u # 用户以及其他详细信息
  • -x # 显示没有控制终端的进程
  • Linux的进程分为五个进程状态 运行、中断、不可中断、僵死与停止
  • R(运行):进程正在运行或在运行队列中等待。
  • S(中断):进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该状态。
  • D(不可中断):进程不响应系统异步信号,即便用 kill 命令也不能将其中断。
  • Z(僵死):进程已经终止,但进程描述符依然存在, 直到父进程调用 wait4()系统函数后将进程释放。
  • T(停止):进程收到停止信号后停止运行。
[root@chenstudy home]# ps auxUSER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         10.0  0.1 1255043440 ?        Ss   3月24   0:15 /usr/lib/systemd/systemd --switched-root--system--deroot         20.0  0.0      00 ?        S    3月24   0:00 [kthreadd]
root         40.0  0.0      00 ?        S<   3月24   0:00 [kworker/0:0H]
root         60.0  0.0      00 ?        S    3月24   0:18 [ksoftirqd/0]
root         70.0  0.0      00 ?        S    3月24   0:00 [migration/0]
root         80.0  0.0      00 ?        S    3月24   0:00 [rcu_bh]
# USER      进程的所有者# PID       进程ID号# %CPU      运算器占用率# %MEM      内存占用率# VSZ       虚拟内存使用量(单位是 KB)# RSS       占用的固定内存量(单位是KB)# TTY       所在终端# STAT      进程状态# START     被启动的时间# TIME      实际使用CPU的时间# COMMAND   命令名称与参数

1649516165430.png


1.5、top 命令

  • top 命令用于动态地监视进程活动与系统负载等信息,其格式为 top
[root@chenstudy home]# top

1649578895585.png

  • top 命令执行结果的前 5 行为系统整体的统计信息,其所代表的含义如下:
  • 第 1 行:系统时间、运行时间、登录终端数、系统负载(三个数值分别为 1 分钟、5分钟、15 分钟内的平均值,数值越小意味着负载越低)
  • 第 2 行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数
  • 第 3 行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等
  • 第 4 行:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量
  • 第 5 行:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、已被提前加载的内存量

1.6、pidof和kill命令

  • pidof 命令用于查询某个指定服务进程的 PID 值,格式为“pidof [参数 服务名称]”
  • kill 命令用于终止某个指定 PID 的服务进程,格式为“kill [参数 进程 PID]”
  • killall 命令用于终止某个指定名称的服务所对应的全部进程,格式为:“killall [参数 进程名称]”
# 查询本机上 sshd 服务程序的 PID[root@chenstudy ~]# pidof sshd244861156[root@chenstudy ~]# kill 1156[root@chenstudy ~]# pidof httpd[root@chenstudy ~]# killall httpd

1649579588076.png

1.7、ifconfig命令

  • ifconfig 命令用于获取网卡配置与网络状态等信息,格式为“ifconfig [网络设备 参数]”
[root@chenstudy ~]# ifconfig

1649949443485.png

1.8、uname 命令

  • uname 命令用于查看系统内核与系统版本等信息,格式为“uname [-a]”
  • 查看当前系统版本的详细信息,则需要查看 redhat-release 文件,
[root@chenstudy ~]# uname -aLinux chenstudy 3.10.0-1160.53.1.el7.x86_64 #1 SMP Fri Jan 14 13:59:45 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux[root@chenstudy etc]# cat centos-releaseCentOS Linux release 7.9.2009 (Core)
[root@chenstudy etc]#

1649584235212.png

1649584267938.png

1.9、uptime和free命令

  • uptime 用于查看系统的负载信息,格式为 uptime
  • 它可以显示当前系统时间、系统已运行时间、启用终端数量以 及平均负载值等信息
  • free 用于显示当前系统中内存的使用量信息,格式为“free [-h]”
[root@chenstudy ~]# uptime23:11:18 up 17 days,  6:46,  2 users,  load average: 0.05, 0.22, 0.28
[root@chenstudy ~]# free -h              total        used        free      shared  buff/cache   available
Mem:           1.8G        347M        192M        612K        1.3G        1.3G
Swap:            0B          0B          0B
# total         内存总量# used          已用量# free          可用量# shared        进程共享的内存量# buff/cache    磁盘缓存的内存量/缓存的内存量# available     可利用的内存量


1649603596527.png

1.10、who和last命令

  • who 用于查看当前登入主机的用户终端信息,格式为“who [参数]”
[root@chenstudy ~]# whoroot     pts/0        2022-04-1020:07 (117.158.163.68)
root     pts/1        2022-04-1020:07 (117.158.163.68)
[root@chenstudy ~]#

1649604289613.png

执行 who 命令的结果

登录的用户名 终端设备 登录到系统的时间
root pts/0 2022-04-10 20:07 (117.158.163.68)
root pts/1 2022-04-10 20:07 (117.158.163.68)
  • last 命令用于查看所有系统的登录记录,格式为“last [参数]”
# 使用 last 命令可以查看本机的登录记录由于这些信息都是以日志文件的形式保存在系统中,因此黑客可以很容易地对内容进行篡改[root@chenstudy ~]# lastroot     pts/1        117.158.163.68   Sun Apr 1020:07   still logged inroot     pts/0        117.158.163.68   Sun Apr 1020:07   still logged inroot     pts/1        117.158.163.67   Sun Apr 1015:12 -19:27  (04:14)    
root     pts/0        117.158.163.67   Sun Apr 1015:12 -19:27  (04:14)    
root     pts/1        117.158.163.67   Sun Apr 1008:29 -12:27  (03:58)    
root     pts/0        117.158.163.67   Sun Apr 1008:29 -12:27  (03:58)    
root     pts/1        117.158.163.79   Sat Apr  922:25 -23:49  (01:24)    
root     pts/0        117.158.163.79   Sat Apr  922:25 -23:49  (01:24)    
root     pts/1        117.158.163.78   Thu Apr  708:39 -08:42  (00:03)    
root     pts/0        117.158.163.78   Thu Apr  708:39 -08:42  (00:03)    
root     pts/1        117.158.163.78   Wed Apr  616:22 -20:14  (03:52)    
root     pts/3        117.158.163.78   Wed Apr  615:45 -20:14  (04:28)    
root     pts/4        117.158.163.78   Wed Apr  615:38 -15:40  (00:01)

 

1649604659050.png

1.11、history和sosreport 命令

  • history 命令用于显示历史执行过的命令,格式为“history [-c]”
  • -c会清空所有的命令历史记录
  • sosreport 命令用于收集系统配置及架构信息并输出诊断文档,格式为 sosreport
[root@chenstudy ~]# history1clear2cd /
3  uname -f4clear5  uname -r6clear7cat /etc/os-release
# 历史命令会被保存到用户家目录中的.bash_history 文件中[root@chenstudy ~]# cat ~/.bash_historyclearcd /
uname -fclearuname -rclearcat /etc/os-release
# 清空当前用户在本机上执行的Linux命令历史记录[root@chenstudy ~]# history -c

1649605037351.png

1649605155053.png

1649605214267.png

1649605388194.png

2.1、pwd、cd、ls命令

  • pwd 命令用于显示用户当前所处的工作目录,格式为“pwd [选项]”
  • cd 命令用于切换工作路径,格式为“cd [目录名称]”
  • ls 命令用于显示目录中的文件信息,格式为“ls [选项  文件] ”
[root@chenstudy ~]# pwd/root
[root@chenstudy ~]# cd /home[root@chenstudy home]# lsceshi  chen  chen.java  dockerfile  LinuxProbe.pdf  mysql  test.java
# 使用 ls 命令的“-a”参数看到全部文件(包括隐藏文件)# 使用“-l”参数可以查看文件的属性、大小等详细信息[root@chenstudy home]# ls -al总用量 17288drwxr-xr-x.  6 root root     40964922:52 .
dr-xr-xr-x. 18 root root     409632416:24 ..
drwxr-xr-x   2 root root     40964209:29 ceshi
drwxr-xr-x   3 root root     40964615:32 chen
-rw-r--r--1 root root        033023:26 chen.java
drwxr-xr-x   2 root root     40964510:54 dockerfile
-rw-r--r--1 root root 176762819222020 LinuxProbe.pdf
drwxr-xr-x   4 root root     40964209:49 mysql
-rw-r--r--1 root root        033023:28 test.java
# 查看目录属性信息,则需要额外添加一个-d 参数[root@chenstudy home]# ls -ld /etcdrwxr-xr-x. 78 root root 409632918:00 /etc
[root@chenstudy home]#

1649657666969.png

2.2、touch、mkdir、cp命令

  • touch 命令用于创建空白文件或设置文件的时间,格式为“touch [选项  文件]”
  • b-a 仅修改“读取时间”(atime)
  • -m 仅修改“修改时间”(mtime)
  • -d 同时修改 atime 与 mtime
[root@chenstudy home]# lsceshi  chen  chen.java  dockerfile  LinuxProbe.pdf  mysql  test.java
[root@chenstudy home]# ls -l chen.java -rw-r--r--1 root root 5441114:24 chen.java
[root@chenstudy home]# echo "System.out.println("Hello");" >> chen.java [root@chenstudy home]# ls -l chen.java -rw-r--r--1 root root 8141114:25 chen.java
[root@chenstudy home]# touch -d "2021-06-28 15:44" chen.java [root@chenstudy home]# ls -l chen.java -rw-r--r--1 root root 816282021 chen.java
[root@chenstudy home]#

1649658424973.png

  • mkdir 命令用于创建空白的目录,格式为“mkdir [选项] 目录”
  • -p 参数来递归创建出具有嵌套叠层关系的文件目录
[root@chenstudy home]# mkdir linux[root@chenstudy home]# cd linux/[root@chenstudy linux]# mkdir -p a/b/c[root@chenstudy linux]# cd a/[root@chenstudy a]# cd b/[root@chenstudy b]#

1649658572337.png

  • cp 命令用于复制文件或目录,格式为“cp [选项] 源文件 目标文件”
  • -p 保留原始文件的属性
  • -d 若对象为“链接文件”,则保留该“链接文件”的属性
  • -r 递归持续复制(用于目录)
  • -i 若目标文件存在则询问是否覆盖
  • -a 相当于-pdr(p、d、r 为上述参数)
[root@chenstudy linux]# touch install.log[root@chenstudy linux]# cp install.log x.log[root@chenstudy linux]# lsa  install.log  x.log
[root@chenstudy linux]#

1649667421150.png

2.3、mv、rm、dd和file命令

  • mv 命令用于剪切文件或将文件重命名,格式为“mv [选项] 源文件 [目标路径|目标文件名]”
[root@chenstudy linux]# mv x.log linux.log[root@chenstudy linux]# lsa  install.log  linux.log
[root@chenstudy linux]#

1649667665827.png

  • rm 命令用于删除文件或目录,格式为“rm [选项] 文件”

[root@chenstudy linux]# rm install.log rm:是否删除普通空文件 "install.log"?y
[root@chenstudy linux]# lsa  linux.log
[root@chenstudy linux]# rm -f linux.log [root@chenstudy linux]# lsa
# 删除目录[root@chenstudy linux]# rm -rf a[root@chenstudy linux]# ls[root@chenstudy linux]# 

1649667889128.png

  • dd 命令用于按照指定大小和个数的数据块来复制文件或转换文件,格式为“dd [参数]”
  • if 输入的文件名称
  • of 输出的文件名称
  • bs 设置每个“块”的大小
  • count 设置要复制“块”的个数
# /dev/zero 设备文件中取出一个大小为 560MB 的数据块,保存成名为 560_file 的文件[root@chenstudy home]# dd if=/dev/zero of=560_file count=1 bs=560MB记录了1+0 的读入
记录了1+0 的写出
560000000字节(560 MB)已复制,4.66672 秒,120 MB/秒
[root@chenstudy home]# # dd命令可以把光驱设备中的光盘制作成 iso 格式的镜像文件[root@chenstudy home]#  dd if=/dev/cdrom of=RHEL-server-7.0-x86_64-LinuxProbe.Com.iso7311360+0 records in7311360+0 records out
3743416320 bytes (3.7 GB) copied, 370.758 s, 10.1 MB/s
  • file 命令用于查看文件的类型,格式为“file 文件名”
[root@chenstudy home]# file chen.java chen.java: ASCII text
[root@chenstudy home]# file /home/dockerfile//home/dockerfile/: directory
[root@chenstudy home]#

1649668639856.png

2.4、tar、grep和find命令

  • tar 命令用于对文件进行打包压缩或解压,格式为“tar [选项 文件]”
  • -c 创建压缩文件
  • -x 解开压缩文件
  • -t 查看压缩包内有哪些文件
  • -z 用 Gzip 压缩或解压
  • -j 用 bzip2 压缩或解压
  • -v 显示压缩或解压的过程
  • -f 目标文件名
  • -p 保留原始的权限与属性
  • -P 使用绝对路径来压缩
  • -C 指定解压到的目录
[root@chenstudy home]# tar -czvf etc.tar.gz /etc tar: 从成员名中删除开头的“/”
/etc/
/etc/depmod.d/
/etc/depmod.d/dist.conf
/etc/sudoers
/etc/gss/
/etc/gss/mech.d/
/etc/anacrontab
/etc/wgetrc
/etc/python/
# 将打包后的压缩包文件指定解压到/root/etc 目录中[root@chenstudy home]# mkdir /root/etc[root@chenstudy home]# tar xzvf etc.tar.gz -C /root/etc

1649689372407.png

1649689899210.png

  • grep 命令用于在文本中执行关键词搜索,并显示匹配的结果,格式为“grep [选项 文件]”
  • -b 将可执行文件(binary)当作文本文件(text)来搜索
  • -c 仅显示找到的行数
  • -i 忽略大小写
  • -n 显示行号
  • -v 反向选择—仅列出没有“关键词”的行
[root@chenstudy home]# grep /sbin/nologin /etc/passwdbin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin

1649690102945.png

  • find 命令用于按照指定条件来查找文件,格式为“find [查找路径] 寻找条件 操作”
  • -name 匹配名称
  • -perm 匹配权限(mode 为完全匹配,-mode 为包含即可)
  • -user 匹配所有者
  • -group 匹配所有组
  • -mtime -n +n 匹配修改内容的时间(-n 指 n 天以内,+n 指 n 天以前)
  • -atime -n +n 匹配访问文件的时间(-n 指 n 天以内,+n 指 n 天以前)
  • -ctime -n +n 匹配修改文件权限的时间(-n 指 n 天以内,+n 指 n 天以前)
  • -nouser 匹配无所有者的文件
  • -nogroup 匹配无所有组的文件
  • -newer f1 !f2 匹配比文件 f1 新但比 f2 旧的文件
  • --type b/d/c/p/l/f 匹配文件类型(后面的字幕参数依次表示块设备、目录、字符设备、管道、 链接文件、文本文件)
  • -size  匹配文件的大小(+50KB 为查找超过 50KB 的文件,而-50KB 为查找小于 50KB 的文件)
  • -prune 忽略某个目录
  • -exec …… {}\;    后面可跟用于进一步处理搜索结果的命令(下文会有演示)
[root@chenstudy home]# find /etc -name "host*" -print/etc/hosts.allow
/etc/hosts.deny
/etc/host.conf
/etc/hostname
/etc/cloud/templates/hosts.suse.tmpl
/etc/cloud/templates/hosts.debian.tmpl
/etc/cloud/templates/hosts.freebsd.tmpl
/etc/cloud/templates/hosts.redhat.tmpl
/etc/selinux/targeted/active/modules/100/hostname
/etc/hosts
# 要在整个系统中搜索权限中包括 SUID 权限的所有文件只需使用-4000 即可# CentOS 报错未知断言 Red Hat里可以[root@chenstudy home]# find / -perm -4000 -print/usr/bin/fusermount
/usr/bin/su
/usr/bin/umount
/usr/bin/passwd
/usr/sbin/userhelper
/usr/sbin/usernetctl

1649690531957.png


目录
打赏
0
0
0
0
38
分享
相关文章
linux命令—tree
tree是一款强大的Linux命令行工具,用于以树状结构递归展示目录和文件,直观呈现层级关系。支持多种功能,如过滤、排序、权限显示及格式化输出等。安装方法因系统而异常用场景包括:基础用法(显示当前或指定目录结构)、核心参数应用(如层级控制-L、隐藏文件显示-a、完整路径输出-f)以及进阶操作(如磁盘空间分析--du、结合grep过滤内容、生成JSON格式列表-J等)。此外,还可生成网站目录结构图并导出为HTML文件。注意事项:使用Tab键补全路径避免错误;超大目录建议限制遍历层数;脚本中推荐禁用统计信息以优化性能。更多详情可查阅手册mantree。
linux命令—tree
linux命令—cd
`cd` 命令是 Linux/Unix 系统中用于切换工作目录的基础命令。支持相对路径与绝对路径,常用选项如 `-L` 和 `-P` 分别处理符号链接的逻辑与物理路径。实际操作中,可通过 `cd ..` 返回上级目录、`cd ~` 回到家目录,或利用 `cd -` 在最近两个目录间快速切换。结合 Tab 补全和 `pwd` 查看当前路径,能显著提升效率。此外,需注意特殊字符路径的正确引用及脚本中绝对路径的优先使用。
|
20天前
|
Linux命令拓展:为cp和mv添加进度显示
好了,就这样,让你的Linux复制体验充满乐趣吧!记住,每一个冷冰冰的命令背后,都有方法让它变得热情起来。
59 8
Linux环境下必备的基础命令概览
以上就是Linux系统中的基本命令和工具,掌握它们就能帮你在Linux世界里游刃有余。这其实就像是学习驾驭一辆新车,熟悉了仪表盘,调整好了座椅,之后的旅程就只需要享受风驰电掣的乐趣了。
44 4
详解Ubuntu的strings与grep命令:Linux开发的实用工具。
这就是Ubuntu中的strings和grep命令,透明且强大。我希望你喜欢这个神奇的世界,并能在你的Linux开发旅程上,通过它们找到你的方向。记住,你的电脑是你的舞台,在上面你可以做任何你想做的事,只要你敢于尝试。
144 32
linux命令—pwd
`pwd` 是 Linux/Unix 系统中的基础命令,用于显示用户当前所在的工作目录路径,帮助确认在文件系统中的位置。其核心功能包括打印逻辑路径(默认,-L 选项)和物理路径(-P 选项)。典型应用场景涵盖确认当前位置、调试符号链接问题及脚本编程中动态获取与操作路径。使用时需注意符号链接的区别、参数选择以及特殊字符处理,确保命令正确执行并满足需求。
|
2月前
|
Linux命令大全:echo与tail实现输出重定向。
这样,我们实现了使用echo和tail命令进行输出重定向的目的。在实际应用中,输出重定向技巧可节省时间,提高工作效率。希望本文内容对您了解和掌握Linux系统中echo与tail命令以及输出重定向的操作有所帮助。
119 27
linux命令使用消费kafka的生产者、消费者
linux命令使用消费kafka的生产者、消费者
130 16
Linux环境下如何通过手动调用drop_caches命令释放内存
总的来说,记录住“drop_caches” 命令并理解其含义,可以让你在日常使用Linux的过程中更加娴熟和自如。
466 23
|
2月前
|
"unzip"命令解析:Linux下如何处理压缩文件。
总的来说,`unzip`命令是Linux系统下一款实用而方便的ZIP格式文件处理工具。本文通过简明扼要的方式,详细介绍了在各类Linux发行版上安装 `unzip`的方法,以及如何使用 `unzip`命令进行解压、查看和测试ZIP文件。希望本文章能为用户带来实际帮助,提高日常操作的效率。
288 12
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问