【面向就业的Linux的基础】从入门到熟练,探索Linux的秘密(十三)-常用的命令

上述是一些系统命令的基本练习,可以当做日常笔记学习收藏一下!!!

目录

前言

一、文件权限

二、文件检索

三、查看文件内容 

四、用户相关

五、工具 

 六、安装软件

七、作业​​​​​​​

总结


前言

上述是一些系统命令的基本练习,可以当做日常笔记学习收藏一下!!!


提示:以下是本篇文章正文内容,下面案例可供参考

一、文件权限

rwx分别对应可读、可写、可执行3种权限。 

修改文件权限

chmod
  • 给xxx添加可执行权限
chmod +x xxx
  • 去掉xxx的可执行权限
chmod -x xxx
  • 将xxx的权限改成777 
chmod 777 xxx
  • 递归修改整个文件夹的权限
chmod 777 xxx -R

二、文件检索

搜索某个文件路径下的所有*.py文件

find /path/to/directory/ -name '*.py'

从stdin中读入若干行数据,如果某行中包含xxx,则输出该行;否则忽略该行。

grep xxx

 crtl+d结束

统计行数、单词数、字节数

wc
  •  既可以从stdin中直接读入内容;也可以在命令行参数中传入文件名列表;
  • 统计行数
wc -l
  •  统计单词数
wc -w
  •  统计字节数
wc -c

 3个数字分别对应行数、单词数、字节数

直接接收键盘输入

 搜索当前目录下的所有文件,检索xxx字符串

ag xxx

 (注:会列出是哪个文件并且显示在该文件中所在行号)

 展示当前目录的文件结构

tree
  • 展示某个目录的文件结构
tree /path/to/directory/
  •  展示隐藏文件
tree -a

 分割一行内容

cut
  • 从stdin中读入多行数据
  • 输出PATH用:分割后第3、5列数据 
echo $PATH | cut -d ':' -f 3,5

  • 输出PATH用:分割后第3-5列数据 
echo $PATH | cut -d ':' -f 3-5

  • 输出PATH的第3、5个字符 
echo $PATH | cut -c 3,5

  • 输出PATH的第3-5个字符 
echo $PATH | cut -c 3-5

 

 将每行内容按字典序排序

sort
  •  可以从stdin中读取多行数据
  • 可以从命令行参数中读取文件名列表

将stdin中的数据用空格或回车分割成命令行参数

xargs
  •  统计当前目录下所有python文件的总行数
find . -name '*.py' | xargs cat | wc -l

三、查看文件内容 

 浏览文件内容

more
  • 回车:下一行
  • 空格:下一页
  • b:上一页
  •  q:退出

 与more类似,功能更全

less
  • 回车:下一行
  • y:上一行
  • Page Down:下一页
  • Page Up:上一页
  • q:退出

展示xxx的前3行内容

head -3 xxx
  • 同时支持从stdin读入内容 

展示xxx末尾3行内容

tail -3 xxx
  •  同时支持从stdin读入内容

 

四、用户相关

展示当前用户的历史操作。内容存放在~/.bash_history中

history

五、工具 

 计算md5哈希值

md5sum
  •  可以从stdin读入内容
  • 也可以在命令行参数中传入文件名列表;

统计command命令的执行时间

time command

 

交互式python3环境。可以当做计算器,或者批量管理文件

ipython3

  •  !表示执行shell脚本
! echo "Hello World"

 每0.1秒执行一次command命令

watch -n 0.1 command

 压缩文件

tar
  • 压缩 
