文章目录

  • 远程连接Linux(SSH)
  • 终端下复制粘贴
  • 创建&删除&切换用户
  • 关机命令
  • clear命令
  • whoami命令
  • 修改主机名
  • ls命令
  • pwd命令
  • cd命令
  • touch命令
  • mkdir
  • rmdir 命令
  • rm命令
  • man命令
  • cp命令
  • mv命令
  • cat命令
  • tac命令
  • more命令
  • less命令
  • head命令
  • tail命令
  • 显示指定位置内容技巧(重定向和管道)
  • > & >> & <
  • echo
  • date
  • cal命令
  • find命令
  • which命令
  • grep命令
  • alias命令
  • zip/unzip命令
  • tar命令
  • bc命令
  • file命令
  • unname命令
  • history命令
  • type命令
  • 重要的热键
  • 其它命令

远程连接Linux(SSH)

远程的终端软件有很多,有XShell、FinalShell等

通过 ssh 命令连接

> ssh [云服务器公网ip]

Windows可以通过 cmd 命令框连接命令

> ssh 用户名+@+公网ip

终端下复制粘贴

复制:ctrl + Insert

粘贴:shift + Insert

创建&删除&切换用户

注意:创建和删除命名一定是在 root用户下
(1)创建用户
adduser [用户名]
(2)给用户设置密码
passwd [用户名]


(3)查看当前系统有哪些用户
ls /home

(4)删除用户

userdel -r [用户名]


(5)切换用户
在普通用户输入 su - [用户名] ,输入 root 密码就能进入 root账户,如果想回到普通用户下直接 Ctrl + D

关机命令

语法:shutdown [选项]
常见选项
-h:将系统的服务停掉后,立即关机
-r:在将系统的服务停掉之后就重新启动
-t sec:-t 后面加秒数,就是几秒后关机

clear命令

语法:clear
功能:清空命令框
当命令框中代码铺满命令框,可用 clear命令清空屏幕

whoami命令

语法:whoami
功能:获取当前用户的用户名

修改主机名

在Centos7中主机名分3类

  1. 静态的(static)
    静态主机名也称为内核主机名,是系统在启动时从/etc/hostname内自动初始化的主机名,相当于永久更改
  2. 瞬态的(transient)
    瞬态主机名是在系统运行时临时分配的主机名,相当于临时更改
  3. 灵活的
    灵活主机名允许使用特殊字符的主机名
    语法:hostnamectl
    查看主机名:hostname
    临时更改主机名:hostname [临时主机名]
    永久更改主机名:编辑

(2)修改主机名(同时设置静态和瞬态主机名)
语法:hostnamectl set-hostname [主机名]

(3)设置灵活主机名
语法:hostnamectl --pretty set-hostname [主机名]

ls命令

语法:ls [选项] [目录或文件]
功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息
在Linux中,以 .开头的文件叫做隐藏文件

常用选项

  1. ls -a 列出目录下所有文件,包括以 . 开头的隐藏文件

注意:. 代表当前目录,.. 代表上级目录

  1. ls -d 将目录像文件一样显示,而不是显示其下的文件

比如: ls -d 指定目录

  1. ls -l列出文件的详细信息

注意:ls -l 可以简写成 ll,效果是一样的

  1. ls -n 用数字的 UID,GID 代替用户名称

  1. ls -R 列出所有子目录下的文件。 (递归)
  2. ls -r 对目录反向排序
    默认是按字母从a到z排序,-r是从z到a反向排序

pwd命令

语法: pwd
作用:显示用户当前所在目录

cd命令

Linux的目录结构和文件的组织形式是以多叉树的形式组织的,几乎大部分操作系统,组织目录文件结构的时候,都喜欢用树形结构。
因为树形结构便于查找,所有的文件都必须得有唯一的标识方式,从根节点到叶子节点,路径是唯一的,反过来也是同理

语法:cd 目录名
功能:改变工作目录,也就是切换目录
在Linux中任何目录下,都默认存在两个目录(. & …)
. 单前目录
… 上一级目录
常用选项

(1)cd .. :返回到上级目录

(2)cd /root/apache-tomcat-8.5.76/bin :通过绝对路径访问目录

(3)cd ../webapps/ :通过相对路径打开目录

(4)cd ~:进入根目录

cd - 返回最近访问的目录(上次访问的目录)

touch命令

语法:touch [选项] [文件]
功能:touch命令 可以新建一个不存在的文件,参数可以更改文档或目录的日期时间,包括存取时间和更改时间

常用选项:

(1) 新建文件


(2)新建多个文件
touch 文件1 文件2 ...

mkdir

语法:mkdir [选项] 目录名
功能:在当前目录下创建一个目录

常用选项

(1)直接创建一个目录

