管理文件夹与文件的基础命令(1)

文摘   2024-11-11 17:58   广东  

学习笔记总结于『生信技能树』马拉松课程

本篇学习一些管理文件夹与文件的基础命令:pwdlscdmkdirtreetouch

1. pwd

print working directory 打印工作目录

图1 举例

2. ls

list 列出

2.1常见参数

-a ## 列出全部的文件,连同隐藏文件也一起列出来 all
-l ## 列出目录的详细信息 long
-h ## 将目录容量转换为以人类易读的方式(例如 GB,KB 等等) human
-S ## 以文件大小排序 Size(注意是大写的S)
-t ## 以时间排序 time
-r ## 倒序排序 reverse
图2 举例

隐藏文件

以“.”开头的都是隐藏文件,这些文件跟配置、环境有关,比较重要。系统不希望我们随意更改它们,也为了防止我们误操作,所以将它们藏起来了

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的中文意为:别名,化名

图3

此时想退出,输入“q”并回车即可,后续会介绍less这个命令

文件权限

运行ll -h后,返回结果如图4

图4

文件属性

图5
图6

小技巧 ll -thr

3. cd

change directory 切换目录

cd ..      ## 切换到上层目录,相对路径
cd /       ## 切换到根目录
cd /teach/ ## 切换到根目录下的teach,绝对路径
cd -       ## 返回上一次的工作目录
cd ~       ## 回到用户家目录
cd         ## 同上,回到用户家目录

所以使用Linux时,需要时刻留意自己在哪,以便确定我们去哪里

图7 举例

但如果不知道想去的地方叫什么,按两下tab键就能补全所有的名字,在这些名字里找到自己想去的地方即可。tab键的作用,更贴切来说是补齐

图8

相对路径与绝对路径

相对路径:相对于当前工作目录的路径

绝对路径:从根目录开始引起的全路径

图9

4. mkdir

make the directory(ies) 创建一个新的目录

4.1常见参数

-p/--parents ## 递归创建目录

4.2常见用法

mkdir [-p] 目录名
图10 举例

4.3 tree

sudo -i
apt  install tree #安装tree命令
exit
tree

tree这个命令很实在,会把所有内容以树状图的形式列出来,如图11

图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

图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
图13
图14


谢谢观看


生信菜鸟团
生信菜鸟团荣誉归来,让所有想分析生物信息学数据的小伙伴找到归属,你值得拥有!
 最新文章