Linux-Shell(十)

一、

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

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

# $ vim mydu

#! /bin/bash

du -sh

#修改环境变量PATH,使得在任意目录下输入mydu均可执行上述脚本
# 在 ~/.bashrc 文件末尾添加一行:
export PATH=/home/acs/homework/lesson_7/homework_0:$PATH
#应用该修改
source ~/.bashrc

二、

1、给当前目录下的所有文件添加可读权限

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

#添加可读权限

chmod +r * -R

#统计行数
find . -name '*.cpp' | wc -l > ans.txt

三、

1、统计当前目录下的所有cpp文件的总行数,将结果写入ans1.txt中

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

#统计cpp文件总行数

find . -name '*.cpp' | xargs cat | wc -l > ans1.txt

#统计py文件包含thrift字符串的总行数

find . -name '*.py' | xargs cat |grep thrift | wc -l > ans2.txt

四、

删除当前目录下的所有py文件

#删除当前目录下的所有文件

find . -name '*.py' | xargs rm

五、

1、当前目录下包含一个文件scores.txt,文件中有若干行数据,每行数据包含用空格隔开的3个字段:姓名、数学成绩、算法成绩

2、将scores.txt文件的内容以空格为分隔符分割成3列,将第一列内容写入names.txt,第二列内容写入mathmatics.txt,第三列内容写入algorithm.txt

! 注意:scores.txt 文件本身不要修改

#! /bin/bash

cat scores.txt | cut -d ' ' -f 1 > names.txt
cat scores.txt | cut -d ' ' -f 2 > mathematics.txt
cat scores.txt | cut -d ' ' -f 3 > algorithm.txt 

六、

1、当前目录下包含一个文件scores.txt,文件中有若干行数据,每行数据包含用空格隔开的3个字段:姓名、数学成绩、算法成绩

2、将scores.txt文件的内容以空格为分隔符分割成3列,将第一列内容按字典序从小到大排序后写入names.txt

!注意scores.txt本身不要修改

#! /bin/bash

cat scores.txt | cut -d ' ' -f 1 | sort > names.txt

七、

将scores.txt文件的前5行写入top.txt,后4行写入bottom.txt

#! /bin/bash

#选取前5行
head -5 scores.txt > top.txt

#选取后4行
tail -4 scores.txt > bottom.txt

八、

计算scores.txt文件的md5sum,将结果写入ans.txt

!ans.txt文件中只包含长度为32的md5sum,不包含其他内容

#! /bin/bash

md5sum scores.txt | cut -c 1-32 > ans.txt

九、

1、将dir_a文件夹压缩为project_a.tar.gz

2、将project_b.tar.gz压缩文件解压到当前目录

#! /bin/bash

#压缩文件
tar -zcvf project_a.tar.gz dir_a/*

#解压文件
tar -zxvf project_b.tar.gz

十、

计算2的112次方+3的78次方,将结果写入ans.txt中

ipython3  #打python3交互环境

res = 2**112 + 3**78

! echo $res > ans.txt  # !表示后面的内容是shell脚本

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值