:::info
在此文档中,仅记录部分常用指令
需要查看详细的命令与讲解可参考
https://www.runoob.com/linux/linux-command-manual.html
:::
路径
涉及路径的操作常在文件夹转换,相关应用,python脚本调用中会使用到
相对路径和绝对路径
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| # 相对路径是指相对与当前文件夹,目标文件或文件夹所在的位置
# 绝对路径是指从起始点开始到目标文件或文件夹所在的位置 # 代入到Windows中可以理解为从盘符开始一直到目标文件或文件夹的路径
# 以下为具体的例子 # 假设目前所在文件夹为/home/Gaussian文件夹 # 在/home文件夹内有/test, /folder1等众多文件夹 # 绝对路径 /home/test /home/folder1
# 相对路径 ../test ../folder1
|
1 2 3 4 5 6
| # 这个时候就会涉及到几个相对路径的表达方式 # 当前文件夹 ./
# 当前文件夹上一级文件夹 ../
|
相关操作
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| # 假设此处所在路径 /home, 包含文件 /download, /pyTest # 同级目录 /data, 包含文件 /pyroot, /wwwroot, /test
# 进入文件夹 # cd后可使用相对路径或绝对路径 cd /data/pyroot cd ../pyroot
# 查看文件夹内容 # 查看当前所在路径中包含的文件内容 ll ls
# 可以通过在后面添加指定的路径来查看指定位置中的内容 ll /data/wwwroot
|
查看当前路径
文件与文件夹
权限
1 2 3 4 5 6 7
| # 在图形界面中,可以使用属性来查看文件的权限 # 对于需要进行读写,运行的文件,文件夹,通常需要赋予一定的权限 # 赋予文件或文件夹权限 chmod 000 < 文件或文件夹 >
# 赋予文件夹及其子目录权限 chmod -R 000 < 文件夹 >
|
在这段指令中,可以看到有一串数字,他并不是默认000
000代表的是所有用户对此文件不可读,不可写,不可知性
这3个数字从左到右分别代表
文件所有者(Owner)、用户组(Group)、其它用户(Other Users)
所拥有的权限
权限包括
| R |
W |
X |
| 读(read) |
写(write) |
执行(execute) |
但是我们在赋予权限的时候并不会写rwx,而是采用八进制的数字模式
| R |
W |
X |
| 读(read) |
写(write) |
执行(execute) |
| 4 |
2 |
1 |
通过加法的方式确定需要赋予的权限
如:读写 4+2=6 -> chmod 666 < 文件 >
通过对不同的群组的权限分配,实现限制部分用户对文件的操作或确保文件的可执行可修改
1 2 3
| # 此时,需要文件所有者拥有所有权限,用户组尽可写入与执行,其他用户不提供权限 # 目标文件为 PCA.py chmod < ??? > < ??? >
|
文件或文件夹的复制与剪切
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| # 复制文件到文件夹 cp < 文件所在路径 > < 目标路径 > # 复制文件夹到xxx cp -r
# 剪切文件到文件夹 # mv也可以用于文件或文件夹改名 mv [options] < 文件所在路径 > < 目标路径 > # 参数说明 依照实际情况填写 可以不写 -b: 当目标文件或目录存在时,在执行覆盖前,会为其创建一个备份。 -i: 如果指定移动的源目录或文件与目标的目录或文件同名,则会先询问是否覆盖旧文件,输入 y 表示直接覆盖,输入 n 表示取消该操作。 -f: 如果指定移动的源目录或文件与目标的目录或文件同名,不会询问,直接覆盖旧文件。 -n: 不要覆盖任何已存在的文件或目录。 -u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。
|
隐藏文件或文件夹
1 2 3 4 5 6 7
| # 可以通过在文件前加上"."来实现文件的隐藏 # 以 myself.jpg为例 mv myself.jpg .myself.jpg
# 隐藏后只是直接ll或者ls无法查看 # 查看文件夹内所有文件,包括隐藏文件 ls -all
|
删除
1 2 3 4 5 6 7 8
| rm [options] FileOrFolder # 参数讲解 -i 删除前逐一询问确认。 -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。 -r 将目录及以下之档案亦逐一删除。 # 注意 删除文件夹的时候一定要加上 -r # 请不要随意的rm -rf,使用rm删除文件之前请再三确认 # rm删除的文件无法恢复!!!
|
查看文件
cat
1 2
| # cat可以将你指定的文件的内容打印到终端 cat haha.txt
|
cat还拥有其他更强大的功能,如将文件内容写入到另一个文件中,制作软盘等等
但因为我平时使用较少,因此就不详细讲解具体内容
https://www.runoob.com/linux/linux-comm-cat.html
vim、vi
vi和vim其实是两个编辑软件
这两个的软件的故事也是很有趣的
【这可能是世界上最简短的悼词。】
https://www.bilibili.com/video/BV1X8411i719/?share_source=copy_web
这是讲vim的开发者Bram的故事,有兴趣可以看看
接下来继续讲正题
1 2 3 4 5 6
| # 直接输入vim可以启动vim # 现在有部分linux(大部分???)输入vi也可以启动,但是还是建议使用vim vim
# 编辑文件 vim xxx.txt
|
在使用vim的时候,没有图形交互界面,需要使用键盘快捷键
vim的快捷键众多,可以参考
https://zhuanlan.zhihu.com/p/61515833
以下为最基础的编辑,保存,退出过程
1 2 3 4 5 6 7 8 9
| # 例子:编辑环境变量 vim ~/.bashrc
# 开始编辑 i # 退出编辑模式 ESC # 保存退出 :wq
|
查找
whereis
1 2 3 4 5 6
| # 在安装完成软件并配置过环境变量后,想找到其路径 whereis g16
# 查找文件 # whereis只能查找二进制文件,不推荐使用 whereis bash
|
https://www.runoob.com/linux/linux-comm-whereis.html
find
1 2 3 4 5 6 7 8
| find [path] [expression] # path 不填写将默认当前路径 # expression有众多参数选择 # 常用 # 查找where.txt find -name where.txt # 查找所有jpg后缀文件 find -name "*.jpg"
|
文件压缩与解压
常见的压缩文件后缀有:zip, rar, bz2, gz, tar, tar.bz2等等,实际需要的解压指令只有两条,分别为解压zip和非zip的
1 2 3 4 5
| # 仅在解压zip的时候使用 unzip *.zip
# 压缩 zip < 文件夹 >
|
常用大概就这两个,默认都是解压到当前文件夹
详细可以参考:
https://www.runoob.com/w3cnote/linux-tar-gz.html
打包压缩:
https://zhuanlan.zhihu.com/p/152623706
环境变量
环境便量的修改包含两种
- 为当前用户配置环境变量
- 为所有用户配置环境变量
- 配置临时环境变量
前两者的区别从配置的对象就可以看出来,一个是配置完只有当前环境可以使用,一个是所有都可以使用
1 2 3 4 5 6 7 8
| # 为当前用户配置环境变量 vim ~/.bashrc # 为所有用户配置环境变量 vim /etc/profile # 修改文件内容,在文本最后进行添加 export PATH="< 需要指定的路径 >:$PATH" # 配置执行脚本路径 依照实际情况来写 一半不需要 source $g16root/g16/bsd/g16.profile
|
例子:

1 2 3 4
| echo $PATH
# 他貌似并不会输出不包含$PATH的环境变量 # 如从某个环境变量路径延续编写的环境变量他并不显示
|
软件安装
Linux中的软件安装方式有多种
- 使用包管理器进行安装
- 在官网下载对应文件进行安装
两种安装方式依然可以细分,以下为讲解
1 2 3 4 5 6 7 8 9 10 11 12
| # 通常包含有apt-get,yum等 # 他们的使用方法都非常相似 apt-get install *** yum install ***
# 卸载 apt-get uninstall *** yum uninstall ***
""" 请注意,你使用什么包管理器安装,你就使用哪个方式进行卸载 """
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| # 下载 wget < 下载链接 >
# 安装 # 根据不同的文件使用不同的安装方式 # 压缩包 # 将压缩包解压到你希望安装的位置即可 tar -jxvf *** # 配置环境变量 -> 参考3
# .sh /*.sh
# 删除 # 找到他的文件夹 rm -rf
|
网络
第一次编辑 2023/9/23 1: 25 编写内容1 —-> 2.6.2
第二次编辑 2023/9/27 16: 03 编写内容2.7 —-> 4