大数据之路系列之Linux命令(01)
大数据之路系列之Linux命令(01)
提示:常用Linux命令合集
第一章 Linux命令
Linux命令
- 大数据之路系列之Linux命令(01)
- 一、文件查看
- 1.查看当前目录
- 2.列出所有文件
- 3.ll(ls -l缩写) 列出当前目录下的文件(带文件信息)
- 4.列出当前目录下所有文件包含隐藏文件
- 5.ll --help 是查询ll的帮助文档,--help是帮助命令
- 二、创建、重命名文件\文件夹
- 1.touch filename 创建空文件
- 2.mkdir 创建目录
- 3.mkdir -p 目标目录存在也不报错
- 4.mv 重命名文件\文件夹
- 4.find 查找文件
- 三、链接文件
- 1.硬链接
- 2.软连接
- 四、切换目录
- 1.cd
- 五、删除文件\文件夹(目录)
- 1.删除文件\文件夹(目录)
- 六、复制\粘贴\剪切\移动
- 1.复制文件
- 2.复制文件夹
- 3.mv 移动(剪切)文件或目录
- 4.远程复制
- 七、chmod 分配权限
- 1.复制文件
- 八、内容查看
- 1.cat 显示文本内容
- 2.more分屏显示
- 3.less分屏显示
- 4.head
- 5.tail
- 九、压缩、解压
- 1.tar格式
- 2.gzip格式
- 3.bzip2格式
- 十、输出及显示
- 1.echo
- 2.重定向
- 3.|| &&
- 十一、软件安装和卸载
- 1.yum
- 十二、查看操作历史
- 1.history命令
- 十三、磁盘使用情况
- 1.df命令
- 十四、查看内存使用情况
- 1.df命令
- 十五、关机重启快捷命令
- 1.关机重启
- 十六、文件编辑
- 1.vi命令
- 十七、文件内容统计相关命令
- 1.wc:统计字数相关信息
- 十八、文件编辑
- 1.sort排序
- 2.wc
- 3.uniq
- 4.tree
- 5.split
- 十九、Linux高级命令之日期相关
- 1.date命令
- 二十、Linux进程相关命令
- 1.ps/netstat/jps/kill
- 1.network
- 二十二、Linux三剑客
- 1.grep:查找
- 2.sed:查找
- 3.awk:文本分析
- 总结
一、文件查看
1.查看当前目录
pwd
2.列出所有文件
ls
3.ll(ls -l缩写) 列出当前目录下的文件(带文件信息)
ll
or
ls -l
4.列出当前目录下所有文件包含隐藏文件
ll -a
5.ll --help 是查询ll的帮助文档,–help是帮助命令
ll --help
二、创建、重命名文件\文件夹
1.touch filename 创建空文件
[root@localhost ~]# touch hello.txt
[root@localhost ~]# ll
total 4
-rw-------. 1 root root 1243 Mar 28 20:59 anaconda-ks.cfg
-rw-r--r--. 1 root root 0 Mar 28 22:21 hello.txt
2.mkdir 创建目录
[root@localhost ~]# mkdir abc
[root@localhost ~]# ll
total 4
drwxr-xr-x. 2 root root 6 Mar 28 22:22 abc
-rw-------. 1 root root 1243 Mar 28 20:59 anaconda-ks.cfg
-rw-r--r--. 1 root root 0 Mar 28 22:21 hello.txt
3.mkdir -p 目标目录存在也不报错
提示:mkdir -p 目标目录存在也不报错 当我们在创建目录时不确定这个目录是否已存在的时候,可以使用-p参数, 就算目录已存在也不会报错,如果不指定-p参数会报错,会提示目录已存在 创建目录abc
[root@localhost ~]# mkdir -p abc
[root@localhost ~]# ll
total 4
drwxr-xr-x. 2 root root 6 Mar 28 22:22 abc
-rw-------. 1 root root 1243 Mar 28 20:59 anaconda-ks.cfg
-rw-r--r--. 1 root root 0 Mar 28 22:21 hello.txt
[root@localhost ~]# mkdir abc
mkdir: cannot create directory ‘abc’: File exists
4.mv 重命名文件\文件夹
提示:mkdir -p 目标目录存在也不报错 当我们在创建目录时不确定这个目录是否已存在的时候,可以使用-p参数, 就算目录已存在也不会报错,如果不指定-p参数会报错,会提示目录已存在 创建目录abc
[root@localhost ~]# mv abc abx
4.find 查找文件
find / -name 'in*' 模糊搜索文件名称
find / -type f -size +100M 查询大于100M的文件
三、链接文件
1.硬链接
提示:linux有两种链接:硬链接、符号(软)链接 软链接功能类似类似于windows的快捷方式,主要用于节省磁盘空间 首先看硬链接:硬链接相当于对原始文件的一个复制,不能对目录使用硬链接。 命令如下: ln hello.txt hlink
[root@localhost ~]# ln hello.txt hlink
[root@localhost ~]# ll
total 4
drwxr-xr-x. 2 root root 6 Mar 28 22:22 abx
-rw-------. 1 root root 1243 Mar 28 20:59 anaconda-ks.cfg
-rw-r--r--. 2 root root 0 Mar 28 22:21 hello.txt
-rw-r--r--. 2 root root 0 Mar 28 22:21 hlink
2.软连接
提示:需要添加-s,相当于快捷方式,不能删除原文件
[root@localhost ~]# ln -s hello.txt vlink
[root@localhost ~]# ll
total 4
drwxr-xr-x. 2 root root 6 Mar 28 22:22 abx
-rw-------. 1 root root 1243 Mar 28 20:59 anaconda-ks.cfg
-rw-r--r--. 2 root root 0 Mar 28 22:21 hello.txt
-rw-r--r--. 2 root root 0 Mar 28 22:21 hlink
lrwxrwxrwx. 1 root root 9 Mar 28 22:33 vlink -> hello.txt
四、切换目录
1.cd
提示:cd .. 去上级目录 、cd xxx/xxx 直接跳转到某个目录
[root@localhost /]# pwd
/
[root@localhost ~]# cd /bin/
[root@localhost bin]# pwd
/bin
五、删除文件\文件夹(目录)
1.删除文件\文件夹(目录)
提示:rm 删除文件,但是会有提示确认对话,输入y确认删除!rm -r 删除目录,需要确认。rm -rf 递归删除目录及其文件(慎用)
[root@localhost ~]# rm -rf abx
六、复制\粘贴\剪切\移动
1.复制文件
提示:复制hello.txt文件,复制后的文件名为hello-bak.txt
[root@localhost ~]# cp hello.txt hello-bak.txt
2.复制文件夹
提示:复制目录,需要指定r参数
[root@localhost ~]# cp -r abc xyz
3.mv 移动(剪切)文件或目录
提示:将目录xyz移动到目录abc下面
[root@localhost ~]# mv xyz abc
4.远程复制
提示:scp /root/hello.txt node02:/root 将文件复制到node02服务器的root目录下
提示:显示进度在scp后添加-v 复制目录在scp后添加-r 静默复制模式在scp后添加-q
[root@localhost ~]# scp -rq /root/hello.txt node02:/root/
提示:scp hello.txt node02:$PWD 将文件复制到node02服务器的当前命令目录下
[root@localhost ~]# scp -rq /root/hello.txt node02:$PWD
七、chmod 分配权限
1.复制文件
提示:chmod u+x xxx.txt 给当前所有者添加执行权限【x表示是执行权限】 chmod 777 xxx.txt 添加rwxrwxrwx权限 相当于给xxx.txt添加777权限
[root@localhost ~]# chmod 777 hello.txt
八、内容查看
1.cat 显示文本内容
提示:通过cat会一次显示所有的内容,适合查看内容较少的文本文件
cat -n xx.log 展示行号 空行也会展示行号
cat -b xx.log 展示行号 空行不展示
2.more分屏显示
提示:用一次显示一屏,没有显示完时最后一行显示进度。回车显示下一行,按b显示上一页,空格显示下一页,q退出,适合大文件的分页展示
[root@localhost ~]# more anaconda-ks.cfg
3.less分屏显示
提示:可用于分屏展示文件内容,每次只展示一页内容 适合查看内容较多的文本文件
less -N xx.log 分屏展示内容,适合大文件
操作键:空格键 展示下一屏幕,enter键 下一行, b上一页 f下一页 q退出 /xx 搜索xx字符串
关键词搜索后, n下一个关键词 N上一个关键词
4.head
查看文档的前几行数据
head -n 10 xx.log
5.tail
查看文档的后几行数据,适用于动态日志查询
tail -10 xx.log 查看文档后10条数据
tail -10f xx.log 动态查看文档后10条数据
九、压缩、解压
1.tar格式
文件格式是 xx.tar
压缩
tar -cvf 打包名.tar 被打包的目录
tar -cvf 打包名.tar 被打包文件 被打包文件
解压
tar -xvf 打包名.tar
tar -xvf 打包名.tar -C /xx/xx
2.gzip格式
Linux里面最常用的文件格式就是xx.tar.gz
-z 调用zip格式的压缩命令 -x 解压缩 -c 压缩 -v 打印详细信息 -f 指定文件名称
压缩
tar -zcvf 打包压缩文件名 文件/目录
解压
tar -zxvf 打包文件 -C 目标目录
3.bzip2格式
文件格式是 xx.tar.bz2
压缩
tar -jcvf 打包压缩文件.tar.bz2 被压缩的文件/目录
解压
tar -jxvf 打包文件.tar.bz2 -C 目标目录
十、输出及显示
1.echo
echo “hello\t\t world!” 不解析转义字符
echo -e “hello\t\t world!” 解析转义字符
echo $PATH 输出环境变量
2.重定向
通过 命令 > 文件 将命令的成功结果 覆盖 指定文件内容
通过 命令 >> 文件 将命令的成功结果 追加 指定文件的后面
通过 命令 &>> 文件 将 命令的失败结果 追加 指定文件的后面nohup和&:可以让程序一直在后台运行
/dev/null:是linux中的黑洞,任何数据扔进去都找不到了
>/dev/null:把标准输出重定向到黑洞中,表示脚本的输出信息不需要存储
2>&1 :表示是把标准错误输出重定向到标准输出中
将错误转到正常中,一起丢入黑洞
nohup hello.sh >/dev/null 2>&1 &
在nohup中的应用,nohup中1是正常 /dev/null代表黑空 1>/dev/null 代表成功数据丢到黑洞里面
2代表异常 追加到错误文件里面
nohup java -jar ccm_load.jar 1>/dev/null 2>>error.txt &
3.|| &&
命令1 && 命令2 如果命令1执行成功,就执行命令2的效果
命令1 || 命令2 如果命令1执行失败,就执行命令2的效果
十一、软件安装和卸载
1.yum
在线安装,使用yum,使用yum 安装的好处在于可以自动安装软件需要的依赖包
安装
yum install -y 安装
升级
yum update 不跟则更新全部
查找和显示
yum info 显示包信息
yum list 不跟则显示已安装或可安装包
删除程序
yum remove
清除缓存
yum clean all 清除所有缓存(包含文件、旧软件)
十二、查看操作历史
1.history命令
history保留了最近执行的命令记录,默认可以保留1000
history N 显示最近N条命令
history -c 清除所有的历史记录
history -w xxx.txt 保存历史记录到文本xxx.txt
十三、磁盘使用情况
1.df命令
使用df命令查看硬盘使用情况
df -h
十四、查看内存使用情况
1.df命令
free 查看内存和交换空间的使用情况
free -m:显示内存单位为MB
free -h:根据值的大小,显示易于识别的单位
十五、关机重启快捷命令
1.关机重启
shutdown -h now 关机
reboot -h now 重启
exit 退出当前登录状态
十六、文件编辑
1.vi命令
在命令模式下按shift和: ,最后输入wq 保存退出
q是quit的缩写,表示退出的意思 不保存
:/xx 查找字段
:/30 跳到30行
十七、文件内容统计相关命令
1.wc:统计字数相关信息
[root@localhost ~]# cat hello.txt
hello world!
hello world!
hello world!
hello world!
hello world!
hello world!
-c是表示获取文件内容的字节数量
-m表示获取字符数量
-l表示是行数
-L是获取最长的一行内容的长度
-w 表示文件中单词的个数,默认使用空白符切割
[root@localhost ~]# wc -c hello.txt
78 hello.txt
[root@localhost ~]# wc -m hello.txt
78 hello.txt
[root@localhost ~]# wc -l hello.txt
6 hello.txt
[root@localhost ~]# wc -L hello.txt
12 hello.txt
[root@localhost ~]# wc -w hello.txt
12 hello.txt
十八、文件编辑
1.sort排序
[root@localhost ~]# sort -n num.txt
1
2
3
9
10
[root@localhost ~]# sort -nr num.txt
10
9
3
2
1
2.wc
显示指定文件 字节数 单词数 行数等信息 wc 4.txt
查看目录下有多少个子文件 ls /etc | wc -w
3.uniq
uniq命令用于检查以及删除文本文件中重复的行,一般与sort命令结合使用
cat 5.txt | sort | uniq 去重
不但去重还要统计次数 cat -c
4.tree
通过tee可以将命令结果通过管道输出到多个文件中
将去重结果放在 a.txt b.txt c.txt中 cat 1.txt | sort | uniq | tee a.txt b.txt c.txt
5.split
通过split命令将大文件切分成若干个小文件
split -b 10k 文件
split -l 1000 文件
十九、Linux高级命令之日期相关
1.date命令
时间格式化
[root@localhost ~]# date +"%Y-%m-%d %H:%M:%S"
2026-03-29 21:06:45
设置时间
[root@localhost ~]# date --date="2026-01-01 00:00:00"
Wed Jan 1 00:00:00 CST 2026
设置时间为一天前
[root@localhost ~]# date --date="1 days ago"
Sat Mar 28 21:36:37 CST 2026
设定时间一天前并且格式化时间
[root@localhost ~]# date --date="1 days ago" +%Y-%m-%d
2026-03-28
二十、Linux进程相关命令
1.ps/netstat/jps/kill
ps:显示进程信息
ps -ef | grep java
netstat:显示端口信息
netstat -anp | grep 22 显示端口信息
jps:显示Java进程信息
kill命令 kill -9 PID
1.network
service network status 查看网络状态
service network stop 停止网络状态
service network start 启动网络状态
service network restart 重启网络状态
二十二、Linux三剑客
1.grep:查找
查询文件里面还有abc的内容
grep abc hello.txt
也可以是正则表达式
grep ^a hello.txt
无视大小写查找
grep -i ABC hello.txt
快速在文件中定位字符串所在的位置
grep -i ABC -n hello.txt
在文本中找x 高亮显示
grep x xx.log --color
两次查询 第二次加-v
ps -ef | grep java | grep -v grep
2.sed:查找
hello.txt文件的第二行内容下面添加一行haha
sed '2a\haha' hello.txt 指定行的前面插入一行
sed '1i\haha' hello.txt 所以说这个a其实表示是append的意思,在指定行后面追加内容
i表示是insert的意思,是在指定行的前面插入内容$代表最后一行,在最后一行的前面插入一行
sed '$i\haha' hello.txt 删除操作,有时候我们想要删除文件中多余的行,这个时候只需要使用参数d就可以搞定
sed '7d' hello.txt 删除最后一行
sed '$d' hello.txt 所有行中的每行第一个l替换成a
sed 's/l/a/1' hello.txt 所有行中的每行第二个l替换成a
sed 's/l/a/2' hello.txt所有行中的每行所有l替换成a
sed 's/l/a/g' hello.txt s前面加数字是指定行
第二行中的所有l替换成a
sed '2s/l/a/g' hello.txt 所有的操作不加-i 不生效,只是展示效果,如果需要生效加-i
sed -i '2s/l/a/g' hello.txt
3.awk:文本分析
变量从1开始,
$1表示是文本中的第1个数据字段
$2表示是文本中的第2个数据字段
以此类推。
还有一个特殊的 $0 它代表整个文本行的内容
[root@localhost ~]# cat hello.txt
hello world!
heaao worad!
hello world!
hello world!
hello world!
hello world!
abc
[root@localhost ~]# awk '{print $1}' hello.txt
hello
heaao
hello
hello
hello
hello
abc
[root@localhost ~]# awk '{print $2}' hello.txt
world!
worad!
world!
world!
world!
world![root@localhost ~]# awk '{print $0}' hello.txt
hello world!
heaao worad!
hello world!
hello world!
hello world!
hello world!
abc
指定字段分隔符,通过-F 参数
awk -F: ‘{print $1}’ /etc/passwd
总结
提示:这里对文章进行总结:
例如:跳转占位符
大数据之路系列之Linux命令(01)相关推荐
- 卷皮网大数据之路-《猫友会大数据系列分享》
猫友会希望建立更多高质量垂直细分社群,本次是"大数据学习交流付费群"的第一次分享. "大数据学习交流付费群"由猫友会联合,斗鱼数据平台总监吴瑞诚,卷皮BI技术总 ...
- 大数据-学习实践-1相关Linux
大数据-学习实践-1相关Linux (大数据系列) 文章目录 大数据-学习实践-1相关Linux 1知识点 2具体内容 2.1安装.使用 2.2高级命令 2.2.1文件 2.2.2日期 2.2.3进程 ...
- 大数据入门基础系列之初步认识大数据生态系统圈(博主推荐)
不多说,直接上干货! 之前在微信公众平台里写过 大数据入门基础系列之初步认识hadoop生态系统圈 http://mp.weixin.qq.com/s/KE09U5AbFnEdwht44FGrOA 大 ...
- 大数据入门教程系列之Hive内置函数及自定义函数
本篇文章主要介绍Hive内置函数以及自定义UDF函数和UDFT函数,自定义UDF函数通过一个国际转换中文的例子说明. 操作步骤: ①.准备数据和环境 ②.演示Hive内置函数 ③.自定义UDF函数编写 ...
- 《大数据之路:阿里巴巴大数据实践》-第3篇 数据管理篇 -第15章 数据质量
<大数据之路:阿里巴巴大数据实践>系列丛书 第1章 总述 第1篇 数据技术篇 第2章 日志釆集 第3章 数据同步 第4章 离线数据开发 第5章 实时技术 第6章 数据服务 第 ...
- 大数据之路读书笔记-01总述
大数据之路读书笔记-01总述 此系列文章为大数据之路的读书笔记,如侵可删 2014 年,马云提出,"人类正从 IT 时代走向 DT 时代 "如果说IT时代是以自我控制.自我管理为主 ...
- 《大数据之路:阿里巴巴大数据实践》-第2篇 数据模型篇 -第8章 大数据领域建模综述
<大数据之路:阿里巴巴大数据实践>系列丛书 第1章 总述 第1篇 数据技术篇 第2章 日志釆集 第3章 数据同步 第4章 离线数据开发 第5章 实时技术 第6章 数据服务 第 ...
- 【数仓】离线和实时数据开发-《大数据之路》读书笔记
今天更新<大数据之路>第 4 章和第 5 章,离线数据开发以及实时技术.关注公众号回复 802 获取 pdf.其他章节更新中.可以点击这里查看其他章节. 前面的文章讲述了日志文件和 ...
- java程序员的大数据之路(13):Pig入门
Pig简介 Pig为大型数据集的处理提供了更高层次的抽象. Pig包括两部分: 用于描述数据流的语言,称为Pig Latin. 用于运行Pig Latin程序的执行环境.当前有两个环境:单JVM中的本 ...
最新文章
- 40.多进程同步--锁--多把锁
- nag在逆向中是什么意思_OD 实验(四) - 去除 NAG 窗口的几种方法
- 集合视图控制器(CollectionViewController) 、 标签控制器(TabBarController) 、 高级控件介绍...
- SpringCloud |第二篇: 服务消费者(Ribbon)
- 实战:分布式锁详解与代码
- 史上最大内存!曝iPhone 14 Pro系列运行内存将增至8GB
- 小米 10 年再创业,高端 5G 手机和 AIoT 有多少机会?
- iOS底层探索之多线程(七)—GCD源码分析(死锁的原因)
- 无码编程:无代码软件开发大行其道
- html图片表情怎么搞,学习使用HTML5/CSS3来制作简单的表情动画
- AI 新技术革命将如何重塑就业和全球化格局?深度解读 UN 报告(上篇)
- 黑马程序员————IO流------(3)
- 【 MATLAB 】poly 函数介绍
- 使用CSS3动画做出光芒万丈的效果
- 美国访学J类签证费涨价15%|5月30日生效
- js 正则替换隐藏部分身份证或手机号以及隐藏部分名字
- JQuery最全常用方法指南
- C++图像处理 -- 图像合成
- 【柔性制造】工业机器人实现柔性制造离不开的核心部件
- Pulsar Modular All Plug-Ins for mac 音频延迟插件