学习笔记总结于『生信技能树』马拉松课程
本篇学习一些管理文件夹与文件的基础命令:pwd
、ls
、cd
、mkdir
、tree
、touch
1. pwd
print working directory 打印工作目录
2. ls
list 列出
2.1常见参数
-a ## 列出全部的文件,连同隐藏文件也一起列出来 all
-l ## 列出目录的详细信息 long
-h ## 将目录容量转换为以人类易读的方式(例如 GB,KB 等等) human
-S ## 以文件大小排序 Size(注意是大写的S)
-t ## 以时间排序 time
-r ## 倒序排序 reverse
隐藏文件
以“.”开头的都是隐藏文件,这些文件跟配置、环境有关,比较重要。系统不希望我们随意更改它们,也为了防止我们误操作,所以将它们藏起来了
2.2常见用法
ls [参数] [路径/目录/文件名]
ls ## 列出当前目录的文件
ls ./ ## 同上,'.'号代表当前目录
ls ./*txt ## 列出当前目录下,以 txt 结尾的文件(正则表达式中,*用来匹配任意多个字符,可以是0到正无穷;?用来匹配任何单个字符)
ls ../ ## 列出上层目录的文件
ls -a ## 列出当前目录下的所有文件,包括隐藏文件
ls -l ## 列出当前目录下文件的详细信息
ll ## 等同于ls -la
ls -lh ## 加上 -h 参数,以K、M、G的形式显示文件大小(-lh等同于-l -h,只不过是把l和h连在一起写)
ls -lh / ## 列出根目录下文件的详细信息
为什么ll
相当于ls -la
呢?我们来输入如下命令
less -SN ~/.bashrc
此时会跳转到如图3位置,我们在最下面光标处输入/alias
,即可将界面内所有“alias”标识出来,这么做便能实现快速定位。看到图3黄色框内容,便可知道ll
是系统给我们设置好的ls -la
的简写,相当于用来偷懒的命令,这样就不用输入ls -la这么多个字符了。alias的中文意为:别名,化名
此时想退出,输入“q”并回车即可,后续会介绍less
这个命令
文件权限
运行ll -h
后,返回结果如图4
文件属性
小技巧 ll -thr
3. cd
change directory 切换目录
cd .. ## 切换到上层目录,相对路径
cd / ## 切换到根目录
cd /teach/ ## 切换到根目录下的teach,绝对路径
cd - ## 返回上一次的工作目录
cd ~ ## 回到用户家目录
cd ## 同上,回到用户家目录
所以使用Linux时,需要时刻留意自己在哪,以便确定我们去哪里
但如果不知道想去的地方叫什么,按两下tab键就能补全所有的名字,在这些名字里找到自己想去的地方即可。tab键的作用,更贴切来说是补齐
相对路径与绝对路径
相对路径:相对于当前工作目录的路径
绝对路径:从根目录开始引起的全路径
4. mkdir
make the directory(ies) 创建一个新的目录
4.1常见参数
-p/--parents ## 递归创建目录
4.2常见用法
mkdir [-p] 目录名
4.3 tree
sudo -i
apt install tree #安装tree命令
exit
tree
tree
这个命令很实在,会把所有内容以树状图的形式列出来,如图11
但不要运行tree /
这句命令,否则会把根目录下所有内容列出来,容易卡死。如果遇到这种情况,就执行快捷键ctrl + c
,一遍不够就多执行几遍。或者之间把左边的服务器直接关了,即断开连接
或者只展开第一级
tree -L 1 # 只展开第一级
tree -L 2 # 只展开第二级,以此类推
tree -L 1 / # 只看更目录下的第一级
5. touch
①新建文件;②“摸”一下文件,以此来更新时间戳
5.1常见用法
touch file
先了解一个概念:在同一个文件夹中,Linux不允许存在同名的文件或文件夹(在vip1中,不允许出现两个test)
在已有一个名为“readme.txt”的文件,此时再touch readme.txt
,不会把原来的“readme.txt”内容覆盖,文件大小不会改变,只会改变它的时间戳如图12
文件后缀
我们发现,在用mkdir
或者touch
创建文件夹时,文件夹没有后缀,而刚刚摸文件的时候,我们摸了“readme.txt”它有后缀。那可能有个疑问:上文创建的时候,我们直接创建了test,而不是test.txt这种带着后缀的,那怎么知道创建出来的是什么类型的文件呢?
其实在被创建的时候,它已经被决定了属于什么类型的文件,而不在于我们怎么给它命名后缀。后缀只是用来做标记,以便我们知道这个文件是什么类型。如果它本质是doc文件,哪怕我把它命名成png后缀,也没法改变它是doc的事实(可以看看生信小白初遇R——7.csv文件格式与分隔符一文)
拓展练习
touch file{1..5}
ls file?
ls file??
ls file*
mv file* test2/test3
谢谢观看