常用的linux命令的基本使用(一)

序号 命令 对应英文 作用
01 ls list 查看当前文件夹下的内容
02 pwd print name of of current/working directory 查看当前所在文件夹
03 cd[目录名] change directory 切换文件夹
04 touch[目录名] touch 如果文件不存在,新建文件
05 mkdir[目录名] make directory 创建目录
06 rm[文件名] remove 删除指定的文件名
07 clear clear 清屏

小技巧:

  • ctrl + shift + = 放大终端窗口的字体显示
  • ctrl + - 缩小终端窗口的字体显示

linux终端命令格式

1.终端命令格式
command [-options] [parameter]
说明:

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

[]代表可选

2.查阅命令帮助信息

2.1 command --help (crontab --help)

2.2 man command

说明:man 是 manual 的缩写,是linux 提供的一个手册,包含了绝大部分的命令、函数的详细使用说明
使用man时的操作键:

操作键 功能
空格键 显示手册页的下一屏
Enter 键 一次滚动手册页的一行
b 回滚一屏
f 前滚一屏
q 退出
/word 搜索 word 字符串

文件和目录常用命令

  • 查看目录内容
    • ls
  • 切换目录
    • cd
  • 创建和删除操作
    • touch
    • rm
    • mkdir
  • 拷贝和移动文件
    • cp
    • mv
  • 查看文件内容
    • cat
    • more
    • grep
  • 其他
    • echo
    • 重定向 > 和 >>
    • 管道 |

ls命令说明

linux下文件和目录的特点
  • linux 文件 或者 目录 名称最长可以有 256 个字符
  • 以 . 开头的文件为隐藏文件,需要用 -a 参数才能显示(ls -a)
  • . 代表当前目录
  • .. 代表上一级目录
ls常用选项
参数 含义
-a 显示指定目录下所有子目录与文件,包括隐藏文件
-l 以列表方式显示文件的详细信息
-h 配合-l 以人性化的方式显示文件大小(ls -lh = ls -l -h, ls -a -h = ls -ah)
ls 通配符的使用
通配符 含义
* 代表任意个数个字符
? 代表任意一个字符,至少一个
[] 表示可以匹配字符组中的任一一个
[abc] 匹配a、b、c中的任意一个
[a-f] 匹配从 a 到 f 范围内的任意一个
cd
命令 含义
cd 切换到当前用户的主目录(/home/用户目录)
cd ~ 切换到当前用户的主目录(/home/用户目录)
cd . 保持在当前目录不变
cd .. 切换到上级目录
cd - 可以在最近两次工作目录之间来回切换(配合上下键)
touch

说明:

  • 创建文件或修改文件时间
    • 如果文件 不存在,可以创建一个空白文件
    • 如果文件 已经存在,可以修改文件的末次修改日期
选项 含义
-p 可以递归创建目录
mkdir
  • 创建一个新的目录
    说明新建目录的名称 不能与当前目录中 已有的目录或文件 同名
选项 含义
-p 可以递归创建目录
rm
  • 删除文件或目录

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

选项 含义
-f 强制删除,忽略不存在的文件,无需提示
-r 递归地删除目录下的内容,删除文件夹 时必须加此参数
rm 通配符的使用
  1. rm *1.txt : 删除所有以1结尾的.txt文件
  2. rm -r *: 删除所有文件和文件夹
通配符 含义
* 代表任意个数个字符
? 代表任意一个字符,至少一个
[] 表示可以匹配字符组中的任一一个
[abc] 匹配a、b、c中的任意一个
[a-f] 匹配从 a 到 f 范围内的任意一个

拷贝和移动文件

序号 命令 对应英文 作用
01 tree[目录名] tree 以树状图列出文件目录结构
02 cp 源文件 目标文件 copy 文件或者目录
03 mv 源文件 目标文件 move 移动文件或者目录/文件或者目录重命名
tree
选项 含义
-d 只显示目录

tree ~ 指向home目录下的所有文件及文件列表


cp
  1. cp ~/Documents/readme.txt ./readme.txt (复制/home/用户名/Documents/readme.txt 文件 到 当前目录下)
  2. cp ~/Documents/readme.txt . (命令同上)
选项 含义
-i 覆盖文件前提示
-r 若给出的源文件是目录文件,则cp
将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名
mv
选项 含义
-i 覆盖文件前提示

查看文件内容

