Articles of bash

Linux 101 – 如何循环所有目录?

我是新来的Linux和使用GIT。 我有一个目录(代码)与十几个子目录(git存储库)。 我想要两个我可以运行的命令 获取所有存储库的当前状态。 git为所有的仓库拉动新的变化。 我知道这可能是非常简单的知道自己在做什么的人,我只是无法得到正确的循环执行(我循环所有文件,而不是目录)。 谢谢! 凯尔

如何处理脚本中的空格

我想find我的外部光盘上的某些文件,并删除这些。 我创build了下面的脚本(testing我只用ls $ i来检查输出) for i in `find /media/My\ Book/ -name "OP_CACHE.IDX" -print`; do ls $i; done 问题是,查找命令只返回string空白(例如“我的书”)没有编码(如我在/媒体/我\书),因此我得到的错误,无法find文件夹。 我怎样才能解决这个问题的空白? 有没有find的标志,或什么? 问候马克

bash脚本中的许多并发SSH命令?

我的Bash-Foo不强。 现在我有类似的东西 function update_project { for i in server-{1,2,3,4} ; do echo "Updating $i" ssh $i "git pull" done } 服务器的数量每天都在增长,而且由于每次更新大约需要20秒,所以我想同时处理这些请求。 什么是最好的方式来做到这一点,而仍然能够看到输出(如失败的合并)?

如何过滤文件列表pipe道到xargs?

我的命令: git show –pretty="format:" –name-only返回文件列表。 然后我使用xargs在这些文件上运行一个shell脚本: git show –pretty="format:" –name-only | xargs -i phpmd $dir/'{}' text codesize,unusedcode,naming 但是,我只想在扩展名为.php文件上运行这个xargs命令。 如何过滤不需要的文件?

通过行号从文本文件中选取一行

在Unix shell中,如何从文本文件的行号中select一行? 说我想要在animals.txt中的第三行被写入stdout(蝙蝠蝙蝠)。 monkey monkey monkey cat cat cat bat bat bat horse horse horse 有没有一个标准的程序或简单的方法来做到这一点? (在这种情况下,文本文件没有足够的行来包含你要求的行号)

MySQLadmin删除数据库 – bash脚本

我有一个bash脚本,下载一个sql.gz文件,提取它,然后导入它,但是在导入之前,我删除现有的数据库,然后将新的数据库导入服务器。 一切都很好,脚本做它应该的,只有一件事: 我在我的bash脚本中有这个声明: mysqladmin -uroot -ppassword drop dbname 然后等待用户input按y or n继续。 有没有一种方法可以inputY所以它总是说是并自动完成脚本。 我是新的(v.new)bash脚本。 感谢亲切的问候

以recursion方式grep多个文件types

我试图找出如何search所有子目录中的“_iterator_tag”stringrecursion和扩展名为.cpp,.h,.hpp,.cxx,.inl的文件现在我所能做的就是search这些文件中的每一个types分别如下grep -R“_iterator_tag”–include'* .cpp'是否有更快的方法来search所有这些文件types? 谢谢

从bash shell监视一个自定义的Java HTTP服务器?

我怎么能从一个bash shell监视一个服务端口? 我想要监视一个Java服务(在端口9090上每分钟一次),然后调用“/etc/init.d/myservice -restart”,如果这个服务没有用一个简单的HTML消息来响应的话。 你会怎么做这样的事情? 我的想法是使用类似的东西: wget -O – –no-check-certificate –progress=dot https://localhost:9090 要么 curl –insecure https://localhost:9090

如何批量重命名文件以删除扩展之前的多余空间

我有一堆文件的文件名遵循模式'filename.ext'。 例如: filename .ext 我想重新命名所有这些以删除.ext之前的空格。 例如: filename.ext 我可以find他们全部使用 find * -type f -name'* .*' 但我怎么才能重命名所有这些文件?

Bash脚本不会在Cron中运行

这是我在我的crontab中有什么: * * * * * /bin/bash /home/user_name/script.sh 以下是文件中的内容: #!/bin/bash cd /var/www/sites/site1 sudo svn update * cd /var/www/sites/site2 sudo svn update * 该脚本设置为+ x。 任何想法,为什么它不会在cron中运行? 当我手动运行它运行良好。