美文网首页生信小白成长记
关于LINUX命令行(一)

关于LINUX命令行(一)

作者: 琪音 | 来源:发表于2018-01-23 01:29 被阅读8次
为什么使用命令行?

大多数计算机用户只熟悉图形用户界面(GUI:graphical user interface),并且产品供应商和此领域的学者会灌输给永华这样的思想,命令行界面(CLI:command line interface)是过去使用的一种很恐怖的东西。

一个好的命令行界面,是用来和计算机进行交流沟通的非常有效的方式,“图形用户界面让简单的任务更容易完成,而命令行界面使完成复杂的任务成为可能”。

生物信息领域,能高效处理大量的数据。生物信息的软件大多为开源软件,LINUX版本。它是一个多用户的操作系统,充分利用购置的硬件资源和软件资源。

什么是shell?

shell就是一个程序,它接受从键盘输入的命令,然后把命令传递给操作系统去执行。
bash(Bourne Again SHell),最初Unix上有Steve Bourne写成shell程序sh的增强版。

  • 终端仿真器

当使用图形用户界面时,我们需要另一个和shell交互的叫做终端仿真器的程序。

** 在Mac里就是Terminal **

  • 第一个按键
qiyindeMacBook-Pro:~ qiyin$ 

这叫做shell提示符,通常包括你的用户名和主机名,紧接着是当前工作目录和一个美元符号。
输入6789,这个命令没有意义,shell会提示错误信息。

  • 命令历史
iyindeMacBook-Pro:~ qiyin$ 6789
-bash: 6789: command not found
qiyindeMacBook-Pro:~ qiyin$ 6789

如果按下上箭头,会看到刚才输入的命令,这就叫做命令历史。一般保存最后输入的500个命令,按下下箭头按键,先前输入的命令消失。

  • 输入简单的命令行
qiyindeMacBook-Pro:~ qiyin$ date
2018年 1月19日 星期五 10时15分22秒 CST
qiyindeMacBook-Pro:~ qiyin$ cal
     一月 2018
日 一 二 三 四 五 六
    1  2  3  4  5  6
 7  8  9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
  • 结束终端会话
    输入exit命令来终止一个终端会话。
文件系统中的跳转

pwd-print name of current working directory (打印当前工作目录名)
cd-change direttory(更改目录)
ls-list directory contents(列出目录内容)

  • 理解文件系统树
    所有文件组成一棵树型目录,这个目录树可能包含文件和其他目录。文件系统中的第一级目录称为根目录,根目录包含文件和子目录,子目录包含更多的文件和子目录,以此类推。
qiyindeMacBook-Pro:~ qiyin$ pwd
/Users/qiyin

这是我的家目录,家目录是唯一允许用户对文件进行写入的地方

  • 绝对路径

绝对路径开始于根目录,紧跟着目录树的一个个分支,一直到达所期望的目录或文件。

  • 相对路径
    相对路径开始于工作目录。

特殊的符号表示相对位置
“.”指的是工作目录
“..”指的是工作目录和父目录

绝对 相对
from /Users/qiyin to /Users cd /Users cd ..
from /Users to /Users/qiyin cd /Users/qiyin cd ./qiyin
qiyindeMacBook-Pro:~ qiyin$ 
qiyindeMacBook-Pro:~ qiyin$ pwd
/Users/qiyin
qiyindeMacBook-Pro:~ qiyin$ cd /Users
qiyindeMacBook-Pro:Users qiyin$ pwd
/Users
qiyindeMacBook-Pro:Users qiyin$ cd /Users/qiyin
qiyindeMacBook-Pro:~ qiyin$ pwd
/Users/qiyin
qiyindeMacBook-Pro:~ qiyin$ cd ..
qiyindeMacBook-Pro:Users qiyin$ pwd
/Users
qiyindeMacBook-Pro:Users qiyin$ cd ./qiyin
qiyindeMacBook-Pro:~ qiyin$ pwd
/Users/qiyin

tip:"./"可以省略

  • ls乐趣

通过ls,我们可以知道目录的内容,以及各种各样重要文件和目录的属性。

选项和参数

命令名经常会带有一个或多个用来更正命令行为的选项,选项后面会带有一个或多个参数,这些参数是命令作用的对象。
大多数命令使用的选项,是由一个中划线加上一个字符组成,例如“-l”.
ls命令选项

  • 确定文件类型
    用file命令来确定文件的类型,形式为“file filename”

  • 浏览文件内容
    用less命令来浏览文本文件的程序,形式为“less filename”
    例如,要查看一个定义了系统中全部用户身份的文件,输入“less /etc/passwd”


操作文件和目录

cp - 复制文件和目录
mv - 移动/重命名文件和目录
mkdir - 创建目录
rm - 删除文件和目录
ln - 创建硬链接和符号链接

  • 通配符

shell频繁的使用文件名,shell提供了特殊字符来帮助你快速指定一组文件名。这些特殊字符叫做通配符,使用它允许你依据字符类型来选择文件名。

rm命令用到通配符,用ls命令来测试,看到要删除的文件列表。

  • 硬链接与符号链接
    每个文件默认会有一个硬链接,这个硬链接给予文件名字。我们每创建一个硬链接,就为一个文件创建了一个额外的目录项
    创建符号链接是为了克服硬链接的两个缺点:硬链接不能跨越物理设备,硬链接不能关联目录,只能是文件。符号链接生效,是通过创建一个特殊类型的文件,这个文件包含一个关联文件或目录的文本指针

什么是链接?
链接简单说是一种文件共享的方式,是POSIX中的概念,主流文件系统都支持链接文件。可以理解为windows中常见的快捷方式。