(2)递归创建多个目录

语法:mkdir -p 目录名/目录名...

rmdir 命令

rmdir是一个与mkdir相对应的命令。 mkdir是建立目录,而rmdir是删除命令
语法:rmdir 目录名
功能:删除空目录
适用对象:具有当前目录操作权限的所有使用者


语法二: rmdir -p 目录名

-p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除

rm命令

rm命令可以同时删除文件或目录

语法rm [-f -i -r -v] [目录名]
适用对象:所有使用者
功能: 删除文件或目录

常用选项:

(1)-f 即使文件属性为只读(即写保护),也直接删除

(2)-i 删除前逐一询问确认
和默认的不带选项没啥区别

(3)-r 递归删除当前目录的所有目录和文件(包括子目录)


(4)rm使用技巧:可以使用通配符 *

rm -rf *:删除单前目录下所有文件

rm ./ *:删除单前目录下的所有文件

(5)rm -rf /
rm是删除,-r 是递归删除,-f是无需确强制删除
rm -rf / 递归强制删除根目录,这是一条非常危险的命令

man命令

Linux有很多命令,直接记是记不住的。那么就可以使用Linux自带的参考手册,通过 man 命令就可以访问使用Linux的参考手册
语法: man [选项] [命令]

不知道 man 命令怎么用,man 命令 还可以查自己的用法 man man

如果有些选项用不了可以使用 yum install man 命令下载man

再用 yum install man-pages 安装man


man常用选项
man手册分为8章
就是普通用户命令
是系统调用,比如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件)
是库函数,比如 printf
是指文件格式,比如 passwd
是给游戏留的,由各个游戏自己定义
是附件还有一些变量,比如environ
是系统管理用的命令,这些命令只能由root用户使用

cp命令

语法:cp [选项] 源文件或目录 目标文件或目录
功能:复制文件或目录
说明:cp指令用于复制或目录,如同时指定两个以上的文件或者目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。

常用选项:

