Linux基础命令详细解释[附option参数介绍]

一、Linux文件目录结构

        ca3d0b05711945058c2578834143f666.png

使用Linux路径:/usr/tmp/hello.txt 来访问每一个文件

二、Linux命令通用格式

        command  [-options]  [parameter]

        command:命令本身

        -options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节

        parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等

1、ls命令

       展示指定目录下的所有内容(默认展示工作目录下的内容)

        语法细节: ls [-a -l -h] [linux路径]

        其中可选参数:

                -a:all的意思,即列出全部文件(包含隐藏的文件/文件夹)(文件名前带有“.”为隐藏文件夹)只有通过-a才能看到隐藏文件夹

                -l:以列表(竖向排列)的形式展示内容,并展示更多信息(如权限、用户、大小、创建的时间)。

                -h:表示以易于阅读的形式列出文件的大小,如:K、M、G。必须搭配-l一起使用。ls -lh

        还可以组合使用,比如:ls -l -a = ls -la = ls -al

2、目录切换相关命令(cd\pwd)

        cd(Change Directory):切换工作目录

                语法细节:cd [Linux路径]

                        cd命令无需选项,只有参数,表示要切换到哪个目录下。如:cd /

                        cd命令直接执行不加参数,表示回到用户的HOME目录。如:cd

        pwd(Print Work Directory):查看当前工作目录

                语法细节:pwd

                        pwd命令无选项,无参数、直接输入pwd即可。

        相对路径与绝对路径的概念:

                绝对路径:以根目录作为起点,描述路径的方式,路径以/开头

                相对路径:以当前目录做起点,描述路径的方式,路径不需要/开头

        特殊路径符:

                . 表示当前目录,如:cd ./Desktop

                .. 表示上一级目录,比如:cd ../..

                ~表示用户的HOME目录,比如cd ~ 或 cd ~/Desktop

3、创建新的文件夹mkdir(Make Directory)

        语法细节:mkdir  [-p] Linux路径

                ·参数必填,表示linux路径,即要创建的文件夹的路径,相对路径或绝对路径均可

                ·-p 选项可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录。如:mkdir -p aa/bb/cc.txt

4、touch创建文件,cat\more查看文件内容

        touch语法细节:touch linux路径

        ·touch命令无选项,参数必填,表示要创建的文件路径,相对、绝对、特殊路径符均可以使用

        cat语法细节:cat linux路径

        ·cat同样没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径符均可。

        more语法细节:more linux路径       

        ·more同样没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径符

          more与cat不同的是,cat是直接将内容全部显示出来,more支持翻页,如果文件内容过多,可以一页页的展示。按【空格】翻页,【q】退出查看

5、复制、移动、删除文件夹(cp、mv、rm)

        cp(copy)命令复制文件夹,语法细节:cp [-r] 参数1 参数2

                ·-r选项,可选,用于复制文件夹

                ·参数1,Linux路径,表示被复制的文件或文件夹

                ·参数2,Linux路径,表示要复制去的地方

        mv(move)移动文件或文件夹,语法细节:mv 参数1 参数2

                ·参数1,linux路径,表示被移动的文件或文件夹

                ·参数2,linux路径,表示要移动去的地方,如果目标不存在,则进行改名确保目标存在

        rm(remove)可用于删除文件、文件夹,语法细节:rm [-r -f] 参数1 参数2......参数n

                ·同cp命令一样,-r选项用于删除文件夹

                ·-f表示force ,强制删除(普通用户不会弹出提示确认信息,root用户会弹出)

                ·参数1 参数2......参数n表示要删除的文件或文件夹,空格隔开

                rm命令支持通配符*,用来做模糊匹配,如:test*,表示任何以test开头的内容

                (删库:rm -rf 路径)

                        