不是很明白?
跳转大佬的科普文,看完后,再通过练习感受一下吧!


练习

1、创建目录playground

2、在playground的目录下创建dir1、dir2

3、复制文件

从/etc目录复制passwd到当前目录,使用cp命令,再执行ls命令看到文件

qiyindeMacBook-Pro:playground qiyin$ cp /etc/passwd .
qiyindeMacBook-Pro:playground qiyin$ ls -l
total 16
drwxr-xr-x  2 qiyin  staff    68  1 20 17:12 dir1
drwxr-xr-x  3 qiyin  staff   102  1 20 17:12 dir2
-rw-r--r--  1 qiyin  staff  5925  1 22 23:08 passwd

注意 在命令末尾加个“ .”,就是将passwd复制快捷方式到当前目录

4、移动和重命名文件

将passwd重命名为fun,用到mv命令。将fun移动到dir1。再把fun从dir1移动到目录dir2,最后把fun文件带回到当前目录。

  • tips:这里移动和重命名都是mv命令,所以在同一个文件夹下面,就执行重命名。在不同文件夹,并且那个文件夹没有的文件,就是移动。
qiyindeMacBook-Pro:playground qiyin$ mv passwd fun
qiyindeMacBook-Pro:playground qiyin$ mv fun dir1
qiyindeMacBook-Pro:playground qiyin$ mv dir1/fun dir2
qiyindeMacBook-Pro:playground qiyin$ mv dir2/fun .
qiyindeMacBook-Pro:playground qiyin$ ls
dir1    dir2    fun

5、创建硬链接

"ls -li"可以展示文件索引节点的信息,第一字段中,fun和fun-hard共享一样的索引节点号,证实这两个文件是一样的文件。

qiyindeMacBook-Pro:playground qiyin$ ln fun fun-hard
qiyindeMacBook-Pro:playground qiyin$ ln fun dir1/fun-hard
qiyindeMacBook-Pro:playground qiyin$ ln fun dir2/fun-hard
qiyindeMacBook-Pro:playground qiyin$ ls -li
total 32
9860853 drwxr-xr-x  3 qiyin  staff   102  1 22 23:45 dir1
9860854 drwxr-xr-x  3 qiyin  staff   102  1 22 23:46 dir2
9990311 -rw-r--r--  4 qiyin  staff  5925  1 22 23:08 fun-hard
9990311 -rw-r--r--  4 qiyin  staff  5925  1 22 23:08 fun

6、创建符号链接(软连接)

这里使用了相对路径,也可以使用绝对路径:
“ln -s /Users/qiyin/playground/fun dir1/fun-sym”

可以看到创建的符号链接中文件索引节点和原来的是不一样的。

qiyindeMacBook-Pro:playground qiyin$ ln -s ../fun dir/fun-sym
qiyindeMacBook-Pro:playground qiyin$ ln -s ../fun dir1/fun-sym
qiyindeMacBook-Pro:playground qiyin$ ln -s ../fun dir2/fun-sym
qiyindeMacBook-Pro:playground qiyin$ ls -l dir1
total 24
-rw-r--r--  4 qiyin  staff  5925  1 22 23:08 fun-hard
lrwxr-xr-x  1 qiyin  staff     6  1 23 00:07 fun-sym -> ../fun
qiyindeMacBook-Pro:playground qiyin$ ls -li
total 40
9860853 drwxr-xr-x  4 qiyin  staff   136  1 23 00:07 dir1
9860854 drwxr-xr-x  4 qiyin  staff   136  1 23 00:07 dir2
9990311 -rw-r--r--  4 qiyin  staff  5925  1 22 23:08 fun-hard
9990311 -rw-r--r--  4 qiyin  staff  5925  1 22 23:08 fun
9993619 lrwxr-xr-x  1 qiyin  staff     3  1 23 00:05 fun-sym -> fun

相关文章

  • [书籍]Linux命令行大全

    《Linux命令行大全》 《Linux命令行大全》《Linux命令行大全》 封底 内容提要 本书主要介绍Linux...

  • missing课之shell

    MIT missing course的第一个节课是关于linux shell命令行终端的基本使用。Linux有很多...

  • 扣丁学堂Linux基础教程如何使用命令行添加自定义文本颜色

    今天扣丁学堂小编给大家介绍一下关于如何在Linux命令行中添加自定义文本颜色讲解,当你打开在Linux命令行注意到...

  • Hello Linux

    目录 一,Linux笔记 二,英语词汇 一,Linux笔记 Linux命令行/MacOS终端命令行 Java的世界...

  • 关于LINUX命令行(一)

    为什么使用命令行? 大多数计算机用户只熟悉图形用户界面(GUI:graphical user interface)...

  • 浅谈linux下的命令行

    何为命令行 一般说的“命令行”是指linux命令,linux命令是对Linux系统进行管理的命令。 其实命令行就是...

  • 关于常见Linux命令介绍

    常见 Linux 命令的介绍 这是一篇关于常见 Linux 命令的介绍 基本命令行: 文件的路径问题 pwd用于查...

  • 《学习小组Day2笔记--Aurora Yu》

    Day 2 云服务器的Linux (Windows版) 有效期一周,但是可以足够熟悉关于Linux的命令行,有需要...

  • linux常用命令行

    linux系统的使用离不开linux命令行,先对常用的linux命令行做个总结记录。目前,个人比较常用的命令行有如...

  • Linux命令行使用教程

    Linux基本单词 Linux缩写 Linux目录 Linux操作 Linux技巧 Linux自学命令行办法

网友评论

    本文标题:关于LINUX命令行(一)

    本文链接:https://www.haomeiwen.com/subject/ahdpoxtx.html