前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >几个Linux命令及脚本使用中的奇淫巧技

几个Linux命令及脚本使用中的奇淫巧技

作者头像
耕耘实录
发布2018-12-20 15:50:39
6260
发布2018-12-20 15:50:39
举报
文章被收录于专栏:耕耘实录耕耘实录

版权声明:本文为耕耘实录原创文章,各大自媒体平台同步更新。欢迎转载,转载请注明出处,谢谢

实例1.创建一个别名,删除原始文件,同时在用户的home目录下backup中保存副本。

代码语言:javascript
复制
#/bin/bash
cp $@ ~/backup && rm -rf $@

实例2.Fork炸弹。

代码语言:javascript
复制
 :(){ :|: &  };:

执行之后显示如下,一会儿后资源耗尽。

代码语言:javascript
复制
[root@gysl ~]# :(){ :|: & };:
[1] 1291
[root@gysl ~]# -bash: fork: retry: 资源暂时不可用
-bash: fork: retry: 没有子进程
-bash: fork: retry: 没有子进程

实例3.生成一个11位的随机密码,包括大小写字母、数字及特殊(/与+)符号。

代码语言:javascript
复制
openssl rand -base64 200|cut -b 1-11|head -n 1

实例4.不切换当前工作目录,使用cd命令并显示切换后目标目录的内容。

代码语言:javascript
复制
(cd /bin;ls)

本例子中,使用()定义了一个子shell,对当前的shell并无影响,所有改变仅限于子shell中,上述操作在某些场景中特别有用。

实例5.为防止当前工作终端退出造成正在执行的任务被中断,我们可以在屏幕上随机打印一些数字字母。下面命令用来装X有时候也挺有用。

代码语言:javascript
复制
while true ; do display=`echo $RANDMOM|md5sum` ; echo $display $display ; done

实例6.使用一条命令随机创建一个指定格式的文件或目录。

代码语言:javascript
复制
mktemp gyslXXX
mktemp -d gyslXXX

此命令一般不常见,gysl为指定的前缀,之后的大写X为占位符,这些大写的X不能位于名称最前面,并且至少保证存在3个X占位符,这些大写X在创建新文件和新目录是会被随机字母所替代。如果直接执行mktemp命令,那么会在本机的/tmp目录下创建临时文件或目录。执行该命令创建的文件默认权限为:600,目录权限为700,并不受umask所影响,这一点需要特别注意。 实例7.删除文本中的空白行。

代码语言:javascript
复制
sed -i '/^$/d' a.txt

实现这个功能的命令很多,可能这是最简单一个命令了。

实例8.通过正则表达式的匹配,将匹配内容使用&替代,按照指定格式输出。

代码语言:javascript
复制
echo "My name is Ivan."|sed 's/\w\+/[&]/g'
echo "My name is Ivan. My phone number is 010-87654321"|sed 's/[a-zA-Z0-9]\+/{&}'

上面例子分别匹配出了目标字符串中的单词(包括数字和字母),并把匹配内容分别使用[]和{}包起来。 实例9.通过sed命令直接编辑文本时,在编辑之前先将源文件进行备份。

代码语言:javascript
复制
sed -i.1010.bak 's/ChatDevOps/gysl/' test.txt

执行完该命令后,源文件里面的每一行第一个匹配的ChatDevOps替换为gysl,并将源文件备份为test.txt.1010.bak。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年10月16日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档