Linux超级入门 linuxsurvival笔记

1 mkdir 创建新目录,已经掌握;

2 mov 文件A:

mv file1 file1NewDad

把文件1 移动到新的文件夹内(move the file into the new folder):

奇妙的是,重命名是 mv 的特殊操作:

mv file1 file1newName

3 cd 改变当前目录:

cd 哦!原来 cd 的缩写是:change directory。

4 pwd 查看当前目录

全拼是 print working directory,打印当前目录。

而且,linux 是可以配置成,改变目录后,显示在 每一行最前面的。

cd .. 返回上级目录(the directory above your current directory)。

而且 cd 和 .. 之间要有空格。这是 Linux 比 Windows 严格的地方。

【我的例子来了:

这里的 .. 和前面的 mv 命令后的 file1 那些,都是命令的 arguement(参数)。

这也是 Linux 命令的特点之一。

Quiz 1

最后一个是 more 命令。

Module 2

1 绝对路径和相对路径

绝对路径,重命名:

mv /animals/cats/tigers /animals/cats/siberians

没有以斜杠开头,而是以 ../ 开头,Linux就知道了这是一个相对路径。也就是和当前的文件夹目录的同一层目录下。

比如:

mv ../cats/tigers ../cats/siberians

【我的评论】

其实,根目录,的“/” 非常重要。有一次我成功了做了某项文件操作。cat的时候一直读不到。就是因为没有在路径前面加斜杠。

重命名成功。

练习: cp

已经在 animals 了就不用那么复杂了。

【cp 练习成功

练习2 rm

这个操作大名鼎鼎。因为之前看到过删库跑路的新闻笑话,就是用的这个指令。由于没有权限的设置,变成这样的。

在animals下面去删除 cobras,吸取上一题的错法。学会了如何写路径。

【rm 练习成功,先 copy 了一个 ipynb 的文件。然后再删掉。注意到还问了一下,你确定要删吗?还是用户友好的。

2 删除

3 安全性 security

Linux 是一个 multi-user(多用户)的操作系统,所以它有安全性去避免人们获取其他人的保密文件(confidential files)。【为什么confidential 和这个信心的 confident有关呢】

except for 那些照顾 primates 的人,我们不想让其他人有权限修改文件夹。

要解释需要一些说明。

当我们 ls 的时候,我们没有获取到任何和安全性有关的信息,因为 ls 默认只列文件名。你可以得到更多的信息通过在 ls 后面增加一个 “option”。所有的选项都用 “-”开始。

比如:ls -l (long)暗含的选项是,文件会被范别用很长的格式列出来。

【实际演练的时候,效果如图,查了一下:

多出来的这列用于引用计数。说明我的 owner 和 group 名字都叫 root。 ̄□ ̄||

Let’s have a closer look。第一个字符,如果是 “-”,表示的是 这是一个 file;

如果是“d”,表示这是一个 directory(目录)。

紧挨着的 rw-r–r– 九个字符表示 安全信息,下一列表示 owner 所有者。

然后一列,是文件的组织所有者。

记得哦,(recall)我们想给 prim 这个 group 的人对这些文件特殊权限(special access)。

接下来一列是文件以字节为单位的大小(size)。【想到我的学生 YHL 讲的一个笑话,hh 很有幽默感。布置作业的时候,他问,老师,这个文件多大,我跟他讲了几百kb,我说问这个干嘛,他说,害怕自己内存不够哈哈哈哈哈。笑死我了】

然后一列是,last mod(modified)实际也会显示日期的。

当然了,最后一列,会给出文件名。

好,我们来看表示安全的字符含义。

解码(deciphering)这些安全字符需要花点功夫。

(1)首先分三个一组来理解。think of those nine characters as three sets of three characters, 每三个字母 ”rwx“ 分别表示你可以对文件做的不同的操作。

【在这个例子里,我就更好的体会到了 set 的含义。一个set就是整套,整套命令里就只有 rwx,然后有哪个字母,就代表有哪种操作权限;否则就是没有,用 – 来代替的。】

(2)r——表示,你可以 ”read“ 文件的内容;

w——表示,你可以 “write”,或者 modify ,可以写、或者修改文件的内容;

x——表示,你可以 ”execute“ 文件,这个符号,只有文件是一个程序的时候才能给出去。

如果 rwx 中 任何一个(any of the ”rwx“)被一个 ”-“ 代替,表示这项权限被回收了。

比如,rw-r–r– 里面:

