位置: 编程技术 - 正文
推荐整理分享linux shell在while中用read从键盘输入的实现,希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!
系统是ubuntu . bit,之前曾想安装Stream来玩dota2,但最终没成功。由于Stream只有bit,安装Stream时也安装了大量bit的库。删除Stream后,这些库也一直没管,今天忽然心血来潮,想清理一下系统,把不必要的bit库都干掉。
dpkg -l | grep "i"看一下,bit库太多,一个个敲sudo apt-get purge xxx显然有点累,分析了一下输出,
格式大概如下:
第2列为包名,第4列是平台,于是决定写一个脚本来删除:
这个脚本大体上没有什么错,不过在执行sudo apt-get purge $name这一行时,系统询问是否删除。但是这时却没有机会输入,而是直接中止执行。
批量删除软件这操作,当然要一个确认,不能加个参数默认执行啊。
查了一下资料,大概是说
这样会把read指令重定向为文件$file,这时在while中调用read会直接在文件中取一行作为输入。所以在while中要把read重新定向为终端。上面的脚本稍微修改一行:
这样就OK了。
标签: linux shell在while中用read从键盘输入的实现
本文链接地址:https://www.jiuchutong.com/biancheng/371528.html 转载请保留说明!友情链接: 武汉网站建设