touch命令:用于创建一个文件。
Q:为什么是touch而不是create?
A:没有为什么,不要问为什么,touch本来的作用不是来创建文件的,它的主要的用途是update editTime,副作用是当文件不存在的时候创建文件。
mkdir命令:用于创建文件夹。
注意,mkdir是用于创建子文件夹,即父文件夹不存在的情况下,是会返回错误的。
我们需要通过加-p来确保父文件夹存在,不存在就创建一个。
举例:
mkdir -p BBB/Test
注:本例若不加 -p,且父文件夹BBB不存在,则产生错误。
好的,[创建]就到这里为止,[删除]准备重开一期讲。
关于linux里面的文本格式
之前有命名过file.txt的文件,此txt非彼txt,linux里面的txt格式是和Windows里面的是不一样的。
一、区别
换行符:
1.windows中的换行符是\r\n,
2. linux/unix下的换行符是\n。
二、文件格式互转命令
1.unix2dos:将具有unix风格的格式文件转化为具有window下的格式文件。
2.dos2unix:将具有windows风格的格式文件转化为unix下的格式文件。
关于压缩文件格式:
Zip、tar、tar.gz、tar.bz2 先说这4种,
Zip是非常常见的格式,它与windows是通用的。
另外3种格式,在Windows上一般能打开。
tar仅仅打包,没有压缩。
tar.bz2 是先打包,后压缩。
具体使用方法,另外开一期讲。
讲一下使用频率最高的——ls。
ls是list的缩写,用于查看当前文件夹有哪些文件。
默认刚启动Terminal的初始位置在「你的用户名文件夹」里面,而「你的用户名文件夹」在「home」文件夹里面,「home」文件夹在根目录里面。
这就解释了昨天cat指令,虽然是以List的形式输出的,但是就是要用cat,cat作为查看内容的指令还具有连结和输出的作用,所以单一个list是不能准确描述其功能的。
当你每次想chmod的时候,必然会先查看文件信息。
故新手可能最先接触的ls指令是:
ls -l
它用于查看详情信息,
比如文件的权限、大小、所有者、修改日期等等。
这个l代表的是long listing format,简称l。
输入指令man ls可查看详细关于ls的说明,因为用法太多这里只列举最常用的。
最后说一下echo和su,
Echo,回声,来自于古希腊神话里的echo,她因为得罪了宙斯的妻子赫拉而被惩罚,丧失了说话的能力,变得只能重复人说话的后几个字,所以echo就变成「回声」的意思。
同样,在Linux中输入
echo hello
控制台会输出hello。
如果你想把hello输出到file1.txt,那么需要这么写:
echo hello > file1.txt
如果你想追加内容,则:
echo hello >> file1.txt
注意,追加内容是另起一行的。
echo主要用于打印变量的值,如:
echo $HOME
则会输出当前用户的根路径。
举例:
注意大写!(Linux大小写敏感的)
命令:
su
切换到root用户,注意,刚用这个指令基本上会这样:
输入密码,认证失败。
原因是没有设置root密码,
按上图操作一遍就可以了。
Q:su和su -的区别在哪?
A:su只是切换了root身份,但Shell环境仍然是普通用户的Shell;而su -连用户和Shell环境一起切换成root身份了。
额外补充一个东西,
Linux的terminal被翻译为终端,也被称作shell,实际上称作shell并没有任何问题。
Shell理解为命令解释器,介于应用程序与系统内核之间。
但是有些人把终端给理解错了,
终端和Shell本质上完全不是同一个东西,
终端一般是指硬件设备,这些终端本身不具备计算能力,仅仅承担信息输入输出的工作。
因为早期个人电脑异常昂贵,一台设备一般会有多个终端。
(多个终端之间可以互相通讯)
现在,我们在Ubuntu 18.04 上运行的terminal实际上就是直接打开的shell。
参考文档: