Linux常用命令大全

1.Liunx系统的文件结构

/dev        设备文件
/etc        大多数配置文件
/home       普通用户的家目录
/lib        32位函数库
/lib64      64位库
/media      手动临时挂载点
/mnt        手动临时挂载点
/opt        第三方软件安装位置
/proc       进程信息及硬件信息
/root       临时设备的默认挂载点
/sbin       系统管理命令
/srv        数据
/var        数据
/sys        内核相关信息
/tmp        临时文件
/usr        用户相关设定


 2.Linux系统命令行的含义

示例:root@openArch:~# 
root  = 用户名,root为超级用户
@     = 分隔符
openArch  = 主机名称
~       当前所在目录,默认用户目录为~,会随着目录切换而变化,
例如:(root@openArch:/lib# ,当前位置在lib目录下)
#  = 表示当前用户是超级用户,普通用户为$,例如:("kali@openArch:/root$" ,表示使用用户"kali"访问/root文件夹)


(一)命令的组成的基本操作

          1.关机

shutdown -h 0 # 代表立刻关机

poweroff   和  init 0     # 同样是立刻关机

shutdown -h 5 # 代表两分钟后自动关机

           2.重启

shutdown -r 0 # 代表立刻重启

reboot 和 init 6 # 同样是立刻重启

shutdown -r 5 # 代表两分钟后自动重启

           3.注销

exit 

           4.帮助命令(help)

uname --help # 有些命令支持 -h  比如 nmap -h

           5.命令说明书(man)

man wireshark

         6.切换用户(su)

 su kali   #切换为用户"kali",输入后回车需要输入该用户的密码,前提是你有一个命名为"kali"的用户,若想退出退出当前用户请输入 exit(注销)


(二)切换目录

         1.切换目录(cd)

  cd /                      #切换到根目录
  cd /var                 #切换到根目录下的var目录
  cd ../                    #切换到上一级目录 或者使用命令:cd ..

  cd ../..                   #切换到上一级的上一级
  cd ~                      #切换到home目录
  cd -                       #切换到上次访问的目录
  cd xx(文件夹名)   #切换到本目录下的名为xx的文件目录,如果目录不存在报错
  cd /xxx/xx/x         #可以输入完整的路径,直接切换到目标目录,输入过程中可以使用Tab键快速补全

          2.查看目录(ls)

  ls                      #查看当前目录下的所有目录和文件
  ls -a                 #查看当前目录下的所有目录和文件(包括隐藏的文件)
  ls -l                  #列表查看当前目录下的所有目录和文件
  ls /usr/local    #会列出/usr/local目录的内容

  ls -R                #可以递归地列出子目录中的内容

          3. 创建目录(mkdir)

mkdir [选项] 目录名

-p:递归创建多级目录。
-m:设置目录的权限。

          4. 移动目录(mv)

mv [选项] 来源目的地

-i   : 若目标已存在,询问用户是否覆盖
-f   :  强制覆盖目标文件,不进行任何提示
-b  :  在覆盖前为文件创建备份
-u  :  仅当源文件比目标文件新时才移动

           5.拷贝文件或文档(cp)

cp [选项] 源文件 目标文件
-r   :  递归复制,如果源文件是目录,则会复制其中的所有文件和子目录。
-p  :  保留源文件的属性(权限、时间等)。
-f   :  强制覆盖目标文件。
-u  :  当源文件比目标文件新时才更新目标文件。

         6. 搜索目录(find)

使用find命令可以根据文件名查找文件,比如:

find /var -name 'c*'   #查找/var目录下的所有以c开头的文件或者目录

         7.  查看当前目录(pwd)

pwd   #命令查看当前工作目录的完整路径


(三) 文件操作

         1.新增文件(touch)

#创建一个空白文件:
   touch 文件名
#例如,要创建一个名为test.txt 的空文件,可以输入:

   touch test.txt 
#这将在当前目录下创建一个名为test.txt 的新空文件。

#更新文件的时间属性:
   touch -a 文件名 # 更新存取时间
   touch -m 文件名 # 更新修改时间
#如果指定的文件不存在,则会创建一个新的空白文件,除非使用-c或-h选项来避免创建新文件。

#批量创建多个文件:
   touch file1 file2 file3

#这将同时创建三个名为file1、file2和file3的空文件。

#使用其他选项:
-c:不创建任何文件,仅更新时间。
-d:使用指定的日期时间而非现在的时间。
-r:将指定文件或目录的日期时间复制到当前文件。

         2.删除文件(rm)

rm [选项] 文件名/目录名
#常见选项包括:
-f:强制删除文件或目录,不作任何提示。
-r 或 -R:递归删除指定目录下的所有文件及子目录。
-i:删除前逐一询问确认。
-v:显示详细执行过程。
#例如,删除当前目录下的所有文件可以使用:

rm -f *
#而删除某个目录及其所有子目录和文件则可以使用:

rm -rf 目录名
#需要注意的是,rm是一个危险的命令,在执行之前应确保已正确确认要删除的对象。

          3.编辑文件(vi、vim)

vi的基本用法:
插入模式:按 (i) 键进入插入模式,可以开始编辑文本。
命令模式:按Esc键退出插入模式,回到命令模式,在此模式下可以执行各种编辑命令。
基本命令:包括复制(y)、粘贴(p)、剪切(x)等。


vim的基本用法:
三种模式:插入模式、命令模式和可视模式。其中,插入模式和命令模式与vi类似,而可视模式用于高亮显示文本内容。
高级功能:vim支持多级撤消(按u可以无限制地撤消),易用性更高。
常用命令:如移动光标(h, j, k, l)、上下翻页(0, $)、查找单词(/word)和替换(:s/old/new/g)等。

         4.查看文件

  cat a.txt             #查看文件最后一屏内容
  less a.txt           #PgUp向上翻页,PgDn向下翻页,"q"退出查看
  more a.txt         #显示百分比,回车查看下一行,空格查看下一页,"q"退出查看
  tail -100 a.txt    #查看文件的后100行,"Ctrl+C"退出查看


(四) 文件权限

         1.权限说明

 文件权限简介:'r' 代表可读(4),'w' 代表可写(2),'x' 代表执行权限(1),括号内代表"8421法"
  ##文件权限信息示例:-rwxrw-r--
  -第一位:'-'就代表是文件,'d'代表是文件夹
  -第一组三位:拥有者的权限
  -第二组三位:拥有者所在的组,组员的权限
  -第三组三位:代表的是其他用户的权限

          2.授权(chmod)

一.文字设定法:使用包含字母和操作符表达式的格式,例如:

chmod u-w somefile.txt :将somefile.txt 的写权限移除给文件所有者。
chmod g+x somefile.txt :给文件所属组添加执行权限。


二.数字设定法:使用包含数字的格式,每个数字代表一种权限(4代表读,2代表写,1代表执行),例如:

chmod 755 somefile.txt :给文件所有者7(读、写、执行),给文件所属组5(读、写),其他用户5(读、写)。


三.特殊选项来简化权限设置,例如:

chmod +x somefile.sh :为所有用户添加执行权限。
chmod -R 777 somefolder:递归地为某个目录及其子目录设置所有权限为777


(五)打包与解压

         1.介绍

  .zip、.rar     #windows系统中压缩文件的扩展名
  .tar              #Linux中打包文件的扩展名
  .gz               #Linux中压缩文件的扩展名
  .tar.gz          #Linux中打包并压缩文件的扩展名

         2. 打包与解压文件(tar)

一.创建未压缩的归档文件:
   tar -cvf my档名.tar 文件或目录
示例:将\~/my_documents目录打包到my_documents.tar 文件。

二.创建压缩的归档文件(使用gzip):
   tar -zcvf my档名.tar.gz  文件或目录
示例:将\~/my_documents目录打包并压缩到my_documents.tar.gz 文件。

三.解压归档文件:
   tar -xvf my档名.tar
示例:从my档名.tar文件中解压内容到当前目录。

高级选项:
-v 显示详细信息。
-f 指定归档文件名。


(六)其他常用命令

         1.find

find [路径] [匹配条件] [动作]
其中:

路径 是要查找的目录路径,可以是一个目录或文件名,也可以是多个路径,多个路径之间用空格分隔,如果未指定路径,则默认在当前目录下查找。
匹配条件 可以包括文件名、正则表达式、文件类型、文件时间、文件大小、用户、权限等。
动作 可以是打印结果、删除文件、重命名文件等操作。
例如,查找当前目录及其子目录中所有扩展名为.txt的文件:

find . -name "*.txt"

         2.whereis 

whereis [选项] [文件名]
其中,可选的选项包括:

-b:只查找二进制文件的位置。
-m:只查找源代码文件的位置。
-s:只查找帮助文档的位置。
如果不指定选项,则默认查找所有类型文件的位置。例如,要查找名为"ls"的文件在系统中的位置,可以运行以下命令:

whereis ls
该命令将返回ls文件的位置,例如:

ls: /bin/ls /usr/share/man/man1/ls.1.gz 

         3. which 

which [command]
其中,command是你要查找路径的命令名。如果系统上安装了多个版本的软件或有多个可执行文件的路径,which将会输出所有可执行文件的路径。

         4. sudo

sudo命令是Linux系统中用于授权普通用户执行管理员权限的工具,其英文全称为“super user do”,中文意为“超级用户才能干的事”。它允许普通用户在特定条件下临时切换到超级用户模式以执行需要root权限的命令,如halt、reboot等。

使用sudo时,通常需要输入当前用户的密码而不是root用户的密码,这样可以提高安全性。此外,管理员可以通过配置文件(如/etc/sudoers)来控制哪些用户可以使用sudo以及他们可以执行哪些命令。

常用参数包括:

-V:显示版本信息。
-h:显示帮助信息。
-l:列出当前用户的权限。
-u username:以指定的用户名执行命令。
总之,sudo命令不仅减少了root用户的登录和管理时间,还提高了系统的安全性。

         5.grep

 grep命令用于在文件中搜索指定的字符串或正则表达式,并输出匹配的行。常用参数包括:

-i:忽略大小写。
-v:反向匹配,显示不匹配的行。
-n:显示匹配行的行号。
-c:统计匹配行数。
-r 或 -R:递归搜索整个目录。

         6.service

 service命令是用于管理Linux系统服务的实用工具,主要功能包括启动(start)、停止(stop)、重启(restart)、查看状态(status)等。其基本语法为:

service (选项) (参数)
其中,常见的选项有:

-h:显示帮助信息;
--status-all:显示所有服务的状态。
此外,初始化脚本通常位于/etc/init.d目录下,通过运行这些脚本来实现对服务的操作。

         7. free

Linux的free命令用于显示系统内存使用情况,包括物理内存、交换内存(swap)、缓冲区和缓存等。该命令的输出通常包含以下几列:总内存(total)、已用内存(used)、空闲内存(free)、缓冲区(buffer)、缓存(cache)以及交换空间(swap)。

使用方法如下:

  free -g     #以G为单位输出内存的使用量,-g为GB,-m为MB,-k为KB,-b为字节 
  free -t      #查看所有内存的汇总

         8. top

top命令是Linux系统中用于实时监控和查看进程的常用工具。它能够显示系统的总体信息,包括运行时间、负载、进程数、CPU使用率和内存使用率等。

基本用法如下:

直接输入top命令即可启动并动态显示进程信息。
可以通过按H键开启线程查看模式。
按O键可以查看排序项,并按R键改变排序方向。
使用P、M、T键可以分别按照CPU、内存和线程进行排序。
按k键可以结束某个进程,按d键调整刷新率,按q键退出。
查看特定进程的信息可以使用top -p [进程号]命令。
此外,还可以通过一些选项来定制输出,例如:

-d number:设置页面更新频率(秒)。
-bnp:打开加亮效果。

         9. df

Linux中的df命令用于显示文件系统的磁盘空间使用情况,包括总容量、已使用容量和剩余容量等信息。默认情况下,df命令会以每块1K的单位显示所有当前已挂载的文件系统。如果需要以人类易读的格式显示输出,可以使用-h选项,例如df -h。

基本用法如下:

df [选项]
常用选项包括:

-h:以人类易读的格式(如GB、MB)显示。
-i:显示每个文件系统的i节点使用情况。
例如,要查看某个特定目录的磁盘空间使用情况,可以这样使用:

df -h /path/to/directory
这将返回该目录所在文件系统的大小、已用空间、可用空间以及使用率等信息。

         10.mount

Linux的mount命令用于挂载文件系统,允许用户访问和管理各种类型的文件系统和设备。其基本语法为:

mount [选项] 文件系统 挂载点
常用选项包括:

-t:指定文件系统的类型。
-o:提供挂载选项。
--noexec:禁用执行权限。
--ro:只读模式。
--bind:绑定挂载。
例如,将一个名为/dev/sda1的分区挂载到/mnt目录下:

mount -t ext4 /dev/sda1 /mnt
卸载文件系统可以使用以下命令:

umount /mnt
注意事项包括确保挂载点已存在,并且没有其他进程正在使用该文件系统.

         11.uname

uname [选项]
常见的选项包括:

-a 或 --all:显示所有信息,包括内核名称、主机名、操作系统版本、处理器类型等。
-n 或 --nodename:显示网络节点的主机名。
-r 或 --release:显示操作系统的发行版本。
-m 或 --machine:显示机器类型。
-s 或 --kernel-name:显示内核名称。

         12.yum

通过yun命令,用户可以在Linux命令行中直接操作公共云资源,包括创建、启动、停止和删除云主机,创建和管理云硬盘,以及上传和下载对象等。yun命令支持多种公共云平台,如AWS、Azure、Google Cloud和OpenStack,并可以通过插件扩展支持其他云服务平台。安装yun命令相对简单,可以通过yum或apt-get等包管理工具进行安装。

  说明:安装插件命令
  yum install httpd          #使用yum安装apache 
  yum update httpd        #更新apache 
  yum remove httpd       #卸载/删除apache 

         13.rpm

rpm(Red Hat Package Manager)是一个广泛使用的软件包管理工具,主要用于安装、卸载、升级和查询软件包。以下是rpm命令的一些常用用法:

使用-i或--install参数进行安装,例如:

   rpm -ivh 包全名
其中,-i表示安装,-v提供详细输出,-h显示进度条。

使用-e参数进行卸载,例如:

   rpm -e 包名
使用-U参数进行升级,例如:

   rpm -Uvh 新版本包全名
使用-q参数查询软件包的详细信息,例如:

   rpm -qi 包名
   rpm -qa
使用-V参数验证软件包的完整性,例如:

   rpm -V 包名

         14.date

 date命令用于显示或设置系统的日期和时间。其基本语法为:

date [选项]... [+格式]
常用的选项包括:

-d <字符串>:以字符串形式显示指定的日期与时间。
-s <字符串>:以字符串形式设置指定的日期与时间。
--date="过去的时间":显示相对于当前日期的过去日期和时间。
此外,date命令还支持多种格式化输出,例如:

%D:显示日期(月/日/年)
%Y:显示年份(例如:2021)
%m:显示月份(01-12)
%B:显示月份的完整名称(例如January)
%b:显示月份的简写名称(例如Jan)。

         15.wget

wget 是一个功能强大的命令行工具,用于从网络下载文件。其基本用法如下:

   wget https://example.com/file.txt 
这将从指定的URL下载名为file.txt 的文件。

   wget -O local_file.txt  https://example.com/file.txt 
这将把从URL下载的文件保存为本地的local_file.txt 。

   wget --limit-rate=100k https://example.com 大型文件
这将以每秒100KB的速度限制下载速度。

   wget & disown
这将在后台执行下载操作,并通过disown确保该任务不会被注销。

   wget --递归 http://example.com/ 
这将递归地下载指定网站的所有内容。

   wget --继续已中断的下载
这将恢复之前因网络问题而中断的下载。

   wget --静默模式 -q https://example.com/file.txt 
这将在不显示任何输出的情况下下载文件。

         16.ftp

FTP(文件传输协议)是一种用于服务器和客户端间文件交互的常用工具。以下是关于Linux下使用FTP的一些基本用法:

可以通过包管理器安装FTP客户端,例如使用yum命令:

   yum -y install ftp

使用ftp命令连接到目标FTP服务器,格式如下:

   ftp [目标主机IP]
连接成功后,可以进行文件上传、下载等操作。

常用FTP命令:

cd:切换目录。
ls:列出当前目录中的文件。
get:从服务器下载文件。
put:将本地文件上传到服务器。
mget:批量下载多个文件。
mput:批量上传多个文件。

         17.scp

 SCP(Secure Copy)命令用于在不同主机之间安全地复制文件和目录。其基本语法为:

scp [参数] [原路径] [目标路径]
常用的参数包括:

-p:保留原文件的修改时间、访问时间和访问权限。
-r:递归复制目录及其内容。
-C:在复制过程中压缩文件或目录。
-P:指定SSH端口。


(七)系统管理

         1.防火墙操作

  service iptables status      //查看iptables服务的状态
  service iptables start       //开启iptables服务
  service iptables stop        //停止iptables服务
  service iptables restart     //重启iptables服务
  chkconfig iptables off       //关闭iptables服务的开机自启动
  chkconfig iptables on        //开启iptables服务的开机自启动
  ##centos7 防火墙操作
  systemctl status firewalld.service     //查看防火墙状态
  systemctl stop firewalld.service       //关闭运行的防火墙
  systemctl disable firewalld.service    //永久禁止防火墙服务

         2.修改主机名

 hostnamectl set-hostname 主机名

         3. 查看网络

ifconfig

ip a

         4. 修改IP

  修改网络配置文件,文件地址:/etc/sysconfig/network-scripts/ifcfg-eth0
  ------------------------------------------------
  主要修改以下配置:  
  TYPE=Ethernet               //网络类型
  BOOTPROTO=static            //静态IP
  DEVICE=ens00                //网卡名
  IPADDR=192.168.1.100        //设置的IP
  NETMASK=255.255.255.0       //子网掩码
  GATEWAY=192.168.1.1         //网关
  DNS1=192.168.1.1            //DNS
  DNS2=8.8.8.8                //备用DNS
  ONBOOT=yes                  //系统启动时启动此设置
  -------------------------------------------------
  修改保存以后使用命令重启网卡:service network restart

         5.配置映射

  修改文件:vi /etc/hosts
  在文件最后添加映射地址,示例如下:
   192.168.1.101  node1
   192.168.1.102  node2
   192.168.1.103  node3
  配置好以后保存退出,输入命令:ping node1 ,可见实际 ping 的是 192.168.1.101

         6. 查看进程

ps 命令:这是最基础的查看进程信息的方式。默认情况下,它会显示当前终端窗口中运行的进程。如果想查看所有进程,包括其他终端下的进程,可以加上 -e 参数,例如 ps -e 。

top 命令:该命令提供动态更新的进程信息,可以实时显示系统中的进程状态,并且可以自动刷新。

htop 命令:这是一个基于文本的界面工具,提供了更友好的用户界面来查看和管理进程。它还显示了每个进程的资源使用情况,如CPU、内存等。

         7.关闭进程

kill pid       #杀死该pid的进程
kill -9 pid    #强制杀死该进程 

          8.查看链接

  ping IP        #查看与此IP地址的连接情况
  netstat -an    #查看当前系统端口
  netstat -an | grep 8080     #查看指定端口 

         9. 清屏

ctrl+l        //清屏,往上翻可以查看历史操作
clear         //清屏

         10.远程连接

使用OpenSSH:这是最常见的方法,大多数Linux发行版都默认安装了OpenSSH客户端和服务器。要连接到远程服务器,首先需要确保本地计算机上已经安装了OpenSSH客户端。可以通过终端输入命令sudo apt-get install openssh-client来安装。

配置SSH服务:确保SSH服务已安装并运行,并进行必要的安全配置,如修改默认端口号、禁用密码登录等。可以使用命令sudo apt-get install openssh-server安装SSH服务器,然后编辑配置文件vim /etc/ssh/sshd_config进行相关设置。

使用VNC:如果需要基于图形界面的远程控制,可以使用VNC(Virtual Network Computing)。VNC允许用户通过图形界面远程访问Linux系统。可以使用免费的VNC软件来实现这一功能。

其他工具:还可以使用一些专门的远程桌面工具,如Remmina、X2Go、TigerVNC等,这些工具提供了更丰富的图形界面支持。

         11.查看历史命令

history      #查看历史的输入命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值