6、witch-find命令

        witch查找命令的程序文件,语法细节:witch 要查找的命令(cd、rm等等)

                ·无需选项,只需要参数表示查找哪个命令

        find命令用于查找指定的文件,语法细节:

                按文件名查找: find 起始路径 -name “被查找文件名”     支持通配符

                按文件大小查找: find 起始路径 -size +|-n[KMG]

7、grep-wc-管道符(|)

        grep命令从文件中通过关键字过滤文件行,语法细节:grep [-n] 关键字 文件路径

                选项-n:可选,表示在结果中显示匹配的行号

                参数,关键字:必填,表示过滤的关键字,建议使用“将关键字”包围起来。

                参数,文件路径:必填,表示要过滤内容的文件路径,可作为管道符的输入。

        wc命令统计文件的行数、单词数量、字节数、字符数等,语法细节:wc [-c -m -l -w] 文件路径

                不带选项默认统计:行数、单词数、字节数。

                选项-c:字节数,-m:字符数,-l行数、-w单词数

                参数,被统计的文件路径,可作为管道符的输入

        管道符|:将管道符左边命令的结果作为右边命令的输入

              

8、echo-tail-重定向符

        echo命令在命令行内输出指定内容,语法细节:echo 输出的内容

                无需选项,只有一个参数表示要输出的内容,复杂内容可以用“ ”包围起来。

        反引号符  `

                被`包围的内容,会被作为命令执行,而非普通字符

        重定向符

                ·>,将左侧命令的结果,覆盖写入到符号右侧指定的文件中

                ·>>,将左侧命令的结果,追加写入到符号右侧指定的文件中

        tail命令查看文件尾部的内容,并可以持续追踪,语法细节:tail [-f -num] linux路径

                选项-f:持续跟踪查看;  选项-num(如-15):运行命令时指定查看多少行,默认10行

9、vi\vim编辑器

        命令模式:命令模式下所敲的按键编辑器都理解为命令,以命令驱动执行不同的功能,此模式下,不能自由进行文本编辑。

               

i当前光标位置进入输入模式
a当前光标位置之后进入输入模式
I当前行的开头进入输入模式
A当前行的结尾进入输入模式
o当前光标的下一行进入输入模式
O当前光标的上一行进入输入模式
esc  任何情况下输入esc都能回到命令模式
键盘上、键盘k向上移动光标
键盘下、键盘j向下移动光标
键盘左、键盘h向 左移动光标
键盘右、键盘l向后移动光标
0移动光标到当前行的开头
$移动光标到当前行的结尾
/进入搜索模式
n向下继续搜索
N向上继续搜索
dd删除光标所在行的内容
ndd        n是数字,表示删除当前光标向下n行
yy复制当前行
nyyn是数字,复制当前行和下面的n行
p粘贴复制的内容
u撤销修改
ctrl+r反向撤销修改
gg跳到首行
G跳到行尾
dG从当前行开始,向下全部删除
dgg从当前行开始,向上全部删除
d$从当前光标开始,删除到本行结尾
d0从当前光标开始,删除到本行开头

        输入模式:也就是编辑模式、插入模式。此模式下,可以对文件内容进行自由编辑。

                

        底线命令模式:以“:”开始,通常用于文件的保存、退出。

                

:wq保存并退出
:q仅退出
:q!强制退出
:w仅保存
:set nu显示行号
:set paste设置粘贴模式

三、linux的root用户

        su命令可以切换用户,详细语法:su [-] [用户名]

        [-]表示切换后加载环境变量,建议带上

        用户名可以省略,默认切换到root用户

        sudo命令可以让一条普通命令带有root权限,语法细节:sudo 其他命令

        

1、用户和用户组

        linux可以支持多用户、多用户组、用户加入多个组

        linux权限管控的单元是用户级别和用户组级别

        用户用户组管理相关命令:

                groupadd添加组;groupdel删除组

                useradd添加用户;userdel删除用户

                usermod修改用户组;id命令查看用户信息

                getent passwd 查看系统全部用户信息

                getent group 查看系统全部组信息

