2021-03-15 Linux基础-from Biotrainee

文件夹与文件管理命令(pwd, ls, cd, mkdir, touch,mv, rm, cp, tar, ln)

默认符号

image.png

快捷键

前四个要熟记于心


image.png

正则表达式

image.png

情景一:打开指定的文件夹并查看内容(查看已存在的)

cd:change the shell working directory

常见参数:没有

常见用法:cd [路径/目录]

cd .. ## 切换到上层目录,相对路径
cd ../.. ## 切换到上上层目录,相对路径
cd / ## 切换到根目录
cd /bin ## 切换到根目录下的bin,绝对路径
cd ~ ## 回到用户家目录
cd ## 同上,回到用户家目录
cd - ## 返回上一次的工作目录
举例:三种方式回到家目录


image.png

ls:List information about the FILEs

常见参数:

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

常见用法:ls [参数] [路径/目录/文件名]

ls ## 列出当前目录的文件
ls ./ ## 同上,‘.’号代表当前目录
ls ./*txt ## 列出当前目录下以txt 结尾的文件
ls ../ ## 列出上层目录的文件
ls -a ## 列出当前目录下的所有文件,包括隐藏文件
ls -l ## 列出当前目录下文件的详细信息
ll ## 等同ls -la ,自定义的别名
ls -lh ## 加上-h 参数,以K、M、G 的形式显示文件大小
ls -lh / ## 列出根目录下文件的详细信息
举例:ls -lh以易读的方式显示:
第一列是文件类型;第三列是所有者;第四列是属组

image.png

image.png

ls -lS 按大小排序
ls -lt 按时间排序
image.png

ll 显示所有详细信息;等于ls -l
image.png

ll -th 按时间和易读的方式列出所有文件详细信息(最常用)
image.png

自行组合实验:
image.png

课后练习:
image.png

image.png

情景二:新建一个文件夹, 在里面创建文件(创建不存在的文件)

mkdir:make directory(ies)

常见参数:-p/--parents,递归创建目录

常见用法:mkdir [-p] 目录名

新建一个文件夹不需要-p参数;新建嵌套文件夹需要-p参数。


image.png

命名规则

image.png

tree

touch:新建文件

常见参数:没有
常见用法:touch file
注:file之间不需要加任何符号

image.png

情景三:文件搬搬搬搬——移动、重命名、复制和删除
image.png

cp:copy and paste

常见参数:-r, copy directories recursively

常见用法:cp [OPTION] SOURCE DIRECTORY

image.png

rm:remove

常见参数:

-f ## force不显示警告讯息
-i ## 在删除会先询问用户(交互式删除),开始学习建议加这个参数。


image.png

-r ## 递归删除文件夹,删除文件夹一定要加-r
rm –rf /

常见用法:rm [-option] file

多点几次tab,会出现让你选择哪个文件的提示


image.png

练习:


image.png

碰到的问题,我想把file1-5移到test2文件夹,直接用了mv file* test2/这个命令,这是错的,因为file1-5是在test3文件夹里面,向上移动要从家目录开始设置路径才对:
image.png

正确如下:


image.png

image.png

再次体会,把file1-5移到test3文件夹:
image.png

image.png

要先cd到要移动的文件所在的文件夹,再去mv,mv路径要设置正确,mv后要cd到移动的位置,再查看是否移动成功。
tree

情景四:创建软连接
为啥要用软连接?没必要浪费太多的电脑硬盘空间。
•跟cp有啥差别?cp不香吗?
ln:Link 链接,分软链接(常用)和硬链接(默认).

常见参数:不加参数即为硬链接,加上–s 参数即为软链接,

软链接的作用类似快捷方式
常见用法:ln –s TARGET DIRECTORY
举例:

image.png

image.png

一定要用绝对路径
image.png

情景五:压缩文件怎么处理呢?

tar:tape archive 压缩或者解压文件.

常见参数:

-c ## 创建一个新的tar归档文件(创建压缩文件)
-x ## 从已有tar归档文件中提取文件(解压缩)
-f ## 输出结果到文件或设备
-v ## 在处理文件时显示文件(显示处理进度)
-j ## 将输出重定向给bzip2命令
-z ## 将输出重定向给gzip命令

常见用法:

解压:tar [参数] [待解压包]


image.png

压缩:tar [参数] <压缩后文件名> [待压缩文件/目录]


vv

gzip最为常用:
image.png

打包是指将一大堆文件或目录变成一个总的文件
压缩是将一个大的文件通过一些压缩算法变成一个小文件。
Linux 中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip、bzip2或zip命令)。
相当于把很多的衣服先塞进真空袋(打包),将真空袋抽真空减小体积(压缩)


本章小节

image.png

文本查看、操作、统计命令(• head/tail,cat/tac,less/more • wc,sort,uniq • cut,paste)

情景一:文件看看看看看看

cat:小心刷屏

cat: concatenate 查看文本文件的内容,输出到屏幕

常见参数:-A ## 列出所有内容,包括特殊字符,如制表符;方便我们判断是空格还是tab

$符号表示换行

-n ## 打印出所有行号
-b ##仅打印非空白行行号


-n -b

常见用法:

在屏幕上看到的叫做标准输出流,关掉之后即消失,如果想要保存关键的内容或者分析结果,比如后续转录组分析的结果,则需要重定向到一个文件,这样才可以保存下来。


image.png

输入ctrL+c才表示保存完成,类似于命令执行过才可以被翻到。

其他:

zcat:可以查看压缩的文本文件


image.png

tac:逆向查看


image.png

head / tail:查看文件的前/后n 行,默认10 行

常见参数:-n

重点:head常结合管道符|用于控制输出行数
命令1的输出
|
命令2的输入
eg: cat myfile | head -10

eg

eg

(不常用)more 文件名:逐页查看,按空格翻页,按回车换行,q退出

less (加强版的more): less [参数] 文件名

less进入了一个全新的空间,不会显示在标准输出流;而more会显示在标准输出流。

常用参数:

-N:显示行号
-S:单行显示
• 上下左右键查看文本内容
• Enter键向下移动一行
• 空格键翻页
• q键退出
在使用less时不要随意按动键盘噢;自行搜索“linux less”查看更多内容


命令

部分结果

自行查找设置xshell默认显示行数
zless:查看压缩文件


image.png

情景二:文件统计

wc:统计文本

常见参数:

-l 统计行数


image.png

-w 统计字符串数
-c 统计字节数

cut:文本切割

常见参数:

-d 指定分隔符,默认\t(tab);
-f 输出哪几列(字段fields),必须要有的参数,不然linux会罢工。
显示单列:


image.png

显示多列:


image.png

‘h’前是一列,h后是一列,取第一列
image.png

显示第二列前10行
image.png

3,2,1仍然是原来的顺序,没有倒着来


image.png

sort:排序

常见参数:

-n:按照数值从小到大进行排序
-V:字符串中含有数值时,按照数值从小到大排序
-r:逆向排序
-k:指定区域
-t:指定分隔符


命令

结果

字符串和数字按照从小到大排序时:


错误显示

正确显示

倒序排

uniq:去除重复行,当做sort的跟屁虫即可。

常见参数:

-c:统计每个字符串连续出现的行数
只去除相邻的重复行!如下没有sort不相邻的重复行没有去掉:


image.png

对比先sort再uniq:


image.png

统计每个结果出现了多少次:
image.png

paste:文本合并

常见参数:

-d:指定分隔符
-s:按行合并
常见用法: 1. paste file1 file2

image.png

2. seq 20 | paste - -
image.png

image.png

tr:字符替换

常见参数:

-d:删除指定字符,举例如下。

image.png

不可以直接替换成空字符串,举例如下:
image.png

-s:缩减连续重复字符
空格‘ ’替换成‘’,举例如下:
image.png

空格‘ ’替换成‘\n’,即换行,举例如下,但替换多个
**就不可以,即替换前后都要是一个字符:
image.png

练习题:
image.png

3:

(base) Mar23 08:51:58 ~/Data
$ cat example.gtf | cut -f 9 | cut -d ';' -f 1 | head  
gene_id "ENSG00000223972"
gene_id "ENSG00000223972"
gene_id "ENSG00000223972"
gene_id "ENSG00000223972"
gene_id "ENSG00000223972"
gene_id "ENSG00000223972"
gene_id "ENSG00000223972"
gene_id "ENSG00000223972"
gene_id "ENSG00000223972"
gene_id "ENSG00000223972"

4:

(base) Mar23 08:53:20 ~/Data
$ cat example.gtf | cut -f 9 | cut -d ';' -f 1 | sort | uniq -c
      8 gene_id "ENSG00000177693"
     15 gene_id "ENSG00000184731"
      3 gene_id "ENSG00000221311"
      3 gene_id "ENSG00000222623"
     19 gene_id "ENSG00000223972"
      4 gene_id "ENSG00000227061"
     83 gene_id "ENSG00000227232"
      8 gene_id "ENSG00000233004"
      3 gene_id "ENSG00000233750"
     15 gene_id "ENSG00000237613"
     12 gene_id "ENSG00000237683"
     18 gene_id "ENSG00000238009"
     12 gene_id "ENSG00000239368"
      4 gene_id "ENSG00000239906"
      4 gene_id "ENSG00000239945"
      3 gene_id "ENSG00000240361"
      3 gene_id "ENSG00000240786"
      4 gene_id "ENSG00000241599"
      8 gene_id "ENSG00000241860"
      8 gene_id "ENSG00000243485"

5:

(base) Mar23 08:54:13 ~/Data
$ cat example.gtf | cut -f 9 | cut -d ';' -f 1 | sort | uniq -c | tr ' ' ':'
::::::8:gene_id:"ENSG00000177693"
:::::15:gene_id:"ENSG00000184731"
::::::3:gene_id:"ENSG00000221311"
::::::3:gene_id:"ENSG00000222623"
:::::19:gene_id:"ENSG00000223972"
::::::4:gene_id:"ENSG00000227061"
:::::83:gene_id:"ENSG00000227232"
::::::8:gene_id:"ENSG00000233004"
::::::3:gene_id:"ENSG00000233750"
:::::15:gene_id:"ENSG00000237613"
:::::12:gene_id:"ENSG00000237683"
:::::18:gene_id:"ENSG00000238009"
:::::12:gene_id:"ENSG00000239368"
::::::4:gene_id:"ENSG00000239906"
::::::4:gene_id:"ENSG00000239945"
::::::3:gene_id:"ENSG00000240361"
::::::3:gene_id:"ENSG00000240786"
::::::4:gene_id:"ENSG00000241599"
::::::8:gene_id:"ENSG00000241860"
::::::8:gene_id:"ENSG00000243485"

第二章小节

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,185评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,652评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,524评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,339评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,387评论 6 391
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,287评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,130评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,985评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,420评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,617评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,779评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,477评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,088评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,716评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,857评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,876评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,700评论 2 354

推荐阅读更多精彩内容