Bootstrap

Linux基本指令精华

Linux发行版本的命令大概有 200 多个,但是常用的命令只有 10 多个而已

终端命令格式

root@xxx :~$ command [-options] [parameter]

说明:

  1. command: 命令名,相应功能的英文单词或单词的缩写
  2. [-options]:选项,可用来对命令进行控制,也可省略
  3. 传给命令的参数,可以是零个、一个或者多个

[ ] 代表可选
在一些指令前加 sudo 可以以系统管理者的身份执行指令

一、文件和目录命令

1、ls
root@xxx:~$ ls       #查看当前文件夹下的内容
               -l    #列出当前文件夹下的详细信息
               -a    #列出当前目录下所有文件及目录
               -d    #仅列出目录本身,而不是列出目录内的文件数据
               -h    #配合-l以人性化的方式显示文件大小
通配符含义
*代表任意个数的字符
?代表任意一个字符,至少1个
[ ]表示可以匹配字符组中的任意一个
[abc]匹配a、b、c中的任意一个
[a-f]匹配从a到f范围内的任意一个字符

在这里插入图片描述

2、cd
root@xxx:~$ cd  [文件夹路径]     #用于切换目录的指令
命令含义
cd切换到当前用户的主目录(/home/用户目录)
cd~切换到当前用户的主目录(/home/用户目录)
cd.保持在当前目录不变
cd ..切换到上级目录
cd -可以在最近两次工作目录之间来回切换
3、pwd
root@xxx:~$ pwd       #显示当前所在目录
                -p    #显示出当前目录的确实的路径
4、touch
root@xxx:~$ touch       #创建一个空文件
  • 如果文件 不存在,可以创建一个空白文件
  • 如果文件 已经存在,可以修改文件的末次修改日期
5、mkdir
root@xxx:~$ mkdir       #创建一个新的目录
                  -p    #可以递归创建目录

在这里插入图片描述

新建目录的名称 不能与当前目录中 已有的目录或文件 同名

6、rm

使用rm命令要小心,因为文件删除之后不能恢复

root@xxx:~$ rm       #删除文件和目录
               -r    #递归地删除目录下的内容,删除文件夹时必须加此参数
               -f    #强制删除,忽略不存在的文件,无需提醒

二、拷贝和移动命令

1、cp
root@xxx:~$ cp [源文件] [目标文件]       #复制一个文件或目录
               -f                      #已经存在的目标文件直接覆盖,不会提示
               -i                      #覆盖文件前会有提示
               -r                      #若给出的源文件是目标文件,cp将递归复制该目录下的所
                                       有子目录和文件,目标文件必须为一个目录名
2、mv
root@xxx:~$ mv [源文件] [目标文件]       #移动文件或目录/文件或目录重命名
               -i                      #覆盖文件前会有提示

三、文件内容命令

1、cat
root@xxx:~$ cat [文件名]      #查看文件内容、创建文件、文件合并、追加文件内容等功能
               -b            #覆盖文件前会有提示
               -n            #对输出的所有行进行编号
  • cat 会一次性显示所有内容,适合查看内容较少的文本文件
  • 使用 cat 若一页没完全显示完还有剩余,可按空格进行显示
2、more
root@xxx:~$ more      #分屏显示文件内容
操作键功能
空格键显示手册页的下一屏
Enter 键一次滚动手册页的一行
b往回滚一屏
f向前滚一屏
q退出
/word搜索word字符串
3、grep
root@xxx:~$ grep        #搜索文本文件内容
                 -n     #显示匹配行及行号
                 -v     #显示不包括含匹配文本的所有行(相当于求反)
                 -i     #忽略大小写
参数含义
^a行首,搜索以a开头的行
ke$行尾,搜索以ke结尾的行

四、终端编辑器

1、vim
root@xxx:~$ vim [文件名]      #终端编辑器
操作键功能
/xxx在整篇文章中搜索匹配xxx的字符串
: s/aa/bb/g将aa替换成bb
:q退出
:q!强制退出
:wq保存并退出

五、远程管理命令

1、关机/重启
root@xxx:~$ shutdown [选项] [时间]     #关机(时间)
                     -r               #重新启动