2、chmod命令

        可以使用chmod命令,修改文件、文件夹的权限信息。

        注意,只有文件、文件夹的所属用户或root用户可以修改

        语法细节:chmod [-R] 权限 文件或文件夹

        ·选项:-R,对文件夹内的全部内容应用相同的操作

        示例:chmod u=rwx,g=rx,o=x hello.txt 将文件权限修改为:rwxr-x--x

                ·其中:u表示user所属用户权限,g表示group组权限,o表示other其他用户权限

        权限的数字序号:权限可以用3位数字来代表,第一位数字表示用户权限,第二位表示用户组权限,第三位表示其他用户权限。数字的细节如下:r记为4,w记为2,x记为1,可以有:

        ·0:无任何权限,即 ---

        ·1:仅有x权限,即--x

        ·2:仅有w权限,即-w-

        ·3:有w和x权限,即-wx

        ·4:仅有r权限,即r--

        ·5:有r和x权限,即r-x

        ·6:有r和w权限,即rw-

        ·7·:有全部权限,即rwx

3、chown命令

        使用chown命令可以修改文件、文件夹的所属用户和用户组

        普通用户无法修改所属为其他用户或组,所以此命令只适用于root用户执行。

        语法细节:chown [-R] [用户][:][用户组] 文件或文件夹

        ·选项-R,同chmod,表示对文件夹内的全部内容应用相同的规则

        ·选项,用户,修改所属用户

        ·选项,用户组,修改所属用户组

        ·  “:”符号用于分隔用户和用户组

        示例:chown root:user hello.txt,将hello.txt所属用户修改为root,用户组修改为user

四、linux使用知识

1、各类小技巧快捷键

        ctrl+c 强制停止

                ·linux某些程序的运行,如果想要强制停止它,可以使用快捷键ctrl+c

                ·命令输入错误,也可以通过快捷键ctrl+c,退出当前输入,重新输入

        ctrl+d 退出或登出

                ·可以通过快捷键:ctrl+d,退出账户的登录

                ·或者退出某些特定程序的专属页面(如python编辑)                ps:不能用于退出vi/vim

        history 历史命令搜索

               ·可以通过:!命令前缀,自动执行上一次匹配前缀的命令,如!py执行之前的python命令(找到第一个匹配命令)

               ·可以通过快捷键:ctrl+r,输入内容去匹配历史命令,如果搜索到的内容是你需要的,那么:1、回车键可以直接执行。2、键盘左右键,可以得到此命令(不执行)。

        光标移动快捷键

                ·ctrl+a,跳到命令开头

                ·ctrl+e,跳到命令结尾

                ·ctrl+键盘左键,向左跳一个单词

                ·ctrl+键盘右键,向右跳一个单词

        清屏

                ·通过快捷键ctrl+l,可以清空终端内容

                ·或通过命令clear得到同样的效果

2、软件安装

        yum命令(centos):

                RPM包软件管理器,用于自动化安装配置Linux软件,并可以自动解决依赖问题

                语法细节:yum [-y] [install | remove | search] 软件名称

                        ·选项:-y,自动确认,无需手动确认安装或卸载的过程

                        ·install:安装

                        ·remove:卸载

                        ·search:搜索

                yum命令需要root权限哦,可以su切换到root,或使用sudo提权

                yum命令需要联网

        apt命令(ubuntu):

                ubuntu使用apt管理器

                语法细节:apt [-y] [install | remove | search] 软件名称,用法和yum一致,同样需要root权限

                ·apt install wget,安装wget

                ·apt remove wget,移除wget

                ·apt search ,搜索wget

3、systemctl命令

        linux系统很多软件(内置或第三方)均支持使用systemctl命令控制:启动,停止,开机自启

        能够被systemctl管理的软件,一般也称之为:服务

        语法细节:systemctl start | stop | status | enable | disable 服务名

                start启动,stop关闭,status查看状态,enable开启开机自启,disable关闭开机自启

        系统的内置服务比较多,比如:

                ·NetworkManager,主网络服务

                ·network,副网络服务

                ·firewalld,防火墙服务

                ·sshd,ssh服务

4、软链接

             ln命令创建软链接,在系统中创建软链接,可以将文件、文件夹链接到其他位置。

            语法细节:ln -s 参数1 参数2

                ·-s选项,创建软链接

                ·参数1:被链接的文件夹或文件

                ·参数2:要链接去的地方

        实例:

                ·ln -s /etc/yum.conf  ~/yum.conf

                ·ln -s /etc/yum  ~yum

5、日期和时区

        date命令:

                可以在命令行中查看系统的时间

                语法细节:date [-d] [+格式化字符串]

                        ·-d 按照给定的字符串显示日期,一般用于日期计算

                                如:date -d “ +1 day” +%Y%m%d  #显示后一天的日期

                                其中支持的时间标记为:

                                        year年,month月,day天,hour小时,minute分钟,second秒

                        ·格式化字符串:通过特定的字符串标记,来控制显示的日期格式

                                ·%Y:年

                                ·%y:年份后两位数字(00,99)

                                ·%m:月份(01,..12)

                                ·%d:日(01,..31)

                                ·%H:小时(00,..23)

                                ·%M:分钟(00,..59)

                                ·%S:秒(00,..60)

                                ·%s:自1970-01-01 00:00:00 UTC到现在的秒数

        修改Linux时区:

                如用root权限,执行如下命令,修改时区为东八区时区

                        rm -f /etc/localtime

                        sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

                        将系统自带的localtime文件删除,并将/usr/share/zoneinfo/Asia/Shanghai文件链接为localtime文件即可。

        ntp程序自动时间校准

                安装ntp:yum -y install ntp

                启动并设置开机自启:

                        ·systemctl start ntpd

                        ·systemctl enable ntpd

                当ntp启动后会定期帮助我们联网校准系统的时间

                ·也可以手动校准(需root权限):ntpdate -u ntp.aliyun.com 

                  

6、IP地址和主机名

        IP地址:是联网计算机的网络地址,用于在网络中进行定位

        格式是:a.b.c.d,其中abcd是0~255的数字

        特殊IP有:127.0.0.1,本地回环IP,表示本机

        0.0.0.0:也可以表示本机,也可以在一些白名单中表示任意IP

        

        主机名:就是主机的名称,用于标识一个计算机

        

        域名解析:可以通过主机名找到对应计算机的IP地址,这就是主机名映射(域名解析)

        先通过系统本地的记录去查找,如果找不到就联网去公开DNS服务器查找 

7、配置LINUX固定IP地址

8、网络请求和下载

        ping命令 :可以通过ping命令,检查指定的网络服务器是否可连通状态。

        语法细节:ping [-c num] ip或主机名

        ·选项:-c,检查的次数,不使用-c选项,将无限次数持续检查

        ·参数:ip或主机名,被检查的服务器的ip地址或主机名地址

        wget命令:非交互式的文件下载器,可以在命令行内下载网络文件。

        语法细节:wget [-b] url

        ·选项:-b,可选,后台下载,会将日志写入到当前工作目录的wget-log文件。

        ·参数:url,下载链接

        curl命令:可以发送http网络请求,可用于:下载文件、获取信息等。

        语法细节:curl [-O] url

        ·选项:-O,用于下载文件,当url是下载链接时,可以使用此选项保存文件。

        ·参数:url,要发起请求的网络地址