rw-是第一个set,表示 owner keeper,既可以读,又可以写。

group ”prim“的成员(members),只能读文件(r–);

最后的 (r–),适用的对象是任何在 Linux 系统上有用户id(UserID)的人。

我们习惯于把这个 set 叫做 “world”。

三个文件是 world-readable。这样在我们 Linux world 里的任何人,都可以读他们的文件,但是他们不能修改文件里的内容。这也正是我们想做的那样。(This is the way we want to leave it.)

我们改变文件上(on)的安全权限的指令,有一个极其不好理解的(horribly cryptic)名字,叫做“chmod”,表示 “change mode”(改变模式)。因为那九个字符的安全字符被遗弃叫做文件的安全“mode”。

好,现在,就很清晰了,我们为什么要用“rwx”三剑客来设定“user”、“group”、“other”。

chmod 的第一个参数就是 u、g、o 或者是组合,表示对这三个做后面的操作。

比如:对 other 角色增加(要用 +)然后加 x 表示执行(execute)权限,最后再加上要改变的文件夹,也就是:

chmod o+x

如果要同时取消(就用 – 号了)所有人的所有权限:

chmod ugo-rwx gorillas

诶嘿!轻松拿下!

我们可以让你去打两次 “chmod”,来修改 “gorillas” 和 “sq_monks”两个文件夹的权限,但是有一种使用“通配符”(wildcards)更简单的方式。

以防你好奇 “tron>” 词是什么意思,我们就用另一个想象中的机器叫 “tron”,是和“zoo”相似的一个机器。

一个通配符允许你同时明确不止一个文件。“*”就可以匹配任意数量的字符。比如,如果你想在当前目录的所有文件执行一个命令,你可以用 “*” 来代指文件名。如果你想更有选择性一些,只匹配以 “ing”结尾的文件,你可以用 “*ing”。注意:“*”甚至可以匹配零个字符,所以 “*ing” 将会匹配 “ing” 和 “sing”。

另一个通配符 “?”通常被使用的不那么经常。但它也很有用。它仅仅匹配的是单个字符。举例来说,如果你想匹配“sport”,而不是 “spat”,你可能会用 “sp??t”。第一个 “?”会匹配到 “spat” 里的 “a”,但是第二个“?”将什么也匹配不到。所以 “spat” 就会匹配失败。

输入命令,给 prim “group” 里当前目录的所有文件 “write” 权限。然后输入命令得到文件的长输出。

注意一下这里我打了红色框的部分。第一次写的时候,以为和 Python 正则匹配一样,要用 括号括起来,报错了。 “*” 在窗口里的时候是不用加引号的。

默认的 Linux 安全模式是有一点不灵活。为了给一组人特定的权限,比如修改的特权。你不得不先让你的系统管理员创建这组人。即,得先有这个组。再然后,如果你想给另一组人一组不同的权限(比如只读权限),就不行。因为你只能对每个文件或目录分配一个组的所有者(group owner)。为了解决这个问题,你可以看看 ACLs(Access Control Lists,权限控制列表)。它超过了这份入门手册的范围。

既然我们在介绍群组的主题,我们应当看看你是在哪个组里。想得到一份你的群组成员列表,输入

groups

来试试:

注意到你不在一个叫 “prim” 的组,但那不重要,因为你就是这些文件的 owner。

读者朋友也可以遮挡一下下面的屏幕,看着上图检测一下刚刚的阅读情况。

公布答案:

恭喜!我已经带着你完成了 Linux Survival 课程的第一和第二个模块。这还不算痛苦吧,对不?你现在对于在 Linux 环境应该做些什么应该有了一些想法了。这些你已经学过的命令,是你将来会比其他命令常用得多的。

如果你未来的某个时间需要回看某个训练模块,你可以通过左边的索引快速地得到合适的课程材料。

我们强烈建议你尽快开始使用真实的 Linux 系统来保证你记得这些内容并实践他们。当你对 Linux 有了更多的经验,可以上上 模块3和模块4.

感谢你选择这份文档。如果有用,记得分享。

【我确实觉得有用,这就来分享了: )

分享请求传递。如果你觉得本文有用,记得分享哦。】


Discover more from 小匚的个人博客

Subscribe to get the latest posts sent to your email.

Leave a Reply

Discover more from 小匚的个人博客

Subscribe now to keep reading and get access to the full archive.

Continue reading

Discover more from 小匚的个人博客

Subscribe now to keep reading and get access to the full archive.

Continue reading