序号 命令 对应英文 作用
01 cat 文件名 concatenate 查看文件内容、创建文件、文件合并、追加文件内容等功能
02 more 文件名 more 分屏显示文件内容
03 grep 搜索文本
文件名
grep 搜索文本文件内容
cat
  • cat 会一次显示所有的内容,适合 查看内容较少 的文本文件
选项 含义
-b 对非空输出行编号
-n 对输出的所有行编号
more
  • more 命令可以用于分屏显示文件内容,每次只显示一页内容
操作键 功能
空格键 显示手册页的下一屏
Enter 键 一次滚动手册页的一行
b 回滚一屏
f 前滚一屏
q 退出
/word 搜索 word 字符串
grep
  • Linux 系统中 grep 命令是一种强大的文本搜索工具
  • grep 允许对文本文件进行 模式查找,就是正则表达式
选项 含义
-n 显示匹配行及行号
-v 显示不包含匹配文本的所有行(相当于求反)
-i 忽略大小写
  • 常用的两种模式查找
参数 含义
^a 行首,搜寻以 a 开头的行
ke$ 行尾,搜寻以 ke 结束的行


其他

echo 文字内容
  • echo会在终端中显示参数指定的文字,通常会和 重定向 联合使用
重定向 > 和 >>
  • Linux 允许将命令执行结果 重定向 到一个 文件
  • 将本应显示在终端上的内容 输出/追加指定文件中
    其中
  • 表示输出,会覆盖文件原有的内容

  • 表示追加,会将内容追加到已有文件的末尾

管道 |
  • Linux 允许将 一个命令的输出 可以 通过管道 做为 另一个命令的输入
  • 可以理解现实生活中的管子,管子的一头塞东西进去,另一头取出来,这里 | 的左右分为两端,左端塞东西(写),右端取东西(读)

常用的管道命令有:

  • more:分屏显示内容
  • grep: 在命令执行结果的基础上查询指定的文本


查找home目录下的 包含Document的项

查找home目录下的 包含vi的项,不区分大小写

远程管理常用命令

  • 关机 / 重启
    • shutdown
  • 查看或配置网卡信息
    • ifconfig
    • ping
  • 远程登录和复制文件
    • ssh
    • scp
关机/重启
序号 命令 对应英文 作用
01 shutdown 选项 时间 shutdown 关机/重新启动
选项 含义
-r 重新启动

提示:

  • 不指定选项和参数,默认表示 1分钟 之后 关闭电脑
  • 远程维护服务器时,最好不要关闭系统,而应该重新启动系统
  • 常用命令示例
# 重新启动操作系统,其中 now 表示现在
$ shutdown -r now

# 立刻关机,其中 now 表示现在
$ shutdown now

# 系统在今天的 20:25 会关机
$ shutdown 20:25

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

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

查看或配置网卡信息

序号 命令 对应英文 作用
01 ifconfig configure a network interface 查看/配置计算 机当前的网卡配置信息
02 ping ip 地址 ping 检测到目标 ip地址 的连接是否正常
ifconfig
# 查看网卡配置信息
$ ifconfig

# 查看网卡对应的 IP 地址
$ ifconfig | grep inet

提示:一台计算机中有可能会有一个 物理网卡多个虚拟网卡,在 Linux 中物理网卡的名字通常以 ensXX 表示

  • 127.0.0.1 被称为 本地回环/环回地址,一般用来测试本机网卡是否正常
ping
# 检测到目标主机是否连接正常
$ ping IP地址

# 检测本地网卡工作正常
$ ping 127.0.0.1

提示:在Linux中,想要终止一个终端程序的执行,绝大多数都可以使用 ctrl + c

远程登录和复制文件

序号 命令 对应英文 作用
01 ssh 用户名@ip secure shell 关机/重新启动
02 scp 用户名@ip:文件名或路径 用户名@ip:文件名或路径 secure copy 远程复制文件
ssh基础
  • 常见服务端口号列表:
序号 服务 端口号
01 SSH 服务器 22
02 Web 服务器 80
03 HTTPS 443
04 FTP 服务器 21

ssh [-p port] user@remote

  • user 是在远程机器上的用户名,如果不指定的话默认为当前用户
  • remote 是远程机器的地址,可以是 IP/域名,或者是 别名
  • port 是 SSH Server 监听的端口,如果不指定,就为默认值 22

提示:

  • 使用 exit 退出当前用户的登录
    注意:
  • ssh 这个终端命令只能在 Linux 或 Unix 系统下使用
  • 如果在 Windows 系统中,可以安装 Putty 或者 XShell 客户端软件即可