9、端口

        端口是设备与外界通讯交流的出入口。端口可以分为:物理端口和虚拟端口两类。

        ·物理端口:又可称之为接口,是可见的端口,如USB端口,RJ45网口,HDMI端口等。

        ·虚拟端口:是指计算机内部的端口,是不可见的,是用来操作系统和外部进行交互使用的。

        Linux中可以支持65535个端口,这6万多个端口分为3类使用:

        ·公认端口:1~1023,通常用于一些系统内置或知名程序的预留使用,如SSH服务的22端口,HTTPS服务的443端口。非特殊需要,不要占用这个端口范围。

        ·注册端口:1024~49151,通常可以随意使用,用于松散的绑定一些程序\服务

        ·动态端口:49152~65535,通常不会固定绑定程序,而是当程序对外进行网络链接时,用于临时使用。

        查看端口占用情况:

        ·使用nmap命令,安装nmap:yum -y install nmap      \       apt-get install nmap 

        语法:nmap 被查看的ip地址

        

        ·使用netstat命令,查看制定端口的占用情况

        语法:netstat -anp | grep 端口号

10、进程管理

        进程:程序运行在操作系统中,是被操作系统所管理的。为管理运行的程序,每一个程序在运行的时候,便被操作系统注册为系统中的一个:进程。

        并为每一个进程都分配有一个独有的:进程ID(进程号)。

        查看进程:可以通过ps命令查看Linux系统中的进程信息。

        语法:ps [-e -f]

        选项:-e,显示出全部的进程。

        选项:-f,以完全格式化的形式展示信息(展示全部的信息)

        一般来说,固定的用法就是:ps -ef 列出全部进程的全部信息。

        关闭进程:通过kill命令关闭进程。

        语法:kill [-9] 进程ID

        选项:-9,表示强制关闭进程。不使用此选项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制。

11、主机状态监控

        查看系统资源占用:可以通过top命令查看CPU、内存使用情况,类似Windows的任务管理器。默认每5秒刷新一次。

        语法:直接输入top即可,按q或ctrl+c退出。

        

        top命令也支持选项

         ·-p:只现实某个进程

        ·-d:设置刷新时间,默认5s

        ·-c:显示产生进程的完整命令,默认是进程名

        ·-n:指定刷新次数,比如top -n 3,刷新输出3次后退出

        ·-b:以非交互全屏模式运行,以批次的方式执行top,一般配合-n指定输出几次统计信息,将输出重定向到指定文件,比如top -b -n 3 > /tmp/top.tmp

        ·-i:不显示任何闲置(idle)或无用的(zombie)进程

        ·-u:查找特定用户启动的进程

        top交互式选项:

        ·h键:显示帮助画面

        ·c键:显示产生进程的完整命令

        ·f键:可以选择需要展示的项目

        ·M键:根据驻留内存大小排序

        ·P键:根据CPU使用百分比大小进行排序

        ·T键:根据时间/累计时间进行排序

        ·E键:切换顶部内存显示单位

        ·e键:切换进程内存显示单位

        ·l键:切换显示平均负载和启动时间信息

        ·i键:不显示闲置或无用的进程

        ·t键:切换显示cpu状态信息

        ·m键:切换显示内存信息

        磁盘信息监控:使用df命令,可以查看磁盘的使用情况

        语法:df [-h]

        选项:-h,以更加人性化的单位显示

        可以使用iostat查看CPU、磁盘的相关信息

        语法:iostat [-x] [num1] [num2]

        ·选项:-x,显示更多信息

        ·num1:数字,刷新间隔;num2:数字,刷新几次。

        网络状态监控:可以使用sar命令查看网络的相关统计。

        ·语法:sar -n DEV num1 num2

        ·选项:-n,查看网络,DEV表示查看网络接口

        num1:刷新间隔(不填查看一次就结束);num2:查看次数(不填无限次数)

12、环境变量

        环境变量:是操作系统(Windows,Linux,Mac)在运行的时候,记录的一些关键信息,用以辅助系统运行。

        在Linux系统中执行:env命令即可查看当前系统中记录的环境变量。

        环境变量是一种KeyValue型结构,即名称和值。

        

        可以通过env命令查看当前系统配置的环境变量信息。

        通过$符号,可以取出环境变量的值。

        

        PATH:环境变量PATH会记录一组目录,目录之间隔用“:”隔开。这里记录的是命令的搜索路径,当执行命令会从记录中记录的目录中挨个搜索要执行的命令并执行。

        可以通过修改这个项目的值,加入自定义的命令搜索路径。

        如export PATH=$PATH:自定义路径。

        修改环境变量:

        ·临时修改:export 名称=值

        ·永久生效:

                ·针对用户:~/.bashrc文件中配置(home目录下)

                ·针对全部用户:/etc/profile文件中配置

                ·配置完成,可以通过source命令立刻生效

