Ida*_*dan 2 linux shell scripting
我想编写一个非常简单的脚本,它接受一个进程名称,并返回包含进程名称的最后一个文件名的尾部.
我写了类似的东西:
#!/bin/sh tail $(ls -t *"$1"*| head -1) -f
我的问题:
我需要第一行吗?
为什么不ls -t *"$1"*| head -1 | tail -f工作?
ls -t *"$1"*| head -1 | tail -f
有没有更好的方法呢?
the*_*ega 6
1:第一行是所谓的她爆炸,阅读说明这里:
在计算中,一个shebang(也称为hashbang,hashpling,pound bang或crunchbang)指的是字符"#!" 当它们是解释器指令中的前两个字符作为文本文件的第一行时.在类Unix操作系统中,程序加载器将这两个字符作为文件是脚本的指示,并尝试使用文件中第一行其余部分指定的解释器来执行该脚本
2:tail不能从stdin获取文件名:它可以将stdin上的文本或文件作为参数.请参阅手册页.
tail
3:没有更好的解决方案出现在我的脑海中:注意包含空格的文件名:这不适用于您当前的解决方案,您需要在$()块周围添加引号.
$()
归档时间:
15 年,12 月 前
查看次数:
386 次
最近记录: