欢迎光临
个人技术文档整理

Linux 常用命令

Linux 常用命令

Linux 的 shell 是区分大小写的

  • sudo命令 – 授权普通用户执行管理员命令
    该命令是 “SuperUser Do” 的缩写,使您能够执行需要管理或超级用户权限的任务。但是,建议不要将此命令用于日常使用,因为如果您做错了一些事情,很容易发生错误。
    #直接运行sudo命令加-i参数  
    sudo -i  #运行结果 PWD=/root
    #运行sudo命令给su命令提权,运行su命令。
    sudo su #运行结果 PWD=/home/用户名(当前用户主目录)

     

  • pwd命令 – 显示当前工作目录的路径
  • #查看当前工作目录路径
    pwd 

     

  • cd命令 – 切换目录
    #切换目录至/etc 
    cd /etc 
    
    # 切换至当前用户目录 
    cd ~ 
    
    #切换 上一级目录 
    cd ..
    #切换 上一级目录 附带 目录说明
    cd -

     

  • ls – 显示指定工作目录下的文件及属性信息
    #查看当前目录信息
    ls
    //包含隐藏文件
    ls -all
    //显示明细 (包括权限信息)
    ls -l
    //指定目录信息
    ls /var

     

  • cp命令 – 复制文件或目录
    # 当前目录,复制文件并新命名 
    cp a.txt b.txt 
    # 递归复制文件和目录 并新命名: 
    # 格式 cp -r [源目录] [新目录]
    cp -r old_dir new_dir 
    # 复制文件,保留其原始权限及用户归属信息: 
    cp -a a.txt b.txt 
    
    # 文件复制到/etc目录中 
    cp -f file.txt  /etc 
    # 将多个文件 复制到/etc目录中
    cp -f file.txt  file2.txt /etc 
    
    #  文件复制到/etc目录中 并重新命名 a.txt
    cp -f file.txt  /etc/a.txt

     

  • mv命令 – 移动或改名文件
    #将a.txt 重新命名为 b.txt
    mv a.txt b.txt -v  
    #将【/etc/a/a.txt】移动到【/etc/b/b.txt】并改名
    mv a.txt ../b/b.txt -v
    #将【/etc/a/a.txt】移动到【/etc/b/】目录
    mv a.txt ../b/ -v 

     

  • mkdir 命令– 创建目录文件

  • #创建一个文件夹
    mkdir dir1 
    #创建一个文件夹-并显示 创建过程 
    mkdir dir1 -v
    # 当前工作目录 ,一次性创建多个目录文件 
    mkdir dir3 dir4 dir5 
    
    #创建一个权限为 700 的目录
    mkdir -m 700 dir700
    
    #创建带子目录文件夹
    mkdir -p dir1/dir1_2/dir1_2_3
  •  find命令 – 根据路径和条件搜索指定文件

    #全盘搜索系统中所有以.conf结尾的文件
    find / -name *.conf 
    #在/etc目录中搜索所有大于1M大小的文件 
    find /etc -size +1M 
    #在/home目录中搜索所有属于指定用户的文件 
    find /home -user linuxprobe
    #列出当前工作目录中的所有文件、目录以及子文件信息
    find . 
    # 当前目录 根据后缀模糊查询 
    find ./ -name "*.txt"
    # 根据后缀模糊查询 -type f表示文件 -type d表示匹配目录
    find ./ -type f -name "*.txt"
  • rmdir命令 – 仅允许您删除空目录

    # – 删除空目录[d]
    rmdir  d -v
    # – 删除空目录[d] 递归
    rmdir -p d -v
  • rm命令 – 删除文件或目录 

    # 删除file.txt,进行二次确认。y:确认 n:取消
    rm file.txt
    
    # 强制 file.txt
    rm -f file.txt
    rm -f file.txt -v 
    
    #递归删除[目录] ,进行二次确认。y:确认 n:取消
    rm  -r  [目录名] -v 
    
    # 强制删除-目录下所有 
    rm -rf  [目录名]
    rm -r -f [目录名] -v 
    
    # 【离职小妙招,谨慎!!!】强制清空服务器系统内的所有文件:
    # rm -rf /*   【谨慎!!!谨慎!!!谨慎!!!】

    如果需要删除目录,请使用 rmdir 命令。但是,rmdir 仅允许您删除空目录。
    RM 命令用于删除目录以及其中的内容。如果只想删除目录(作为 rmdir 的替代方法),请使用 rm -r。注意:使用此命令时要格外小心,并仔细检查您所在的目录。这将删除所有内容,并且没有撤消操。

  • touch命令 – 创建空文件与修改时间戳 
    #创建出一个指定名称的空文件 
    touch file.txt 
    #结合通配符,创建出多个指定名称的空文件 
    touch file{1..5}.txt 

     

  • stat命令 – 显示文件的状态信息 

    #查看文件的状态信息(含ATIME、MTIME与CTIME)
    stat file.txt
    #仅查看文件的文件系统信息
    stat -f file.txt
    #以简洁的查看指定文件的状态信息
    stat -t file.txt
  • vi命令 – 文本编辑器
    #编辑 文件
    vi file.txt
    
    
    #退出
    :q
    #退出-强制
    :q
    #保存
    :wq

     

  • cat命令 – 在终端设备上显示文件内容 
    #查看某个文件的内容 
    cat file.txt
    #查看某个文件的内容,并显示行号 
    cat -n file.txt
  • cat和EOF
    EOF是“end of file”,表示文本结束符
    #重新录入内容-第一种
    cat > file.txt << EOF
    --编辑内容
    EOF
    
    #重新录入内容-第二种
    cat << EOF > file.txt #开始
    --编辑内容
    EOF  #结束
    
    
    #追加文件
    cat << EOF >> file.txt
    --追加内容
    EOF

     

  • locate 命令
  • 您可以使用此命令来定位文件,就像 Windows 中的搜索命令一样。此外,将 - i 参数与该命令一起使用将使其不区分大小写,因此即使您不记得其确切名称,也可以搜索文件。要搜索包含两个或多个单词的文件,请使用星号(*)。例如,locate -i school * note 命令将搜索包含单词 “school” 和 “ note” 的任何文件,无论它是大写还是小写。

  • 在类似定位命令,使用 查找也搜索文件和目录。区别在于,您可以使用 find 命令在给定目录中查找文件。例如,find /home/-name notes.txt 命令将在主目录及其子目录中搜索名为 notes.txt 的文件。使用查找时的其他变化 是:要查找当前目录中使用的文件,请使用 find . -name notes.txt 要查找目录,请使用 /-type d -name notes. txt13. grep 命令无疑对日常使用很有帮助的另一个基本 Linux 命令是 grep。它使您可以搜索给定文件中的所有文本。为了说明这一点,grep blue notepad.txt 将在记事本文件中搜索单词 blue。包含搜索到的单词的行将被完整显示。
  •  
  •  
  •  
  • df 命令
  • 使用 df 命令可获取有关系统磁盘空间使用情况的报告,以百分比和 KB 表示。如果要以兆字节为单位查看报告,请输入 df -m。

  • du 命令
  • 如果要检查文件或目录占用了多少空间,答案是 du(磁盘使用情况)命令。但是,磁盘使用情况摘要将显示磁盘块号,而不是通常的大小格式。如果要以字节,千字节和兆字节为单位查看它,请在命令行中添加 - h 参数。

  • head 命令
  • 所述头命令用于查看任何文本文件的第一行。默认情况下,它将显示前十行,但是您可以根据自己的喜好更改此数字。例如,如果只想显示前五行,则键入 head -n 5 filename.ext。

  • tail 命令
  • 该命令与 head 命令具有相似的功能,但是 tail 命令将显示文本文件的最后十行,而不是显示第一行。例如,tail -n filename.ext。

  • diff 命令
  • diff 命令是差异的缩写,diff 命令逐行比较两个文件的内容。分析文件后,它将输出不匹配的行。程序员在需要进行程序更改时经常使用此命令,而不是重写整个源代码。此命令最简单的形式是 diff file1.ext file2.ext

  • tar 命令
  • 该 tar 命令是最常用的命令归档多个文件到一个压缩包。类似于 zip 格式常见的 Linux 文件格式,压缩是可选的。该命令具有很长的功能列表,非常复杂,例如将新文件添加到现有档案中,列出档案内容,从档案中提取内容等等。查看一些实际示例,以了解有关其他功能的更多信息。

  • chmod 命令
  • chmod 是另一个 Linux 命令,用于更改文件和目录的读取,写入和执行权限。由于此命令相当复杂,因此您可以阅读完整的教程以正确执行它。

  • chown 命令
  • 在 Linux 中,所有文件均归特定用户所有。该 CHOWN 命令使您可以更改或文件的所有权转让给指定的用户名。例如,chown linuxuser2 file.ext 将使 linuxuser2 成为 file.ext 的所有者。

  • Jobs 命令
  • jobs 命令将显示所有当前作业及其状态。作业基本上是由 Shell 启动的进程。

  • kill 命令
  • 如果您的程序无响应,则可以使用 kill 命令手动终止它。它将向运行异常的应用发送特定信号,并指示该应用自行终止。您总共可以使用 64 个信号,但是人们通常只使用两个信号:SIGTERM(15) — 请求程序停止运行,并给它一些时间来保存其所有进度。如果在输入 kill 命令时未指定信号,则将使用此信号。SIGKILL(9) - 强制程序立即停止。未保存的进度将丢失。除了知道信号之外,您还需要知道要杀死的程序的进程标识号(PID)。如果您不知道 PID,只需运行命令 ps ux。在知道您要使用什么信号以及程序的 PID 之后,输入以下语法:kill [signal option] PID.

  • ping 命令
  • 使用 ping 命令检查与服务器的连接状态。例如,只需输入 ping google.com,该命令将检查您是否能够连接到 Google 并测量响应时间。

  • wget 命令
  • Linux 命令行非常有用 - 您甚至可以在 wget 命令的帮助下从 Internet 下载文件。为此,只需键入 wget,然后输入下载链接即可。

  • uname 命令
  • 该 UNAME 命令,短期对于 Unix 名,将打印您的 Linux 系统,如计算机名称的详细信息,操作系统,内核,等等。

  • top命令 – 实时显示系统运行状态
    top  -i -n 3
    top -c -i -n 3
    
    # -c 显示完整的command
    top -c
    # -n 1 设定总次数为1次,随后自动退出命令
    top  -n 1
    # -d 5 每隔5秒刷新一次
    top -d 5
    进程的ID 进程所有者

    进程的优先级别,

    越小越优先被执行

    nice值 进程占用的虚拟内存 进程占用的物理内存 进程使用的共享内存

    进程的状态。

    S表示休眠,

    R表示正在运行,

    Z表示僵死状态,N表示该进程优先值为负数

    进程占用CPU的使用率 进程使用的物理内存和总内存的百分比

    该进程启动后占用的总的CPU时间,

    即占用CPU使用时间的累加值

    进程启动命令名称
    PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
    13286 10000 20 0 28560 2164 856 S 0.0 0.0 0:02.07 nginx
    11878 root 20 0 6720980 886680 3100 S 1.0 22.9 9:42.02 sqlservr

     

  • 作为与 Windows 中的任务管理器等效的终端,top 命令将显示正在运行的进程的列表以及每个进程使用的 CPU 数量。监视系统资源使用情况非常有用,尤其是知道哪个进程由于消耗太多资源而需要终止时。

  • history 命令
  • 当您使用 Linux 一段时间后,您会很快注意到每天可以运行数百个命令。因此,如果您想查看之前输入的命令,运行历史记录命令特别有用。

  • man 命令
  • 对某些 Linux 命令的功能感到困惑吗?不用担心,您可以使用 man 命令从 Linux 的外壳程序中轻松地学习如何使用它们。例如,输入 man tail 将显示 tail 命令的手动指令。

  • echo命令 – 输出字符串或提取后的变量值
    # 输出字符串
    echo "你好 世界" 
    
    # 将字符串  写入 a.txt (不存在则新增文件)
    echo "你好 世界" > a.txt 
    
    # 搭配反引号执行命令,并将执行结果输出 
    echo `uptime -s` #显示本次开机时间
    echo `pwd`  #显示当前目录

     

  • 此命令用于将一些数据移到文件中。例如,如果要将文本 “Hello,我的名字叫 John” 添加到名为 name.txt 的文件中,则可以键入 echo Hello, my name is John >> name.txt

  • zip,unzip 命令
  • 使用 zip 命令将文件压缩到 zip 归档文件中,然后使用 unzip 命令从 zip 归档文件中提取压缩文件。

  • hostname 命令
  • 如果您想知道主机 / 网络的名称,只需键入 hostname。在末尾添加 - I 将显示您的网络的 IP 地址。

  • useradd,userdel 命令
  • 由于 Linux 是多用户系统,因此这意味着多个人可以同时与同一个系统进行交互。useradd 用于创建新用户,而 passwd 将密码添加到该用户的帐户。要添加名为 John 的新用户,请添加 user John,然后添加其密码类型 passwd 123456789。删除用户与添加新用户非常相似。要删除用户帐户类型,请使用 userdel UserName。

 

赞(1)