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

2023-12-17 14:59

本文主要是介绍大数据之脚踏实地学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 显示下一行

       q     退出查看状态

 

命令名称: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,关于文件级的常用命令就分享到这里,如果你有任何问题,欢迎在公众号“数据分析1480”的留言区表达你的疑问。同时,也欢迎各位朋友继续转发与分享文中的内容,让更多的人学习和进步。

这篇关于大数据之脚踏实地学03--Linux的常用文件级命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/504804

相关文章

MySQL 删除数据详解(最新整理)

《MySQL删除数据详解(最新整理)》:本文主要介绍MySQL删除数据的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录一、前言二、mysql 中的三种删除方式1.DELETE语句✅ 基本语法: 示例:2.TRUNCATE语句✅ 基本语

golang中reflect包的常用方法

《golang中reflect包的常用方法》Go反射reflect包提供类型和值方法,用于获取类型信息、访问字段、调用方法等,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值... 目录reflect包方法总结类型 (Type) 方法值 (Value) 方法reflect包方法总结

C# 比较两个list 之间元素差异的常用方法

《C#比较两个list之间元素差异的常用方法》:本文主要介绍C#比较两个list之间元素差异,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. 使用Except方法2. 使用Except的逆操作3. 使用LINQ的Join,GroupJoin

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.

python常用的正则表达式及作用

《python常用的正则表达式及作用》正则表达式是处理字符串的强大工具,Python通过re模块提供正则表达式支持,本文给大家介绍python常用的正则表达式及作用详解,感兴趣的朋友跟随小编一起看看吧... 目录python常用正则表达式及作用基本匹配模式常用正则表达式示例常用量词边界匹配分组和捕获常用re

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

MyBatisPlus如何优化千万级数据的CRUD

《MyBatisPlus如何优化千万级数据的CRUD》最近负责的一个项目,数据库表量级破千万,每次执行CRUD都像走钢丝,稍有不慎就引起数据库报警,本文就结合这个项目的实战经验,聊聊MyBatisPl... 目录背景一、MyBATis Plus 简介二、千万级数据的挑战三、优化 CRUD 的关键策略1. 查

python实现对数据公钥加密与私钥解密

《python实现对数据公钥加密与私钥解密》这篇文章主要为大家详细介绍了如何使用python实现对数据公钥加密与私钥解密,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录公钥私钥的生成使用公钥加密使用私钥解密公钥私钥的生成这一部分,使用python生成公钥与私钥,然后保存在两个文

mysql中的数据目录用法及说明

《mysql中的数据目录用法及说明》:本文主要介绍mysql中的数据目录用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、版本3、数据目录4、总结1、背景安装mysql之后,在安装目录下会有一个data目录,我们创建的数据库、创建的表、插入的

在Linux终端中统计非二进制文件行数的实现方法

《在Linux终端中统计非二进制文件行数的实现方法》在Linux系统中,有时需要统计非二进制文件(如CSV、TXT文件)的行数,而不希望手动打开文件进行查看,例如,在处理大型日志文件、数据文件时,了解... 目录在linux终端中统计非二进制文件的行数技术背景实现步骤1. 使用wc命令2. 使用grep命令