Linux的基本了解

转载 2018年04月15日 23:26:34

一、Linux 基本指令 ls 和 cd

Linux 的深度玩家, 基本上都是用 Terminal 和指令 (command) 来超控电脑的.有些时候甚至你的电脑没有屏幕, 也只能用指令来超控. 比如服务器, 树莓派(raspberry pi).

如果你只是为了想 “轻度使用” Linux, 前面的教程就已经够了, 不过如果你想要 “重度使用”, 哈哈, 就接着看吧.

其实计算机指令大部分都是和文件打交道, 比如把文件 A 移动到 文件夹B, 新建一个文件 C, 改写文件 A 的内容等.你想黑客黑你电脑, 多半也就是找你电脑里重要的文件, 然后 copy 去他的电脑. 或者整个互联网都是一个文件传输器, 将你的网页以文件的形式发送到你的电脑.所以学 Linux, 学会怎么样摆弄文件最重要. 接下来几节内容, 我们就介绍一些基础的摆弄文件方法.

1.cd 指令

第一个要知道的指令就是怎么样去到你想去的地方. cd (Change Directory) 就是干这个的. 找到 Linux 的 terminal 窗口,然后他默认跳出来是在你的用户目录 (Home). Terminal 中的 ~ $ 就是说你输入指令将在 ~ 这个目录下执行.而 ~ 这个符号代表的是你的 Home 目录. 如果在文件管理器中可视化出来, 就是下面图中那样.

使用 cd 指令, 我们能在 Terminal 中轻松切换到不同的文件夹. 想从 Home 去 Documents 这个文件夹?输入下面的命令就可以了.

~$ cd Documents/

接着你会看到它在下一行跳出了这个东西, 在 $ 前面的 ~/Documents 就说明你现在已经在 Documents 这个文件夹里了.你现在要执行的命令将会在这个目录下生效.

~/Documents$

接着我们来列举另外一些常用的 cd 命令.

①返回上一级目录

~/Documents$ cd ..
~$
②去往子文件夹

~$ cd Documents/folder1/
~/Documents/folder1$

③返回你刚刚所在的目录

~/Documents/folder1$ cd -
/home/morvan
~$

④ 向上返回两次

~/Documents/folder1$ cd ../../
~$

⑤ 去往 Home

~/Documents/folder1$ cd ~
~$

⑥ 去往电脑任何地方, 你需要的是一个绝对路径

~$ cd /home/morvan/Documents/folder1
~/Documents/folder1$
2、ls 指令

我们现在能在电脑的文件中移动来移动去了, 这还没什么意思, 接着我们就来移动去一个地方, 再看看那个地方有些什么.(有种黑客在偷窥人家文件的感觉, 哈哈).

我在 Documents 目录里放了个文件夹(folder1)和文件(file1). 我们将目录导去 Documents,然后使用 ls (list 的简写) 看看这里面的东西.

Linux 基本指令 ls 和 cd

~/Documents$ ls
file1  folder1

我们再来看看 ls 的其他使用方式.

① 输出详细信息 -l (long 的简写). 这个指令会打印出文件的权限 (-rw-rw-r-- 之后我们在细说这个), 用户名, 文件大小, 修改日期, 文件名

~/Documents$ ls -l
total 4
-rw-rw-r-- 1 morvan morvan    0 Oct 12 07:38 file1
drwxrwxr-x 2 morvan morvan 4096 Oct 12 07:26 folder1

-a (all 的简写) 显示所有文件 . 这里还会显示隐藏的文件 (以 . 开头的)

$ ls -a
.  ..  file1  folder1  .hidden_file

-lh (human), 直接 -l 不方便人看, 这个指令是为了方便给人观看的. 注意这里的文件大小使用了 K, MB, GB 之类概括

$ ls -lh
total 4.0K
-rw-rw-r-- 1 morvan morvan    0 Oct 12 07:38 file1
drwxrwxr-x 2 morvan morvan 4.0K Oct 12 07:26 folder1

④ 还有很多其他的功能, 我们可以通过 --help 来查看

$ ls --help

二、Linux 基本指令 touch, cp 和 mv

1.touch 新建

touch 的使用很简单, 我们先去往 Documents 的文件夹, 里面已经有了 folder1file1,如果我们想新建一个 file2 使用下面的语句就好. 一个空文件就建立好了.

$ touch file2

如果你想同时建立多个文件, 输入多个文件的名字, 以空格分开.

$ touch file3 file4 file5

2.cp 复制

cp (copy) 是复制文件或者文件夹的指令, 常用的方式是复制 “老文件” 到 “新文件”.

$ cp 老文件 新文件

① 我们用上面建立好的 file1 来举例, 将 file1 复制成 file1copy

-i (interactive) 注意: 如果 file1copy 已经存在, 它将会直接覆盖已存在的 file1copy, 如果要避免直接覆盖, 我们在 cp 后面加一个选项.

$ cp -i file1 file1copy
cp: overwrite 'file1copy'?

在这句问句后面打上 “Yes”, “Y”, 或者任何大小写形式的 “y” 和 “yes”, 它将进行覆盖操作. 直接回车或者打其他字母, 就会放弃复制这项操作.

③ 复制去文件夹

$ cp file1 folder1/

④复制文件夹, 需要加上 -R (recursive)

$ cp -R folder1/ folder2/

⑤复制多个文件. 复制名字部分相同的多个文件, * 是说”你就找文件前面是 file 的文件, 后面是什么名字无所谓”

$ cp file* folder2/

或者你可以单独选定几个文件, cp 会默认最后一个选项是要复制去的文件夹. 比如下面把 file1copyfile2 复制去 folder1/

$ cp file1copy file2 folder1/

2.mv 剪切

知道了 cp, mv就好理解多了, 基本是一样的.

① 移动去另一个文件夹

$ mv file1 folder1/
②重命名文件

因为移动文件到原始的地点, 但是以不同的文件名. 这种做法不就是在重命名嘛!

$ mv  file1 file1rename

最后还是想要提一句, 如果想要查看使用说明, 直接在指令后面打上 --help 就能查看.


三、Linux 基本指令 mkdir, rmdir 和 rm

1,mkdir 建立文件夹

mkdir (make directory) 就是创建一个文件夹的意思, 使用起来很简单.

$ mkdir folder2

Linux 基本指令 mkdir, rmdir 和 rm

如果你想在这个目录给 folder2 里面再建一个文件夹也是 Ok.

$ mkdir folder2/f2

这样, f2 这个文件夹就被新建在了 folder2 里面.

2.rmdir 移除文件夹

rmdir (remove directory) 也就是字面意思, 移除文件夹. 不过这有一个前提条件.这些要移除的文件夹必须是空的. 不然会失败. 所以如果想刚刚建立的那个 folder2 就不能被移除, 因为里面有个 f2 文件夹.

要移除个空文件夹, 比如我在新建一个 folder3, 然后移除

$ rmdir folder3
3.rm 移除文件

那文件夹里面有文件的这种情况, 或者是移除单个文件的情况, 我们都能用 rm 来实现.注意: 执行了 rm 以后是不能进行返回操作的, 请确保别执行像这样的操作 rm /, 这会清空你的电脑.

①移除单个文件

$ rm file1

-i-I 有提示地移除文件 (为了避免误删)

  • -i 会每个要移除的文件都进行提示
  • -I 超过3个文件才进行提示
$ rm -i f1 f2 f3 f4
rm: remove regular empty file 'f1'?
rm: remove regular empty file 'f2'? y
rm: remove regular empty file 'f3'?
rm: remove regular empty file 'f4'? y
$ rm -I f1 f2 f3 f4
rm: remove 4 arguments? y

-r-R (recursively) 用来删文件夹

rmdir 不同, rm -r 可以在文件夹中有文件的情况下删除这个文件夹. 比如我的 folder1 里有 file1file2 两个文件.

$ rm -r folder1



四.在 linux 中, 怎么样观看和编辑文件. nano 和 cat 解决。

nano 是 linux 的一款文字编辑工具. 我们可以拿它来做最基本的 terminal 端的文本编辑, 甚至可以写代码~下面我们用 touch 创建一个 Python 脚本. 如果大家不懂 Python 也没关系, 你就知道我们可以拿 nano 来编辑文字或者脚本就好了.

然后用 nano 执行这个 t.py 文件.

$ nano t.py

他就会变成一个文本编辑器, 你在里面可以打上一些脚本, 比如像我这样.

然后按 “Ctrl + x” 来保存和退出. 如果提示你保存, 你就按一下 “y” 键, 然后回车, 你的文件就被保存下来了.

接着如果你在 terminal 中输入这个, 你就能看到 terminal 执行了你的 python 文件.

$ python t.py
This is a Python script!

(写给会 Python 的朋友: Ubuntu 安装好了以后自带 Python2.7 和 Python3.5的)

cat (catenate) 可以用来显示文件内容, 或者是将某个文件里的内容写入到其他文件里. 我们举例说明.

1 查看文件内容

$ cat t.py
print("This is a Python script!")

2 将文件的内容放到另一个文件里

$ cat t.py > t1.py
$ cat t1.py
print("This is a Python script!")
3 将多个文件的内容打包一起放入另一个文件

比如这里我们把 t.pyt1.py 的内容同时放入了 t2.py,如果在显示 t2.py 的时候, 它有两行 “print…”.

$ cat t.py t1.py > t2.py
$ cat t2.py
print("This is a Python script!")
print("This is a Python script!")

4将内容添加在一个文件末尾

$ cat t3 >> t2.py
$ cat t2.py
print("This is a Python script!")
print("This is a Python script!")
This is t3.

转载自https://morvanzhou.github.io/tutorials/others/linux-basic/

感谢莫烦python ,不知道能不能装载,打开你的链接有的时候太慢了,所以就装载了哇。

TensorFlow入门基本教程

随着人工智能的复兴,特别是阿法狗在围棋界轻松碾压所有人类棋手时,我们在惊奇它的神奇,它的高智慧,更好奇它的来源,以及它的实现原理,以及它的实际运行过程,那么你需要学习这个课程。这样的事件标志着一个新时代--人工智能时代的到来,在这样背景之下,人人都应该了解一些人工智能的基本知识,以及它的实现方式,以便把它应用到自己的工作领域里,让自己的工作更加出色,更加适应时代的发展。
  • 2017年03月08日 10:14

Linux系统基本了解

什么是Linux系统在上一篇中已经简短介绍了Unix系统,大家看了就因该知道Linux系统其实是Unix系统的一小支。Linux操作系统是UNIX操作系统的克隆版,是Unix的开源实现,使用的更广泛,...
  • molihuakai_118
  • molihuakai_118
  • 2017-12-23 20:15:32
  • 209

Linux,你了解多少!

1、Linux概述        Linux是一种自由和开放源代码的类UNIX操作系统。严格来讲,术语Linux只表示操作系统内核本身,但通常采用Linux内核来表达该意思。Linux则常用来指...
  • dmzing
  • dmzing
  • 2016-09-01 23:40:07
  • 862

初学Linux应掌握的Shell命令

模糊查询正在运行的进程 解压tar.gz 修改环境变量
  • Lnho2015
  • Lnho2015
  • 2015-04-09 11:17:53
  • 910

菜鸟级别的一些最基础的linux命令实例详解

菜鸟级别的一些最基础的linux命令实例详解,包括新建目录,修改目录名称,删除,上传文件,解压文件,还有修改文件...
  • qq_33142257
  • qq_33142257
  • 2016-10-12 14:45:45
  • 272

软件测试工作需掌握的Linux的快捷…

软件测试工作需掌握的Linux的快捷键和主要命令   Linux基本的键盘输入快捷键和一些常用命令----人人为我,我为人人 切换到第一个文本终端。在Linux下你可以有多达六个不同的终端...
  • chengeng29
  • chengeng29
  • 2016-04-28 20:52:59
  • 692

Linux基本分区管理

基本分区管理: 分区(基本分区)、格式化、挂载 分区工具   fdisk msdos 分区工具   parted msdos 或 GPT sectors 扇区 512B centos6+ c...
  • ZH5610
  • ZH5610
  • 2017-03-04 14:20:44
  • 551

电子商务概论实验报告

  • 2013年01月25日 21:24
  • 162KB
  • 下载

Python——python了解

python优点简单、易学 、免费/开源 、自动内存管理 、可以移植 、解释性 、面向对象 、可扩展 、丰富的第三方库缺点速度慢、强制缩进、单行语句[root@localhost ~]# python...
  • hsh19951011
  • hsh19951011
  • 2017-12-24 23:11:36
  • 353

基本硬件知识

1.2根线的串口通信(TTL电平模式)连接务必关流控,不然发不了信息。 2.准双向口,读引脚,必须先向锁存器写入“1"。...
  • lawrencejiabin
  • lawrencejiabin
  • 2015-09-20 10:02:00
  • 149
收藏助手
不良信息举报
您举报文章:Linux的基本了解
举报原因:
原因补充:

(最多只允许输入30个字)