@ 作者:达内 Python 教学部,吕泽 @ 编辑:博主,Discover304
Linux的文件组织中没有盘符。将根(/)作为整个文件系统的唯一起点,其他所有目录都从该点出发。
犹如一颗倒置的树,所有存储设备作为这颗树的一个子目录。
查阅
command
命令的使用手册,摁q退出。 man command
序号 | 命令 | 作用 | 备注 |
---|---|---|---|
01 | ls | 查看当前文件夹下的内容 | -l 展示详细信息,-a展示隐藏文件(Linux下 . 开头的为隐藏文件)。 |
02 | pwd | 查看当前所在位置绝对路径 | |
03 | cd [目录名] | 切换文件夹 | 参数为绝对路径或者相对路径,直接cd表示回到主目录,cd - 回到上一次工作目录 。 |
04 | touch [文件名] | 如果文件不存在,新建文件 | 可以同时跟多个参数表示创建多个文件。 |
05 | mkdir [目录名] | 创建目录 | |
06 | rm [文件名] | 删除指定的文件名 | 删除表示直接删除,无法找回,如果删除目录需要加 -r选项。 |
07 | cp | 复制一个文件 | 如果拷贝的是一个目录需要使用 -r ,同时这个命令有另存为的作用 。 |
08 | mv | 移动一个文件 | 即使移动目录页不需要选项,有重命名的作用。 |
序号 | 命令 | 作用 | 备注 |
---|---|---|---|
01 | cat [文件名] | 查看文件内容、创建文件、文件合并、追加文件内容等功能 | |
02 | head [文件名] | 显示文件头部 | 选项-n,n表示一个数字,即可指定查看前n行或者后n行,不加选项默认查看10行。 |
03 | tail [文件名] | 显示文件尾部 | 选项-n,类似 head。 |
04 | grep [搜索文本] [文件名] | 搜索文本文件内容 | -n 用于显示行号,-i忽略大小写。 |
05 | find [目录] -name [文件名] | 在一个目录及其子目录下查找文件 | 会从指定目录及其所有子目录中查询搜索文件。 |
06 | wc [文件名] | 查看文件行数,单词数等信息 | -c 表示查看多少字符,-l查看多少行,-w 查看多少单词。如果不加选项则显示这三项。 |
序号 | 命令 | 作用 | 备注 |
---|---|---|---|
01 | zip | 将文件压缩为zip格式 | 用于常与windows交互的情况,-r选项可以压缩目录 。 |
02 | unzip | 将zip格式文件解压 | -d 可以选择解压位置。 |
03 | tar | 对gz或者bz2格式进行压缩解压 | -cjf 用于压缩bz2格式文件,-czf用于压缩gz格式文件,-xvf用于解压文件,兼容了gzip和bzip2命令的功能。 |
序号 | 命令 | 作用 |
---|---|---|
01 | sudo | 放在一个命令前,表示使用管理员权限执行。在打开终端第一次使用sudo时需要输入密码。 |
02 | chmod | 修改文件权限 |
chmod
在设置权限时,可以字母,也可以使用三个数字分别对应拥有者、组和其他用户的权限。 注:linux中虽然执行是 execution 但是一般使用 x 作为执行,而不是 e。<!-- 直接增删 [所有人|拥有者|组|其他] 的 [文件|目录的] [读|写|执行] 权限 --> chmod [augo][+/-][rwx] 文件名/目录名
who | 用户类型 | 说明 |
---|---|---|
a | all | 所用用户,相当于 ugo |
u | user | 文件所有者 |
g | group | 文件所有者所在组 |
o | others | 所有其他用户 |
# 直接修改 拥有者、组和其他 的 [文件|目录的] 权限 chmod 3个数字 文件名/目录名 例如:
777
===>u=rwx,g=rwx,o=rwx
755
===>u=rwx,g=rx,o=rx
644
===>u=rw,g=r,o=r
序号 | 命令 | 作用 | 备注 |
---|---|---|---|
01 | echo | 向终端打印内容 | -n 表示打印完成不换行 |
02 | date | 显示当前时间 | |
03 | df | 显示磁盘剩余空间 | -h 选项以Mb为单位显示,-T显示文件系统类型,其中ext4的为磁盘 |
04 | whoami | 显示当前用户 | |
05 | history [num] | 显示历史命令记录 | 默认显示500条历史记录,后面可以加具体数字表示显示多少条 |
06 | whereis | 显示命令的位置 | 定位某个命令的二进制文件、源码和帮助页文件。whereis python3 返回的就是 /usr/bin/python3 |
输出重定向
> file
将file文件重定向为输出源,新建模式。>> file
将file文件重定向为输出源,追加模式。 # 将执行结果,写到out.txt文件中,若有同名文件将被删除。 echo "hello world" > out.txt # 将ls /usr的执行结果,追加到Lsoutput.txt文件已有内容后。 ls /usr >> output.txt
序号 | 命令 | 作用 | 备注 |
---|---|---|---|
01 | shutdown | 关机或者重启 | shutdown -r now 立即重启,shutdown now 立即关机,shutdown +10 10分钟后关机,shutdown -c 取消关机计划 |
02 | ln | 创建链接 | ln -s hello.py hello 创建了hello.py 的软链接 |
03 | tree | 获取目录树形结构 |
vi是Linux操作系统中一个自带的编辑器。没有图形界面,只能编译文本内容,没有字体段落等设置,通过命令强大的命令完成一系列的编写工作。
在实际工作中,要对 服务器上的文件进行简单的修改,使用
vi
进行快速的编辑即可。 对一些配置文件的修改,需要一定的权限,这时vi编辑器是最佳选择。 vi 编辑器在系统管理、服务器管理编辑文件时,其功能不是图形界面的编辑器能比拟的。
$ vi [文件名]
如果文件已经存在,会直接打开该文件
如果文件不存在,会新建一个文件
vi
的 入口。通过 命令 对文件进行常规的,在其他图形编辑器下,通过 快捷键 或者 鼠标 实现的操作,例如:定位、翻页、复制、粘贴、删除。
末行模式 执行 保存、退出 等操作。要退出 vi
返回到控制台,需要在末行模式下输入命令
末行模式 是 vi
的 出口
编辑模式 正常的编辑文字
命令 | 英文 | 功能 | 常用 |
---|---|---|---|
i | insert | 在当前字符前插入文本 | 常用 |
o | 在当前行后面插入一空行 | 常用 |
命令 | 功能 |
---|---|
w | 保存 |
q | 退出,如果没有保存,不允许退出 |
q! | 强行退出,不保存退出 |
wq | 保存并退出 |
w! | 强制保存 |
命令 功能 w 向后移动一个单词 b 向前移动一个单词 0 行首 $ 行尾
命令 功能 gg 文件顶部 G 文件末尾 :数字 移动到 数字 对应行数
命令 | 功能 |
---|---|
u | 撤销上次命令 |
CTRL + r | 恢复撤销的命令 |
命令 | 功能 |
---|---|
x | 删除光标所在字符,或者选中文字 |
cc | 删除光标所在行并进入插入模式 |
命令 | 功能 |
---|---|
yy | 复制一行,可以 nyy 复制多行 |
dd | 剪切光标所在行,可以 ndd 剪切多行 |
p | 粘贴 |
命令 | 功能 | 工作模式 |
---|---|---|
r | 替换当前字符 | 命令模式 |
R | 替换当前行光标后的字符 | 替换模式 |
:%s/str/replace/g | 替换str为replace | 底行模式 |
R
命令可以进入 替换模式,替换完成后,按下ESC
可以回到 命令模式
命令 | 功能 |
---|---|
/str | 查找 str |
:set nu | 显示行号 |
/ 查找到指定内容之后,使用
n
查找下一个出现的位置 :set nu ! 可以取消行号显示
序号 | 命令 | 作用 | 备注 |
---|---|---|---|
01 | groupadd 组名 | 添加组 | |
02 | groupdel 组名 | 删除组 | |
03 | useradd -m 用户 -g 组 | 添加用户 | -m 表示添加用户时添加主目录,-g表示选择用户所在组,如果不写默认会创建一个与用户同名的组。 |
04 | passwd 用户名 | 设置密码 | 设置之后才能切换新用户登录 |
05 | userdel -r 用户 | 删除用户 | 一般都会带 -r,删除用户的主目录和邮件池。 |
注:设置密码后为新用户添加sudo权限,sudo 打开 /etc/sudoers 文件增加如下内容。然后 :w! 强制保存 :q 退出。
注:如果切换用户终端命令行只有一个$ 提示,也没有任何颜色提示,则vi打开 /etc/passwd 文件,存储的是所有的用户和密码信息,将该用户对应的内容修改,设置 bash 命令解释器。
注:如果删除失败说明刚刚使用了该用户没有注销,需要重启再删除。或者执行下面命令。
Linux下安装的软件包是 deb格式软件包。由于当时Linux系统中软件包存在复杂的依赖关系。因此,通常使用网络安装。安装软件包通常需要使用管理员权限。软件包下载位置:/var/cache/apt/archives。
作用 | 命令 |
---|---|
更新软件源 | apt update |
安装软件 | apt install |
卸载软件 | apt remove --purge |
删除缓存的软件安装包 | apt clean |
安装本地软件包 | dpkg -i |
卸载软件 | dpkg -P |
多线程软件安装 | apt-fast |
sudo apt install sl # 安装
sudo apt remove --purge sl # 彻底卸载
ssh是一种安全协议,主要用于给远程登录会话数据进行加密,保证数据传输的安全。在数据传输方面有很多应用。之前说到,实际工作中经常需要远程访问服务器,ssh就是通用的远程访问服务器的方法。
安装启动 安装ssh服务 :
sudo apt install openssh-server
查看ssh服务状态 :ps -e | grep ssh
启动和关闭 :sudo service ssh start/restart/stop
序号 | 命令 | 作用 |
---|---|---|
01 | ssh 用户名@ip | 登录远程主机 |
02 | scp 用户名@ip:文件名绝对路径 目标位置 | 远程复制文件 |
ssh登录 # 登录 ssh levi@192.168.100.5 # 退出 exit
scp拷贝 # 注意:`:` 后面的路径写绝对路径,类似端口操作 scp demo.py levi@192.168.100.5:/home/tarena # 把远程主目录下demo.py文件 复制到本地当前目录下的copy文件夹内 scp levi@192.168.100.5:/home/tarena/demo.py ./copy # 加上 -r 选项可以传送文件夹 scp -r demo levi@192.168.100.5:/home/tarena/
ssh秘钥 什么时候使用: 如果使用的客户端个人计算机是自己独有的计算机,经常通过ssh访问服务器,此时不想频繁输入密码,则可以使用秘钥处理。 使用方法
ssh-keygen
执行以后会在主目录下生成.ssh
文件夹,其中包含私钥文件id_rsa
和公钥文件id_rsa.pub
。touch ~/.ssauthorized_keys
,将信任的计算机的id_rsa.pub
文件内容追加到服authorized_keys
文件的最后即可。在服务器中并没有pycharm这些集成编译工具,所有当我们最后将程序部署在服务器上执行时,往往需要通过终端运行python程序。