Shell 工具和脚本
习题
1.阅读 man ls ,然后使用ls 命令进行如下操作:
–所有文件(包括隐藏文件)
–文件打印以人类可以理解的格式输出 (例如,使用454M 而不是 454279954)
–文件以最近访问顺序排序
–以彩色文本显示输出结果
–典型输出如下:
-rw-r--r-- 1 user group 1.1M Jan 14 09:53 baz
drwxr-xr-x 5 user group 160 Jan 14 09:53 .
-rw-r--r-- 1 user group 514 Jan 14 06:42 bar
-rw-r--r-- 1 user group 106M Jan 13 12:12 foo
drwx------+ 47 user group 1.5K Jan 12 18:08 ..
man ls
ls -lh --color=auto
2.编写两个bash函数 marco 和 polo 执行下面的操作。
–每当你执行 marco 时,当前的工作目录应当以某种形式保存,当执行 polo 时,无论现在处在什么目录下,都应当 cd 回到当时执行 marco 的目录。
–为了方便debug,你可以把代码写在单独的文件 marco.sh 中,并通过 source marco.sh命令,(重新)加载函数。
marco.sh
#! /bin/sh
marco(){
touch ~/test/inf.txt
echo "$(pwd)" > ~/test/inf.txt
echo "current work space is $(pwd)"
}
polo(){
echo "the inf is $(cat ~/test/inf.txt)"

这篇博客介绍了Shell脚本的实战练习,包括使用ls命令显示所有文件并按访问时间排序,编写bash函数marco和polo实现目录跳转,以及如何在脚本中捕获命令输出并记录错误。此外,还探讨了find命令与xargs的结合使用,用于压缩HTML文件,并提示了在MacOS上使用find和xargs的注意事项。最后,提出了一个进阶挑战,即找出文件夹中最近使用的文件。
最低0.47元/天 解锁文章
2万+

被折叠的 条评论
为什么被折叠?



