汽车后市场新说
新浪微博
微信
当前位置:汽车后市场新说网 » 变废

大数据之脚踏实地学03--Linux的常用文件级命令

  • 前言


众所周知,大数据应用工具(如Hadoop、Storm、Hive、Spark等)都是运行于Linux系统中。所以,第一步要做的就是认识并操作Linux系统(正如你对Windows系统中的了解),而这一步又显得尤为基础和重要。对于Linux系统的操作,与图形化的Windows系统完全不同,它都是基于命令完成的。故从本期开始,将陆续介绍Linux的常用命令,包括文件处理命令权限命令搜索命令以及压缩解压命令等。灵活掌握和使用这些常用命令,都可以为后期大数据工具的学习打下基础。


  • 预备知识


命名规则

  • 除正斜杠“/”之外,几乎所有的字符都可以用作命名,但不推荐使用空格符、制表符、美元符$、@、#、()、*等特殊符号;

  • 对字母的大小写敏感,即a和A代表两个不同的对象;

  • 避免使用英文状态的句号点"."开头,因为在Linux中,"."开头的文件为隐藏文件;

  • 见名知意,即尽可能使名称具有含义,如gender就代表与性别相关;


命令格式

命令格式:命令 -选项  参数

 例如:ls -la /etc

在命令中,需要使用多个选项时可以将它们写在一起(别忘了选项前面有一个减号哦);命令中的参数可以是目录、文件、用户、组或执行文件等;


两个特殊目录

一个英文状态的句号点(.),代表当前目录,即用户所在的当前路径;

两个英文状态的句号点(..),代表当前目录的父目录,即用户所在当前路径的上一级目录;


  • 文件处理命令


命令名称ls

英文含义list

功能描述:列出某个指定目录下的所有文件或子目录

语法:ls [-aldh] [文件或目录]

选项

  无选项:表示罗列出目录内的所有文件名称

          -a:(all),显示所有文件,包括隐藏文件

          -l:(long),以长序列的形式显示详细信息

          -d:(director),查看目录属性

          -h:(human-readable)以Kb、Mb或GB的方式显示文件的大小(更加人性化)

示例:

如上命令ls使用了-l选项,罗列出了根目录/下所有文件和子目录的内容,并且以长序列的形式呈现文件内容。在上图中,圈出了6个红框,它们各代表不同的含义:

dr-xr-xr-x:该部分包含两类信息,一个是首字符代表不同的文件类型,这里的d表示目录类型,还有其他常用字符,如l表示软链接类型、-表示二进制文件;另一个是所有者、所属组和其他用户的权限,每一类用户的权限占三个字符的位置,位置所对应的值分别是rwx,r代表可读权限、w代表可写权限、x代表可执行权限,没有对应权限时用横杆-表示;

5:代表文件所包含的硬链接数,关于硬链接的介绍会在后文中提到;

root root:分别代表文件的所有者所属组是谁,这里的root既是所有者又是所属组;

12288:代表文件的大小,单位为字节数,例如1024字节为1K;

9月 23 2011:代表文件的创建或修改时间;

Learn:代表文件的名称



命令名称cd

英文含义change directory

功能描述:切换目录,借助于cd命令,可以切换至任意的有效目录

语法:cd 目的地目录

特殊的cd用法:cd或者cd ~ ,可以回到当前用户的主目录,如root用户回到/root目录,其他普通用户则回到各自的家目录,如snake用户,将回到/home/snake目录下;

示例



命令名称pwd

英文含义print working directory

功能描述:打印当前工作目录

语法:pwd



命令名称touch

英文含义touch

功能描述:创建新的空文件,类似于Windows系统中新建文件(如新建txt文件、Word文件、Excel文件等)

语法:touch 文件名称

示例



命令名称mkdir

英文含义make director

功能描述:创建新目录(类似于在Windows系统中新建文件夹)

语法:mkdir 目录名称

示例



命令名称cp

英文含义copy

功能描述:复制目录或文件

语法:cp -R [源目录或文件] [目的地目录]

选项

          -R:(recursive) 表示递归复制目录(即目录内的子目录也一同复制)

          -f:(force) 提示是否强制覆盖(如果目的地目录中有相同名称的文件,通过-f选项进行覆盖前的提示)

          -n:(no overwite)不覆盖目的地目录中的同名称文件

示例

如上图所示,第一个框为两个目录内的test1文件(注意文件对于的创建时间哦);第二个框为复制命令;第三个框为复制并强制覆盖后的状态(被覆盖的文件时间发生了变化)。



命令名称mv

英文含义move

功能描述:移动或重命名目录与文件

语法:mv [源目录或文件] [目的地目录]

 示例

移动

重命名



命令名称rm

英文含义remove

功能描述:删除文件或目录

语法:rm -r [目录或文件]

选项

      -r(recursive)递归删除(如果需要删除非空目录,需要借助于-r选项,否则无法删除)

      -f(force) 强制删除(即不需要提示是否删除的消息,直接强制删除)

示例

删除文件,并发出提示信息


删除非空目录



命令名称cat

英文含义:concatenate and display files

功能描述:一次性查看文件的所有内容,对于小文件可以使用该命令,但大文件推荐使用more命令或less命令

语法:cat –[nb] 文件名称

选项

      -n(number)呈现行号(对于空号也会显示对应行号)

       -b(blank)呈现行号(对于空号不会显示对应的行号)

示例



命令名称more

英文含义more

功能描述:分页显示文件内容

语法:more [-num]文件名称

选项

       -num:显示每屏的行数,如-20,表示每屏呈现20行数据

示例


进入查看状态,利用键盘操作文件内容 :

       空格 显示下一屏

       b 回滚上一屏

       Enter 显示下一行

           退出查看状态



命令名称less

英文含义less

功能描述:分页显示文件内容,该命令的功能比more更强大,既支持上下翻屏,还支持搜索功能

语法: less[-mN] 文件名称

选项

       -m:显示已呈现内容的百分比(类似于more)

       -N:显示行号

 示例


进入查看状态,利用键盘操作文件内容: 

空格 显示下一屏

b 回滚上一屏

Enter 显示下一行

y 显示上一行

d 向下翻半屏

u 向上翻半屏

/目标字符串:向下搜索目标子串

?目标字符串:向上搜索目标子串

q     退出查看状态


示例

向下搜索iPhone,使用/iPhone方法



命令名称ln

英文含义link

功能描述:产生软链接文件(类似于Windows系统中的快捷键)或硬链接文件

语法:ln [-s] [源文件] [目标文件]

选项

       -s:创建软连接

无选项:表示创建硬链接

示例


通过ln也可以创建硬链接(不需要写-s选项),硬链接相当于是源文件的拷贝,所不同的是,硬链接相比于拷贝来说,还具有同步更新的功能。这样就可以起到备份的效果,但是硬链接不能跨文件系统(文件系统指的就是分区,如之前安装Linux系统时,我们分了根分区/、引导分区/boot和SWAP分区)。

示例

从上图可知,在原始文件中修改内容,就会影响到硬链接的内容,所以它具有实时备份的功能。


  • 结语



OK,关于文件级的常用命令就分享到这里,如果你有任何问题,欢迎在公众号的留言区表达你的疑问。同时,也欢迎各位朋友继续转发与分享文中的内容,让更多的人学习和进步


相关报道