tar -zcvf xxx.tar.gz /path/to/file/*
  •  解压缩
tar -zxvf xxx.tar.gz

查找文件xxx与yyy的不同点

diff xxx yyy

 六、安装软件

 以root身份执行command命令

sudo command

安装软件

apt-get install xxx

 安装python包

pip install xxx --user --upgrade

七、作业

创建好作业后,先进入文件夹/home/acs/homework/lesson_7/,然后:

(0) 进入homework_0文件夹,然后:
[1] 编写可执行shell脚本,文件名为mydu,使得在任意目录执行该脚本后,可以输出当前目录所占用的磁盘空间大小,格式化输出(例如 1K, 234M, 2G)。


[2] 修改环境变量PATH,使得在任意目录下输入mydu均可执行上述脚本。

(在./bashrc文件中声明一个全局变量PATH为mydu所在的文件路径,并且将PATH中已有的命令保存下来)


(1) 进入homework_1文件夹,然后:
[1] 给当前目录下的所有文件添加可读权限。


[2] 统计当前目录下共有多少个以.cpp结尾的文件,将结果写入ans.txt中。


(2) 进入homework_2文件夹,然后:
[1] 统计当前目录下所有cpp文件的总行数,将结果写入ans1.txt中。


[2] 遍历当前目录下所有py文件,统计共有多少行包含字符串thrift,将结果写入ans2.txt中。


(3) 进入homework_3文件夹,然后删除当前目录下的所有py文件。


(4) 进入homework_4文件夹,然后:
[1] 当前目录下包含一个文件scores.txt,文件中有若干行数据,每行数据包含用空格隔开的3个字段:姓名、数学成绩、算法成绩。
[2] 将scores.txt文件的内容以空格为分隔符分隔成3列,将第一列内容写入names.txt,第二列内容写入mathematics.txt,第三列内容写入algorithm.txt。


注意:scores.txt文件本身不要修改。
(5) 进入homework_5文件夹,然后:
[1] 当前目录下包含一个文件scores.txt,文件中有若干行数据,每行数据包含用空格隔开的3个字段:姓名、数学成绩、算法成绩。
[2] 将scores.txt文件的内容以空格为分隔符分隔成3列,将第一列内容按字典序从小到大排序后写入names.txt。


注意:scores.txt文件本身不要修改。
(6) 进入homework_6文件夹,然后将scores.txt文件的前5行写入top.txt,后4行写入bottom.txt。


(7) 进入homework_7文件夹,计算scores.txt文件的md5sum,将结果写入ans.txt。注意:ans.txt文件中只包含长度为32的md5sum,不包含其他内容。


(8) 进入homework_8文件夹,然后:
[1] 将dir_a文件夹压缩为project_a.tar.gz。


[2] 将project_b.tar.gz压缩文件解压到当前目录。
注意:不要删除dir_a文件夹和project_b.tar.gz文件。


(9) 进入homework_9文件夹,然后计算 2^112+3^78
2^112 + 3^78
,将结果写入ans.txt中。

 


总结

上述是一些系统命令的基本练习,可以当做日常笔记学习收藏一下!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/43631.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue2 、 vue3首屏优化,减少白屏时间

在第一帧的时候加载应该被用户看到的页面部分&#xff0c;剩下的逐步加载 1. 使用v-for来模拟页面有很多重组件 <template v-for"item in 100"><sub-home-page :key"item" v-if"defer(item)"></sub-home-page></templat…

简单仿写MVC

代码地址&#xff08;需要自取&#xff09;&#xff1a;mvc_Imitation: 简单仿写实现MVC (gitee.com) 项目目录 先把架子搭好 Controller注解 Documented Retention(RetentionPolicy.RUNTIME) Target(ElementType.TYPE) public interface Controller { }RequestMapping Do…

大模型lora微调中,rank参数代表什么,怎么选择合适的rank参数

在大模型的LoRA&#xff08;Low-Rank Adaptation&#xff09;微调中&#xff0c;rank参数&#xff08;秩&#xff09;是一个关键的超参数&#xff0c;它决定了微调过程中引入的低秩矩阵的维度。具体来说&#xff0c;rank参数r表示将原始权重矩阵分解成两个低秩矩阵的维度&#…

11.索引_创建不同种类索引(primary+unique+复合....)

索引Index 文章目录 索引Index一、 索引简介1.定义2.索引分类2、索引优缺点3.索引关键字的选取原则 二、创建索引-(创建不同种类索引,删除)-索引失效 一、 索引简介 官网 1.定义 索引是将关键字数据以某种数据结构的方式存储到外存&#xff0c;用于提升数据的检索性能&#…

互助学习平台小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;学生管理&#xff0c;课程信息管理&#xff0c;课程分类管理&#xff0c;课程评价管理&#xff0c;学习计划管理&#xff0c;留言板管理 微信端账号功能包括&#xff1a;系统首页&#xff0c;课程信息…

Databend 开源周报第 152 期

Databend 是一款现代云数仓。专为弹性和高效设计&#xff0c;为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务&#xff1a;https://app.databend.cn 。 Whats On In Databend 探索 Databend 本周新进展&#xff0c;遇到更贴近你心意的 Databend。 支持内置 UDFs …

数学建模美赛入门

数学建模需要的学科知识 高等数学线性代数 有很多算法的掌握是需要高等数学和线代的相关知识 如&#xff1a;灰色预测模型需要微积分知识&#xff1b;神经网络需要用到导数知识&#xff1b;图论和层次分析法等都需要用到矩阵计算的相关知识等&#xff1b; 概率论与数理统计&am…

忘记Apple ID密码怎么退出苹果ID账号?

忘记Apple ID密码怎么退出账号&#xff1f;Apple ID对每个苹果用户来说都是必不可少的&#xff0c;没有它&#xff0c;用户就不能享受iCloud、App Store、iTunes等服务。苹果手机软件下载、丢失解锁、恢复出厂设置等都需要使用Apple ID。如果忘记Apple ID 密码&#xff0c;这会…

Flutter 开启混淆打包apk,并反编译apk确认源码是否被混淆

第一步&#xff1a;开启混淆并打包apk flutter build apk --obfuscate --split-debug-info./out/android/app.android-arm64.symbols 第二步&#xff1a;从dex2jar download | SourceForge.net 官网下载dex2jar 下载完终端进入该文件夹&#xff0c;然后运行以下命令就会在该…

分享五款软件,成为高效生活的好助手

​ 给大家分享一些优秀的软件工具,是一件让人很愉悦的事情&#xff0c;今天继续带来5款优质软件。 1.图片放大——Bigjpg ​ Bigjpg是一款图片放大软件&#xff0c;采用先进的AI算法&#xff0c;能够在不损失图片质量的前提下&#xff0c;将低分辨率图片放大至所需尺寸。无论…

Windows10 企业版 LTSC 2021发布:一键点击获取!

Windows10企业版 LTSC 2021是微软发布的长达5年技术支持的Win10稳定版本&#xff0c;追求稳定的企业或者个人特别适合安装该系统版本。该版本离线制作而成&#xff0c;安全性高&#xff0c;兼容性出色&#xff0c;适合新老机型安装&#xff0c;力求带给用户更稳定、高效的操作系…

兼容性问题---H5屏幕适配方案

对前端计量单位的理解&#xff1a;px、vw、rem、em、%等&#xff1b; https://www.tiangong.cn/chatShare?share_ide3a157fe37e041de95a2 前端开发中常见的计量单位主要包括以下几种&#xff1a;px (像素): 屏幕显示的最小单位&#xff0c;一个像素表示显示器上一个点的颜色。…

【第24章】MyBatis-Plus之SQL注入器

文章目录 前言一、概述1. 使用场景2. 功能 二、注入器配置三、自定义全局方法攻略1. 定义SQL2. 注册自定义方法3.定义BaseMapper4.配置SqlInjector 四、注意事项五、更多示例六、实战1. 定义SQL2. 注册自定义方法3.定义BaseMapper4.配置SqlInjector5. 测试类6. 结果 总结 前言 …

QT调节屏幕亮度

1、目标 利用QT实现调节屏幕亮度功能&#xff1a;在无屏幕无触控时&#xff0c;将屏幕亮度调低&#xff0c;若有触控则调到最亮。 2、调节亮度命令 目标装置使用嵌入式Linux系统&#xff0c;调节屏幕亮度的指令为&#xff1a; echo x > /sys/class/backlight/backlight/…

Linux开机自启动连接wifi

&#x1f308;个人主页&#xff1a;Rookie Maker &#x1f525; 系列专栏&#xff1a;Linux &#x1f3c6;&#x1f3c6;关注博主&#xff0c;随时获取更多关于IT的优质内容&#xff01;&#x1f3c6;&#x1f3c6; &#x1f600;欢迎来到我的代码世界~ &#x1f601; 喜欢的…

【技术支持】npm镜像设置

临时设置 npm install <package> --registryhttps://registry.npmmirror.com/永久设置 npm config set registry https://registry.npmmirror.com/获取设置值 npm config get registry退回官方 npm config set registry https://registry.npmjs.org/

P8306 【模板】字典树

题目描述 给定 n 个模式串 s1​,s2​,…,sn​ 和 q 次询问&#xff0c;每次询问给定一个文本串 ti​&#xff0c;请回答 s1​∼sn​ 中有多少个字符串 sj​ 满足 ti​ 是 sj​ 的前缀。 一个字符串 t 是 s 的前缀当且仅当从 s 的末尾删去若干个&#xff08;可以为 0 个&#…

Kubernetes管理神器-插件管理器Krew

Kubernetes管理神器-插件管理器Krew Krew是Kubernetes的一个插件管理器&#xff0c;它允许用户搜索、安装和管理kubectl插件。通过Krew&#xff0c;用户可以方便地扩展kubectl的功能&#xff0c;使用社区提供的各种插件。 类似于apt,dnf,brew等工具&#xff0c;截至目前&…

环境快照:精通Conda中的conda env export命令

环境快照&#xff1a;精通Conda中的conda env export命令 引言 在科学计算和软件开发中&#xff0c;能够准确地复制和共享工作环境是至关重要的。Conda提供了conda env export命令&#xff0c;允许用户导出当前环境的配置&#xff0c;包括已安装的包及其版本。这使得环境的复…

2.贪心算法.基础

2.贪心算法.基础 基础知识题目1.分发饼干2.摆动序列3.最大子序和4.买股票的最佳时机24.2.买股票的最佳时机5.跳跃游戏5.1.跳跃游戏26.K次取反后最大化的数组和7.加油站8.分发糖果 基础知识 什么是贪心? 贪心的本质是选择每一阶段的局部最优&#xff0c;从而达到全局最优。 贪…