13、Linux文件的上传和下载

        上传、下载:可以通过finalshall工具,方便的和虚拟机进行数据交换。

        

        rz,sz命令:进行文件传输

        ·rz命令,进行上传,语法:直接输入rz即可。

        ·sz命令,进行下载,语法:sz 要下载的文件

        文件会自动下载到桌面的:fsdownload文件夹中。

14、压缩和解压

        压缩格式:如zip,7zip,rar,tar,gzip。

        在linux中主要使用:tar,gzip,zip三种压缩格式完成文件的压缩解压操作。

        tar命令:Linux和Mac系统常用的有2种压缩格式,后缀名分别是:

        ·.tar,称之为tarball,归档文件,即简单的将文件组装到一个.tar的文件内,并没有太多文件体积的减少,仅仅是简单的封装。

        ·.gz,也常见为.tar.gz,gzip格式压缩文件,即使用gzip压缩算法将文件压缩到一个文件夹内,可以极大的减少压缩后的体积。

        针对这两种命令格式,使用tar命令均可以进行压缩和解压缩操作。

        语法:tar [-c -v -x -f -z -C] 参数1 参数2 ... 参数N

        ·-c:创建压缩文件,用于压缩模式

        ·-v:显示压缩、解压过程,用于查看进度

        ·-x:解压模式

        ·-f:要创建的文件,或要解压的文件,-f选项必须在所有选项中位置处于最后一个。

        ·-z:gzip模式,不适用-z就是普通的tarball格式

        ·-C:选择解压的目的地,用于解压模式

        

        tar命令压缩常用组合

        ·tar -cvf test.tar 1.txt 2.txt 3.txt

        将1.txt 2.txt 3.txt 压缩到test.tar文件内

        ·tar -zcvf test.tar.gz 1.txt 2.txt 3.txt

        将1.txt 2.txt 3.txt 压缩到test.tar.gz文件内,使用gzip模式

        注意:-z选项如果使用的话一般处于选项位第一个。-f选项必须在选项位最后一个。

        tar解压,常用的解压组合有:

        ·tar -xvf test.tar

        解压test.tar,将文件解压至当前目录。

        ·tar -xvf test.tar -C /home/xx

        解压test.tar ,将文件解压至指定目录(/home/xx)

        ·tar -zxvf test.tar.gz -C /home/xx

        以gzip模式解压test.tar.gz,将文件解压至指定目录(/home/xx)

        注意:-f选项必须在选项组合体的最后一位

        -z选项建议在开头位置

        -C选项单独使用,和解压所需的其他参数分开 

        zip命令压缩文件:可以使用zip命令,压缩文件为zip压缩包。

        语法:zip [-r] 参数1 参数2 ... 参数N

        ·-r:被压缩的包含文件夹的时候,需要使用-r选项,和rm、cp等命令的-r效果一致。

        示例

        ·zip  test.zip a.txt b.txt c.txt

        将a.txt b.txt c.txt 压缩到test.zip文件内

        ·zip -r test.zip test xx a.txt

        将test、xx两个文件夹和a.txt文件,压缩到test.zip文件内

 

        unzip命令解压文件:使用unzip命令,可以方便的解压zip压缩包

        语法:unzip [-d] 参数

        ·-d:指定要解压去的位置,同tar的-C选项

        ·参数:被解压的zip压缩包文件

        示例

        ·unzip test.zip 将test.zip解压到当前目录

        ·unzip test.zip -d /home/xx,将test.zip解压到指定文件夹内(/home/xx)

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值