Articles of bash

将值添加到目录中的所有文本文件

我想添加一些内容,说 This is a test 23 到目录中的所有文件。 内容将作为第一行添加到文件中。 目录中有大约800个文件。 有没有比编写一些Perl命令或bash脚本更容易的方法吗?

bash脚本错误

我有以下的工作正常的bash脚本。 #!/bin/bash OUTFILE=somefile.txt ( ./runnable input << EOF 2 4 EOF ) > $OUTFILE 但后来我需要改变论据。 目录中有100个文件,每个文件有两个数字。 这两个数字需要反馈给上面的脚本。 100个文件有这样的数据: 2,4 9,2 4,2 所以我改变了脚本以下,但这似乎并没有工作。 #!/bin/bash OUTFILE=file3.txt ( while read line do ./runnable input << EOF #following gets first number before comma test=$(echo `expr index "$line" ,` ) echo ${line:0:($test-1)} line=$(echo ${line:$test}) #following gets second number after comma […]

Bash脚本recursion地传输文件夹而不用通过FTP覆盖

我需要一个bash脚本通过FTPrecursion地传输文件夹。 用户名/密码/ IP – 静态定义。 运行脚本的服务器:Linux 源服务器:Samba(Linux …) 目的地。 服务器:Linux 由于要传输的文件是大型数据库文件(.bak等),应该避免 覆盖 。 最好不要提示,因为脚本必须“过期”,在晚上运行。 (我不是英雄,但我觉得这是最简单的情况) 预先感谢一堆!

在bash脚本中用awk使用awk

我正在做一个脚本,其中我需要testing一个string,并根据其结果,我会决定如果我走得更远或不。 下面的命令工作正常(如果string以“清洁”开始,它将打印1,否则0)。 echo | awk ' {print index("'"${task}"'", "Clean")}' 我想要做的是在BASH脚本中使用带有IF的AWK。 基于这个职位,我做了以下几点: idx=$(awk '{print index("'"${task}"'", "Clean")}') echo $idx if [ "$idx" == "0" ]; then echo hello fi 正如我所说,当我运行脚本它打印“0”,但第二个“回声”不打印任何东西,当然,如果不起作用。 谁能帮我? TIA, 短发

如何在bash中进行文本匹配

我试图find一个很好的方式来检查一些文本,以设置一个variables。 例如执行逻辑:'如果版本string是1.x然后设置一个标志'。 这样做的一个方法是: versionFlag="0" if grep -q "^1.*" versionfile; then versionFlag="1" fi 这是一个有点冗长。 如果我想切换多种可能性,那么这很容易: case `grep "^1.*" versionfile` in 1.*) echo "version 1" ;; … esac 但是,如果某些文本匹配正则expression式或通配符,那么只需将标志设置为true或false,就可以实现一条很好的线路?

HISTCONTROL = ignoreBoth不工作debian lenny

任何人都可以确认,如果通过在debian lenny下设置以下envvariables将使以前的历史条目不被保存。 GNU bash,版本3.2.39(1) – 发布 export HISTCONTROL=ignoreboth export HISTSIZE=500 我已经将它们添加到我的/etc/bash.bashrc但是我一直得到重复的命令。

在MacOSX(Leopard / Snow Leopard)上永久映射局域网内的驱动器

如何永久地在Mac上“映射”共享文件夹? 有了地图,我不是指“连接”,而是将其永久添加到系统中,以便在重新启动后存在。 由于工作站倾向于closures,我也想知道症状和治疗情况如何发生。 在Linux中,这可以通过使用fstab文件来完成,但是我注意到卷被安装在与Linux不同的结构中。 我需要这个来备份一些工作站,在一个单独的目录上做一个recursion的工作,它应该包含共享文件夹。 我使用terminal来访问主系统,所以优先考虑,解决scheme将是一个很好的,在一个bash shell与GUI的工作。 我可以访问Finder中的所有文件夹。 谢谢!

编译软件时,你可以采取哪些步骤来确保健全的构build环境?

我有一个可怕的时间让一个软件在CentOS盒子上编译,下面列出的问题是特定的,但我希望正确的方法来源于这是一个可以应用于类似的问题,因为这似乎并不是一个特定于这一块软件的问题。 虽然…到了… 在CentOS 5.4上构build一个标准化的虚拟机时,我遇到了一个编译问题,而我在这个黑暗中一直在为这个错误发生的原因,以及b)如何解决这个问题,别人也绊倒了这个问题,我希望有人能帮我find解决scheme在这里。 我得到一个configure: error: newly created file is older than distributed files! 尝试运行安装程序时试图编译Ruby Enterprise时遇到错误,并且在论坛上提供的解决scheme(检查时间戳,以及触摸文件以更新与之关联的时间)似乎没有帮助这里。 我可以采取哪些步骤来找出造成这个问题的原因? [vagrant@vagrant-centos-5 ruby-enterprise-1.8.7-2009.10]$ sudo ./installer Welcome to the Ruby Enterprise Edition installer This installer will help you install Ruby Enterprise Edition 1.8.7-2009.10. Don't worry, none of your system files will be touched if you don't want them to, so […]

如何将标点符号的密码传递给“挂载”命令?

我有一个shell脚本,一个接一个地安装几个samba共享。 我希望我的用户只能input一次密码。 我可以通过以下方式传递密码, mount -v -t smbfs -o nodev,nosuid //$user:$ [email protected]:/share/卷/分享 当有怪异的字符如'^'或'。'时,这不起作用。 在密码中。 有任何想法吗?

Bash脚本跨networking复制文件无人看pipe?

我想创build一个脚本来执行一系列的scp命令。 这将从networking上的另一台计算机上的一组特定的文件拉到本地计算机上的特定目录。 注意事项的authentication注意事项是什么? IE浏览器将最终成为一个cron工作,那么处理密码挑战的最好方法是什么?