scp
  • scp 就是 secure copy, 是一个在 Linux 下用来进行 远程拷贝文件 的命令
  • 它的 地址格式与 ssh 基本相同,需要注意的是,在指定端口时用的是大写的 -P,而不是小写的
# 把本地当前目录下的 01.py 文件 复制到 远程 home目录下的 Desktop/01.py
# 注意: `:` 后面的路径如果不是绝对路径,则以用户的家目录作为参照路径
scp -P port 01.py user@remote:Desktop/01.py

# 把远程 家目录下的 Desktop/01.py 文件 复制到 本地当前目录下的 01.py
scp -P port user@remote:Descktop/01.py 01.py

# 加上 -r 选项可以传送文件夹
# 把当前目录下的 demo 文件夹 复制到 远程 home目录下的 Desktop
scp -r demo user@remote:Desktop

# 把远程 家目录下的 Desktop 复制到 当前目录下的 demo 文件夹
scp -r user@remote:Desktop demo
选项 含义
-r 若给出的源文件是目录文件,则scp
将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名
-P 若远程 SSH 服务器的端口不是 22,需要使用大写字母 -P 选项指定端口

注意:

  • scp 这个终端命令只能在 Linux 或者 Unix 系统下使用
  • 如果在 Windows 系统中,可以安装 Putty, 使用 pscp 命令行工具或者安装 FileZilla 使用 FTP 进行文件传输

SSH 高级

  • 免密码登录
  • 配置别名

提示:有关 SSH 配置信息都保存在用户home目录下的 .ssh 目录下

1) 免密码登录

步骤

  • 配置公钥
    • 执行 ssh-keygen 即可生成 SSH 钥匙,一路回车即可
  • 上传公钥到服务器
    • 执行 ssh-copy-id -p port user@remote, 可以让远程服务器记住我们的公钥

非对称加密算法

  • 使用 公钥 加密的数据,需要使用 私钥 解密
  • 使用 私钥 加密的数据,需要使用 公钥 解密
2)配置别名

在~/.ssh/config 里面追加以下内容:

Host myserver
     HostName ip地址
     User mac
     Port 22

保存之后,即可用 ssh mac 实现远程登录了,scp同样也可以使用\


用户权限相关命令

  • 用户权限 的基本概念
  • 用户管理 终端命令
  • 组管理 终端命令
  • 修改权限 终端命令
用户 和 权限 的基本概念
  • 用户 是linux 系统工作中重要的一环,用户管理包括 用户 管理
  • 在 linux 系统中,不论是由本机或是远程登录系统,每个系统都必须拥有一个账号,并且对于不同的系统资源拥有不同的使用权限
  • 文件/目录 的权限包括:
序号 权限 英文 缩写 数字代号
01 read r 4
02 write w 2
03 执行 excute x 1
  • 在 Linux 中,可以指定 每一个用户 针对 不同的文件或者目录不同权限
ls -l 扩展
  • ls -l 可以查看文件夹下文件的详细信息,从左到右依次是:
    • 权限,第1个字符如果是 d 表示目录
    • 硬链接数,通俗地讲,就是有多少种方式,可以访问到当前目录/文件
    • 拥有者,home目录下 文件/目录 的拥有者通常都是当前用户
    • ,在Linux中,很多时候,会出现组名和用户名相同的情况
    • 大小
    • 时间
    • 名称

chmod
  • chmod 可以修改 用户/组文件/目录 的权限
  • 命令格式如下:
chmod +/-rwx 文件名 | 目录名

提示:以上方式会一次性修改 拥有者/组 权限
在Linux 下要执行文件 :在当前目录下 ./01.py 或 ./01.sh

超级用户

  • Linux 系统中的 root 账号通常 用于系统的维护和管理,对操作系统的所有资源 具有所有访问权限
  • 在大多数版本的 Linux 中,都不推荐 **直接使用root账号登录系统 **
  • 在 Linux 安装的过程中,系统会自动创建一个用户账号,而这个默认的用户就称为”标准用户“
sudo
  • su 是 substitute user 的缩写,表示 ** 使用另一个用户的身份**
  • sudo 命令用来以其他身份来执行命令,预设的身份为 root
  • 用户使用sudo时,必须先输入密码,之后有 5分钟的有效期限,超过期限则必须重新输入密码

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容