Linux-学习记录常用命令

114 阅读12分钟

Linux命令基础格式

无论是什么命令,用于什么用途,命令有其通用的格式:

command [-options] [parameter]

  • command:命令本身
  • -options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节
  • parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等

一、ls 指令 列出目录下的内容 (list)

作用:在命令行中,以平铺的形式,展示当前工作目录下的内容(文件或文件夹)
语法:ls [-a -l -h] [Linux路径]

  • -a (all)列出全部文件(包含隐藏的文件/文件夹)
  • -l (list)用列表(竖形)形式列出全部文件/文件夹
  • -h 以易于阅读的形式列出文件大小,如K,M,G
  • 【-h选项必须要搭配-l一起使用】
  • 【三个可以混合使用】

二、cd 指令 切换工作目录(change directory)

作用:更改当前所在的工作目录
语法:cd [Linux路径]

  • 无需选项,只有参数,表示要切换到哪个目录下
  • cd 命令直接执行,不写参数,表示回到用户的HOME目录

三、pwd 指令 查看当前工作目录(print work directory)

作用:查看当前所在的工作目录
语法:无参数,无选项,直接输入pwd即可

四、mkdir 指令 创建目录命令 (make directory)

作用:创建新的文件夹
语法:mkdir [-p] Linux路径

  • 参数必填:表示Linux路径,要创建的文件的路径(绝对相对路径都可以)
  • -p 表示当父目录不在时,直接连根目录也一起创建

五、相对路径和绝对路径

绝对路径:以根目录为起点
相对路径:以当前路径为起点

六、特殊路径符 (.)(...)(~)

.:表示当前目录
..:表示上一级目录
~:表示HOME目录

七、touch 指令 创建文件

作用:创建文件
语法:touch Linux路径

  • 无选项
  • 参数必填,表示要创建的文件路径

八、cat 指令 查看文件内容

作用:查看文件内容
语法:cat Linux路径

  • 无选项
  • 参数必填,表示被查看文件的路径

九、more 指令 查看文件内容

作用:查看文件内容
语法:more Linux路径

  • 无选项
  • 参数必填,表示被查看文件的路径
  • 与 cat 不同,cat是将内容全部显示出来
  • more支持翻页,如果文件内容过多,可以一页页的展示
  • 按q退出查看

十、cp 指令 复制文件/文件夹(copy)

作用:复制文件/文件夹
语法:cp [-r] 参数1 参数2

  • -r可选,用于复制文件夹时使用,表示递归
  • 参数1,Linux路径,表示被复制的文件/文件夹
  • 参数2,Linux路径,表示要复制去的地方

十一、mv 指令 移动文件/文件夹(move)

作用:移动文件/文件夹,当路径不变时,相当于改名字
语法:mv 参数1 参数2

  • 参数1,表示被移动的文件/文件夹
  • 参数2,表示要移动去的地方,如果目标不存在,则进行改名,确保目标存在

十二、rm 指令 删除文件/文件夹(remove)

作用:用于删除文件/文件夹
语法:rm [-r -f] 参数1 参数2...参数N

  • -r,用于删除文件夹
  • -f,表示force,强制删除(不会弹出确认信息)
  • 普通用户删除内容不会提示,只有root管理员(切换用su - root)用户才会删除内容有提示
  • 参数1 参数2...参数N,表示所要删除的文件/文件夹按照空格隔开
    通配符:符号*表示通配符,用来做模糊匹配,匹配任何内容

十三、grep 指令 全局正则表达式打印(Global regular expression print)

作用:从文件中通过关键字过滤文件内容
语法:grep [-n] 关键字 文件路径

  • 选项 -n,表示仔结果中显示匹配的行的行号
  • 关键字,必填,表示过滤的关键字,带有空格或者其他特殊符号时可以使用“”将关键字包围起来
  • 文件路径,必填,表示过滤内容的文件路径,可作为内容输入端口

十四、wc 指令 数量统计(word count)

作用:统计文件的行数,单词的数量
语法:wc [-l -w -c -m] 文件路径

  • -l,统计行数
  • -w,统计单词数量
  • -c,统计bytes数量
  • -m,统计字符数量

十五、管道符 |

作用:将道符左边的命令结果,作为右边命令的输入
例如:

cat text.txt | grep "man"

十六、which 查找命令

作用:查看所使用的一系列的程序文件的存放位置
语法:which 要查找的命令

十七、find 指令

作用:搜索指定的文件

  • 按照名字查找文件,find 起始路径 -name “被查找到文件名”
  • 按照文件大小查找文件,find 起始路径 -size +/-n(单位KMG)如查找小于10kb的文件:find / -size -10k;查找大于100M的文件:find / -size +100M

十八、echo 输出指令

作用:在命令行里面输出指定内容
语法:echo 输出内容 无参数,可以用 “” 包围

  • 单用''包围时,会被视为命令执行,而非普通字符

十九、重定向符 >和>>

  • '>':侧的命令结果,覆盖写入到符号右侧指定的文件中
  • '>>':将左侧的命令结果,追加写入到右侧指定的文件中

二十、tail 指令

作用:查看文件尾部内容,跟踪文件的最新更改
语法:tail [-f -num] Linux路径

  • -f,表示持续跟踪文件最新更改
  • -num,表示查看尾部num行,不填写默认10行
  • Linux路径,表示被跟踪得文件路径

二十一、vim编辑器

  • 是一种文本编辑器,对一个文件写入内容用的
  • 有三种模式,命令模式,输入模式,底线命令模式 语法:vim 文件路径
  • 在vim filename 后,执行到命令模式,再按 i ,进入输入模式,输入完内容后,按 exc回退命令退回到命令模式,在式内,输入键盘:,进入底线命令模式,在底线命令模式中输入wq。就可以保存退出vim编辑器(w表示保存,q表示退出)