#重新启动操作系统
$shutdown -r now

#系统在今天22:00会关机
$shutdown 22:00

#系统过十分钟后自动关机
$shutdown +10

#取消之前指定的关机计划
$shutdown -c

  • 不指定选项和参数,默认表示1分钟后关闭电脑
  • 远程维护服务器时,最好不要关闭系统,而应该重新启动系统
2、 查看或配置网卡信息
命令作用
ifconfig查看/配置计算机当前的网卡配置信息
ping ip地址检测到目标IP地址是否正常
3、远程登录

ssh [-p port] user@remote

  • user是在远程机器上的用户名,如果不指定的话默认为当前用户
  • remote是远程机器的地址,可以是IP/域名
  • port是SSH Server监听的端口,如果不指定,就为默认值22
命令作用
ssh 用户名@ip关机/重新启动
scp用户名@ip:文件名 ; 用户名@ip:文件名远程复制文件
  • 常见服务端口号列表
服务端口号
SSH服务器22
Web服务器80
HTTPS443
FTP服务器21
  • ssh这个终端命令只能在Linux或者Unix系统下使用
  • 如果在Windows系统中,可以安装PuTTY或者XShell客户端软件即可
  • 使用exit退出当前用户的登录
4、复制文件
root@xxx:~$ scp      #用来进行远程拷贝文件
               -r    #若给出源文件是目标文件,则scp
               		  将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名
               -P    #若远程SSH服务器的端口不是22,需要使用大写字母-P选项指定端口

六、其他命令

1、tree

tree命令可以以树状图列出文件目录结构

root@xxx:~$ tree[目录名]               #以树状图的形式列出文件目录结构
2、sudo 超级用户
  • susubstitute user的缩写,表示 使用另一个用户的身份
  • sudo命令用来以其他身份来执行命令,预设的身份为root
  • 用户使用root时,必须先输入密码,之后有 5分钟的有效限期,超过期限则必须重新输入密码

若其未经授权的用户企图使用 sudo,则会发出警告邮件给管理员

3、查找命令

find命令通常用来在 特定的目录下 搜索 符合条件的目录

root@xxx:~$ find [路径] -name".py"              #查找指定路径下拓展名是".py"的文件,包括子目录
  • 如果省略路径,表示在当前文件夹下查找
  • 可与上述通配符配合使用
4、打包压缩
  • tar是Linux中最常用的备份工具,此命令可以把一系列文件打包到一个大文件中,也可以把一个打包的大文件恢复成一系列文件
  • tar的命令格式如下:
#打包文件
root@xxx:~$ tar -cvf     打包文件.tar 被打包的文件/路径

#解包文件 
root@xxx:~$ tar -xvf     打包文件.tar
  • tar选项说明
选项含义
c生成档案文件,创建打包文件
x解开档案文件
v列出归档解档的详细过程,显示进度
f指定档案文件名。f后面一定是.tar文件,所以必须放选项最后
5、压缩/解压缩
  • targzip命令结合使用可以实现文件 打包和压缩
  • tar只负责打包文件,但不压缩
  • gzip压缩tar打包后的文件,其拓展名一般用xxx.tar.gz

在Linux中,最常见的压缩文件格式就是xxx.tar.gz

  • tar命令中有一个选项**-z**可以调用gzip,从而可以方便的实现压缩和解压缩的功能
  • 命令格式如下:
#压缩文件
root@xxx: tar -zcvf   打包文件.tar.gz  被压缩的文件/路径...

#解压缩文件
root@xxx: tar -zxvf   打包文件.tar.gz

#解压缩到指定路径
root@xxx: tar -zxvf   打包文件.tar.gz -C  目标路径(要解压缩的目录必须存在)
6、软件安装

通过apt 安装/卸载软件

  • apt 是Advanced Packaging Tool,是Linux下的一款安装包管理程序
  • 可以在终端中方便的 安装/卸载/更新软件包
#安装软件
root@xxx: sudo apt-get install  软件包

#卸载文件
root@xxx: sudo apt remove   软件包

#更新已安装的包
root@xxx: sudo apt upgrade
;