(1)-f :强行复制文件或目录,无论目的文件或者目录已经存在
(2)-i:覆盖文件之前先询问用户
(3)-r:递归处理,将指定目录下的文件和子目录一并处理(会把所有source(来源)当做普通文件

(4)-R:和-r类似,但是对于特殊文件(管道文件,块设备文件,字符设备文件)会进行创建操作,而不是拷贝。
(5)通配符*拷贝,和rm类似,可以使用通配符指定文件拷贝

mv命令

mv命令是move的缩写,可以用来移动文件或者将文件改名
语法:mv [选项] 源文件或目录 目标文件或目录
功能:

  1. mv命令中第二个参数类型的不同(目录或者文件),mv命令将文件重命名或将其移至一个新目录中
  2. 如果第二个参数类型是文件,mv 命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所有的源文件或目录重命名为给定的目标文件名
  3. 第二个参数是已经存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数的源文件都移动到目标目录中

常用选项:
1. -f:force强制的意思,如果目标文件已经存在,不会询问而直接覆盖
2. -i:若目标文件已经存在时,就会询问是否覆盖

(1)使用 mv 命令重命名

(2)使用 mv 命令 移动文件


(3)移动整个目录

cat命令

语法:cat [选项] [文件]
功能:查看目标文件的内容
注意:cat命令会将目标文件内容全部打印到屏幕上,若是目标文件内容太多,则会将所有内容全部打印到屏幕上,会不方便查看,所以cat一般查看内容较少的文件

常用选项:
(1)-p 对非空输出行编号

(2)-n 对输出的所有行编号(包括空行)


(3)-s :不输出多行空行(多个空行只显示一行)

tac命令

语法:more:[选项] [文件]
功能:反向查看文件内容

more命令

cat只适用于查看少量内容的文件,而 more就可以用于查看海量数据的文件,more支持翻页

语法:more [选项] [文件]
功能:查看海量数据文件(不会一次性显示完,而是分页)
通过回车进行换页操作(按q退出
注意:more 命令只支持下翻操作,不支持下翻操作

less命令

less工具也是对文件或其它输出进行分页显示的工具,应该是Linux上功能极其强大的文件查询工具

less对比起 more 更加强大,more只能向下翻页,而 less 既能向上翻,又能向下翻(通过 ↑ ↓翻页)

语法:less [选项] [文件名]


常用选项:
(1)-i 忽略搜索时的大小写
(2)-N 显示每行的行号

head命令

语法:heap [参数] [文件]
功能:head 用来显示文件内容的开头内容(默认是前10行)


常用选项:
(1)-n:显示多少行(也可以直接 -行数

tail命令

语法:tail [必要参数] [选择参数] [文件]
功能:用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用语查看文件日志


常用选项:
-n:显示最后 n 行内容(或者直接省略 n)

显示指定位置内容技巧(重定向和管道)

如果要显示 980行到1000行的内容
方法1:先用head查找文件前1000行数据重定向到临时文件中,再同tail命令查找临时文件中的后20行数据

方法2
用管道|实现
|左边是生产的数据,右边是读取的命令

> & >> & <

>>> 是输出重定向
> 会覆盖文件内容,而 >> 是直接追加到文件里

输入重定向 <
把 tmp.txt的内容显示到屏幕上
less < tmp.txt

echo

语法:echo [字符串]
功能:显示字符串


配合 >> 追加内容

date

语法:date指定格式显示时间:date +%
常用选项:

  • %H : 小时(00…23)
  • %M : 分钟(00…59)
  • %S : 秒(00…61)
  • %X : 相当于 %H:%M:%S
  • %d : 日 (01…31)
  • %m : 月份 (01…12)
  • %Y : 完整年份 (0000…9999)
  • %F : 相当于 %Y-%m-%d

(1)显示当前时间
date +%Y/%m/%d-%H:%M:%S
date +%F/%X


(2)时间戳
时间戳:是指从 1970年1月1日开始所经历的秒数

时间转时间戳
date +%s

时间戳转时间
data -d@时间戳

cal命令

cal命令可以用来显示公历(阳历)日历
语法:cal [选项] [年份]

常用选项
(1)-3显示系统前一个月,当前月,下一个月的月历

(2)-j显示在当年中的第几天


(3)-y:显示当前年份的日历

find命令

语法:find [路径] [选项]
功能:在文件树中查找文件(可能访问磁盘)

常用选项:
(1)-name 按文件名查找

(2)-size:按文件大小查找

which命令

其实 Linux里的每一条指令都是用语言编写的
which命令可以查看系统命令的绝对路径

语法:which [命令]

grep命令

语法:grep [选项] [字符串] [文件]
功能:在文件中查找指定字符串

常用选项:
-i:忽略大小写的不同,所以大小写视为相同
-n:输出行号
-v:反向选择,也就是查找不包含该字符的内容

grep -v "6" tmp.txt:在tmp.txt中查找不包含 6的字符串

alias命令

语言:alias [别名]=‘原名’
功能:给某条命令取别名

zip/unzip命令

zip:压缩

语法:zip [压缩文件.zip] [目录或文件]
功能:将目录或文件压缩成zip格式

常用选项:
(1)-r:递归处理,将指定目录下的所有文件和子目录一并处理

unzip:解压
语法:unzip [解压文件名.zip]

默认解压到当前目录


常用选项
-d:解压到指定文件夹

tar命令

tar命令可以 打包压缩文件,还可以不解压查看压缩文件,或者是只打包文件不压缩。
打包,指的是一个文件或目录的集合,而这个集合被存储在一个文件中。归档文件没有经过压缩,占用的空间是
其中所有文件和目录的总和。
语法:tar -[选项] [压缩或解压文件名] [路径]

常用选项:
-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
-C : 解压到指定目录

(1)将文件打包并压缩

(2)解压文件

(3)不解压查看文件

bc命令

bc 命令可以用来计算,可以理解为Linux上的计算器

file命令

语法:file [文件或目录]
功能:查看文件更多的属性信息

unname命令

语法:uname [选项]
功能:获取电脑和操作系统相关信息
常用选项
-a:依次输出为,内核名称、主机名、内核版本号、内核版本、硬件名、处理器类型、硬件平台类型、操作系统名称

history命令

功能:查看输入的历史命令
也可以按↑↓查看历史命令

type命令

语法:type [命令]
功能:查看命令是外部命令还是内部命令

重要的热键

Ctrl+D:退出当前命令行
Ctrl+C:如果程序死循环或者某条命令不想要就可以使用
Ctrl+R:搜索历史命令
Tab:自动补全功能(如果忘记命令了,可以输入命令的开头字母连按两次Tab)

其它命令

  • 安装和登录命令: login、 shutdown、 halt、 reboot、 install、 mount、 umount、 chsh、 exit、 last;
  • 文件处理命令: file、 mkdir、 grep、 dd、 find、 mv、 ls、 diff、 cat、 ln;
  • 系统管理相关命令: df、 top、 free、 quota、 at、 lp、 adduser、 groupadd、 kill、 crontab;
  • 网络操作命令: ifconfig、 ip、 ping、 netstat、 telnet、 ftp、 route、 rlogin、 rcp、 finger、 mail、 nslookup;
  • 系统安全相关命令: passwd、 su、 umask、 chgrp、 chmod、 chown、 chattr、 sudo ps、 who;
  • 其它命令: tar、 unzip、 gunzip、 unarj、 mtools、 man、 unendcode、 uudecode。