常用的Linux文件及文件夹管理命令
主要学习常用的Linux文件及文件夹管理命令:
ls、cd、pwd、mkdir、touch、mv、rm、cp、tar、ln
Linux里最遥远的距离是:你在空格的前面,我在空格的后面
首先简单了解Linux文件结构
文件结构:在Linux中,一切皆文件
1.结构分析
生信技能树小郭老师的课件图
/
(根目录),相当于windows里我的电脑- 家目录
~
:用户 ..
:两个横点表示为上一层目录- 目录:文件夹
2.命令格式
命令
+参数
+ 文件
command
[-options [parameter]]
[FILE]
生息技能树小郭老师课件图
注意:命令,参数,文件三者之间一定要加空格,一个或是两个空格都可以。
在Linux里面更多是处理文件,而R语言更多是处理变量。
(初学者请注意:以下代码框的一个#或是多个#号代表注释说明,不要把开头带有#的内容复制到Linux里运行)
3.常用的文件夹与文件管理命令
4.常见命令结合参数用法示例
以下主要介绍10个常用的文件夹与文件管理命令:
ls、cd、pwd、mkdir、touch、mv、rm、cp、tar、ln
(1)ls: List information about the FILEs
- ls 常见参数
- ls常见用法: [参数] [路径/目录/文件名]
注意/的位置,如果放在后面可以省略(如cd Data 和 cd Data/, 输出的结果一样),但是在前面表示根目录、在中间表示层级结构,不可省略。
image-20220302160533891
隐藏文件的作用:与系统设置的文件有关,一般很少去操作和修改,把那些关键文件隐藏起来,避免被随意修改。
*补充知识1:文件权限*
所属人所属组其他人
生信技能树小郭老师的课件图
-rwx------:有10个字符,第一个不用管,后面9个,每三个为一个单位,比如第一个的单位rwx,r:可读,w:可写,x:可执行。
生信技能树小郭老师课件
权限用数字来表示:
可读可写可执行:4+2+1=7,如果结果为2,表示可修改,一般很少见。
常见的权限(属性)有:7,6,5,2
ll -h / 的结果
(2)cd:Change the shell working directory(切换工作目录)
- cd常见参数:没有
- 常见用法: cd [路径/目录]
无论cd到哪里,最后都要回到自己的家目录,在自己的家目录操作完成,在其它目录是没有修改权限。
*补充知识2:绝对路径和相对路径*
绝对路径:从根目录开始引起的全路径 相对路径:就是相对于当前工作目录的路径
生信技能树小郭老师的课件图
(3)pwd:Print Working Directory (打印工作目录)
这个命令用得少,打路径的时候留意命令行最后提示的路径
pwd命令演示
*补充知识3:经验与技巧*
- 小郭老师建议:多动手去敲键盘和代码,形成一个肌肉记忆
- 文件夹管理或路径有关的符号:
.
当前目录##另一个含义,隐藏文件或是文件夹..
上一级目录~
家目录:每个用户的家目录都不同/
只有当 / 在路径的最前面时才是根目录, 其他位置的 / 都是目录层级分隔符
- 常用快捷键:
Tab: 补全,多按几下
Ctrl+C: 终止任务 ##如果打了一连串代码,出错,可以按Ctrl+C停止,就回到重新开始输入
Ctrl+L: 清屏
Ctrl+E: 回到行尾
Ctrl+A: 回到行首
Ctrl+Z: 暂停任务
(4)mkdir: Create the DIRECTORY(ies)
- 常见参数: -p/--parents,递归创建目录
- 常见用法: mkdir [-p] 目录名
用mkdir命令创建目录和递归文件,操作步骤和结果如下:
创建目录及递归文件
可以用mkdir命令同时创建多个文件夹或是批量创建文件夹
(5)touch: 新建文件
- 常见参数:没有
- 常见用法: touch file
注意:一般只创建纯文本文件
(6)mv:Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY(移动或者重命名)
- 常见用法: rm [-option] file :mv 待移动的文件 移动到哪个目录
注意:touch{1..5},在Linux里创建多个文件,从开始到结尾用连续两横点 .., 在R语言里用冒号:
(7)rm:Remove
- 常见参数,
- 常见用法:rm [-option] file
注意:使用rm命令删除后,不能恢复,但是有恢复的方法,不过不一定能全恢复,也不是每次都能幸运恢复。
如果你是管理员,不要轻易尝试命令:rm –rf /,无论发生什么事情,一定要冷静。
(8)cp:Copy and Paste
- 常见参数: -r, copy directories recursively
-r:递归复制,删除时也要加上-r
- 常见用法:cp[OPTION] SOURCE DIRECTORY
(9)ln:Link链接,分软链接(常用)和硬链接(默认)。
拷贝文件或是文件夹,会占空间,用软链接,相当于复制快捷方式,不占空间。常用软连接,自己搜索用硬链接
软件链接一定要用绝对路径(从根目录出发)。
- 常见参数:不加参数即为硬链接,加上 –s 参数即为软链接, 软链接的作用类似快捷方式,一般链接具体文件而不是文件夹。
- 常见用法:ln –s TARGET DIRECTORY
软链接文件不是文件夹的原因是,如果软链接文价夹是没有资格去操作别人的文件
生信技能树小郭老师课件图
(10)tar:Tape archive(压缩或者解压文件)
- 常见参数:
- 常见用法:
解压:tar [参数] [待解压包] 压缩:tar [参数] <压缩后文件名> [待压缩文件/目录]
解压参数及例子:
生信技能树小郭老师课件图
压缩参数及例子:
生信技能树小郭老师课件图
其他压缩和解压命令:
zip 和 unzip :用于压缩和解压 *zip 文件
压缩:zip readme.txt.zip readme.txt ##把readme.txt压缩,且命名为readme.txt.zip
解压:unzip readme.txt.zip
gzip 和 gunzip :用于压缩和解压 *gz 文件
压缩: gzip readme.txt
解压:gunzip readme.txt.gz
bzip2 和 bunzip2 :用于压缩和解压 *bz2 文件
压缩: bzip2 readme.txt
解压:bzip2 -d readme.txt.bz2
要区分开zip ,gz ,bz2 一个文件一个包,tar.gz里面就有很多文件
生信技能树小郭老师课件图
gzip和zip是把单独的一个文件压缩,原文件会被单独删除掉,但是通过-k参数控制,原文件会保留,如下:
gzip压缩文件有无-k的区别
来自生信技能树小郭老师的总结:
- 命令及参数汇总:
命令 | 全称 | 功能 |
---|---|---|
ls | list | 列出指定路径下信息 |
cd | change directory | 切换目录 |
mkdir | make directory | 新建目录 |
touch | 新建文本 | |
mv | move | 移动或者重命名文件或目录 |
cp | copy and paste | 复制文件或目录 |
rm | remove | 删除文件或目录 |
tar | tape archive | 压缩**&解压文件 |
ln | link | 链接文件 |
- 小技巧
ls 命令: 每天要敲一百次
Tab 键 :每天要按一百次
参数: 不用死记硬背,用多了自然记得,用得少的需要 用的时候再查一下帮助文档,如下:
文件名: 不要用中文字符和空格,用下划线或点号代替
选中: 鼠标连续双击选中一个单词,连续三击选中一行
- 其它知识:
纯文本文件,如txt文本,可以改后缀名,里面的内容不变,windows有识别后缀名名的机制,可以用默认的阅读器打开。或是在打开方式,或是属性里设置默认打开方式。
二进制文件,如excel,word文件,不能随便修改文件名,修改后,里面的内容会乱码。