命令模式下的快捷键

i 进入输入模式
/ 进入搜索模式
n 向下继续搜索
N 向上继续搜索
dd 删除光标所在行
ndd n是数字,表示删除当前光标向下n行
yy 复制当前行
nyy n是数字,表示复制当前光标向下n行
p 粘贴复制的内容
u 撤销修改
gg 调到首行
G 跳到行尾

编辑模式

编辑模式没有什么特殊的,进入编辑模式后,任何快捷键都没有作用,正常输入文本

底线命令模式下的快捷键

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

二十二、su(switch user)指令

作用:用于账户切换的系统命令
语法:su [-] [用户名]

  • -选项可选,表示是否在切换用户后加载环境变量,建议带上
  • 参数:用户名,表示要切换的用户,省略表示切换到root

二十三、exit 指令 退回到上一个用户

语法:使用普通用户切换到其他用户需要输入密码,如切换到root用户,root用户切换到其他用户不用密码。可以直接切换

二十四、sudo 指令

作用:为普通的命令授权,临时以root的身份执行
语法:sudo 其他命令

二十五、用户、用户组管理

Linux中可以配置多个用户和多个用户组,用户也可以加入多个用户组中

用户组管理

  • 创建用户组:groupadd 用户组名
  • 删除用户组:groupdel 用户组名

用户管理

  • 创建用户:useradd [-g -d] 用户名,-g 指定用户的组。指定-g,会创建同组名并自动加入,指定-g需要组已经存在,如已经存在同名组,必须使用-g;-d ,指定用户HOME路径,不指定HOME目录默认在/home/用户名
  • 删除用户:userdel [-r] 用户名,-r表示删除用户的HOME目录
  • 修改用户所属组:usermod -aG 用户组 用户名;讲指定用户加入指定用户组

getent passwd 令查看系统中有哪些用户

getent group 指令查看用户中有哪些用户组

二十六、chmod指令

作用:修改文件/文件夹的权限信息(只有文件、文件夹的所属用户或者root用户可以修改)
语法:chmod [-R] 权限 文件或文件夹

  • -R ,表示对里面的文件也同时应用同样的操作

二十七、yum 命令

作用:RPM包软件管理器,用于自动化安装配置Linux软件,并可以自动解决依赖问题
语法:yum [-y] [install | remove | search] 软件名称

  • -y,自动确认,无需手动确认或安装卸载过程
  • install,安装
  • remove,卸载
  • search,搜索
  • 注意:yum命令需要root权限,可以使用sudo提权
  • yum需要联网

二十八、systemctl 指令

作用:使用systemctl命令控制:启动、停止、开机和自启
语法:systemctl start | stop | status | enable | disable 服务

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

什么是软连接

  • 可以将文件、文件夹链接到其他位置。链接只是一个指向,并不是物理移动,类似于快捷方式

二十九、ln 指令 创建软链接

作用:在系统中创建软链接,可以将文件、文件夹链接到其他位置
语法:ln -s 参数1 参数2

  • -s,创建软链接
  • 参数1,背链接的文件或文件夹
  • 参数2,要链接去的目的地

三十、date命令

作用:在命令行中查看系统时间,并可以格式化显示形式以及日期计算
语法:date [-d] [+格式化字符串]

  • 注意,用Linux查看的时间是不准的,因为系统默认时区不是中国这边的
  • 修改如下:
  • 使用root权限,执行如下命令
  • rm -f /etc/localtime
  • sudo ln -s /usr/share/zoneino/Asia/Shanghai /stc/localtime
  • -d,按照给定的字符串显示日期,一般用于日期计算
  • 格式化字符串:通过特定的字符串标记,来控制显示的日期格式
  • %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到现在的秒数

三十、ping 指令

作用:检查指定的网络服务是否是可连通状态
语法:ping [-c num] ip或主机名

  • -c, 检查的次数num,不适用-c选项将无限次持续检查
  • ip或主机名,被检查的服务器的ip地址或者主机名

三十一、wget命令

作用:wget是非交互式的文件下载器,可以在命令行内下载网络文件
语法:wget [-b] url

  • -b,可选,后台下载,会将日志写入到当前工作目录的wget-log文件
  • 参数url,下载链接

三十二、curl命令

作用:发送http网络请求,可用于下载文件、获取信息等
语法:curl [-O] url

  • -O,用于下载文件,当url是下载链接时,可以使用次选项保存文件
  • url,要发送的请求的网络地址

三十三、文件下载、上传re/sz命令

作用:要先安装yum -y install lrzsz
语法:rz进行上传,直接rz。sz进行下载,sz 要下载的文件

三十四、文件压缩 tar命令

  • 两种常用的压缩格式,后缀分别是:
  • .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 -cvf test.tar 1.txt 2.txt 3.txt 将1.txt 2.txt 3.txt压缩到text.tar文件内
  • tar -zcvf test.tar 1.txt 2.txt 3.txt 将1.txt 2.txt 3.txt压缩到text.tar.gz文件内,使用gzip模式

tar解压文件

作用:解压文件
语法:同上,选项带的不同

  • 常用组合:
  • tar -xvf text.tar 解压文件text.tar,将文件解压到当前目录
  • tar -xvf text.tar -C /home/itman/text 解压text.tar,将文件解压到指定目录
  • tar -zxvf text.tar.gz -C /home/itman/text 以Gzip模式解压text.tar.gz,将文件解压到指定目录
  • -C,选项单独使用,和解压所需的其他参数分开

zip命令压缩文件

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

  • -r,被压缩的文件包含文件夹的时候需使用-r选项

unzip 命令解压文件

语法:unzip [-d] 参数

  • -d,指定要解压去的位置
  • 参数,被解压的zip压缩文件