我有一个备份FTP服务器,我有一个CRON bash发送所有备份在这里。 现在我必须手动删除所有旧文件,但我想用CRON bash自动执行此过程 远程FTP没有文件的date(我不知道为什么),但是备份是按date命名的(%Y-%m-%d-%H-%M-%S)。 我想列出目录中的所有文件,按名称sorting,删除索引> X的所有文件,但我不知道该怎么做 我目前的代码是: ftp -inv $ftphost << EOF user $ftpuser $ftppass put $savepath.bz2 mysql/"$dbname"/"$datum".sql.bz2 bye EOF
在一个术语(比如说一个PuTTY会话)中,我希望看到当前的shell bash被一个新的shellreplace,同时刷新用户组(等等)。 我知道exec bash –login用新的replace当前的shell,重新加载.bashrc或.profile文件,但是它不会重新加载/etc/groups 。 我想这个命令不会加载所有的系统configuration文件(更多细节,将不胜感激)。 我知道su – username ,但它创build另一个嵌套的shell,而不是取代当前(并要求input密码)。 我不想input任何密码,也不必再exit 。 有没有办法本地实现呢? =>replace我的当前shell与一个新的,就像我login另一个术语(重新加载bash文件,组等等新鲜的会话)完全相同的方式。
我想为所有bash用户全局保存我的Readline设置(它安装在系统上),但是我找不到全局configurationpath,既不在/etc也不在/usr/etc 。 我也无法在自己的手册上find它。 我认为应该有一个~/.inputrc的本地 请帮助我。
我有一个freebsd服务器上的Web应用程序。 应用程序是一个单独的可执行文件,具有内置的networking服务器。 我的默认shell是zsh。 当我将它运行为“./my_website&”并closures连接时,它会终止。 然而,当我通过“/ usr / local / bin / bash” 切换到bash并以同样的方式运行我的网站时./my_website&“,然后退出bash并closures连接,我的网站一直在工作 – 正是我所需要的。 这里发生了什么 – 为什么在closures与我的服务器的连接之后它仍然在bash中运行? 以这种方式在后台运行应用程序是一种很好的做法吗? 如果没有,运行我的网站的正确方法是什么,以便在断开连接后不会终止?
我正在寻找一个解决scheme来观看ccze上的几个日志文件。 目前我发送一个pipe道中的每个文件的尾巴,这个pipe道被ccze用来显示所有需要的日志文件。 问题在于一些日志文件比其他日志文件要多得多,ccze不要在屏幕上保持“固定位置”,所以最常用的日志只是隐藏最less的使用。 因此我想知道如何通过ccze得到一组日志文件总是可见的(我想到了屏幕,但我想知道是否存在其他选项)。 谢谢,
所以我需要build立一个shell脚本(我的一个技巧是垃圾,我认为是线性的,把所有东西都当成pipe道)连接到一个远程机器到一个特定的目录,淹没所有超过5分钟的文件,该文件的名称(下面的编码细节),然后将文件分散到相关的目录中,或者在本地备份主机上不存在的情况下创build目录。 在十几台机器上,我有目录(让我们称之为/ Prod / Data /)完整的文件名为data-HOST-v.7.mmddyy.csv 例如:date-web2-v.7.052509.csv 超过5分钟的文件需要从远程计算机上拖到本地文件夹/ backup / archive / host / year / month / day / csvs 例如/ backup / archive / web2 / 2009/05/29 / csvs 我相信我可以做一些像ls -1 | 切“-d”。 -f3提取文件的date部分,然后使用sed或awk来隔离每个部分并生成datevariables以select将文件转储到哪些目录中,做类似于抓取主机的东西,但是我不知道如何去做与那个在其上执行的文件关联。 不知道如何远程执行,也许最好先从远程机器上抓取所有文件(less于5分钟的任何文件,也许可以用find -mmin +5语句来解决这个问题)?然后在备份机器上的所有内容进行sorting。 有人会这样友好地指示我可以提供类似function的示例脚本的方向吗? 我写的一切都是命令| 命令| 命令| 等等…我想这个任务将需要一些维度。 感谢您的时间。
我想根据使用情况有2个不同的“标签”的行为。 除非用户试图完成“mybashfunction”命令的参数,否则我希望具有bind '"\t":complete'的默认行为bind '"\t":complete'任何时间。 在这种情况下,我调用一个特殊的函数来生成完成,但我希望“tab”工作,就像bind '"\t":menu-complete'被设置。
可能重复: 我可以禁止/屏蔽已经启动的程序吗? GNU屏幕非常适合长时间运行的程序。 你可以开始你的程序,并断开连接,把你的笔记本电脑带回家。 不过有时候我会在屏幕之外开始一个程序,所需时间比我想要的要长。 我用Control – Z等暂停程序没有问题,但是我不想重新启动它,因为这会花费时间再次运行。 有什么办法可以将现有的正在运行的进程移动到屏幕会话中吗?
以下是我用于在CentOS服务器上部署php应用程序的部署脚本的摘录。 echo "Starting Deployment to $SITE_FOLDER (Relase Directory: $RELEASE_DIR)…" svn –username=$SVN_USER export $REPOSITORY $DEPLOY_FOLDER/releases/$RELEASE_DIR echo "CHMOD 755 of Release Directory" chmod 755 -R $DEPLOY_FOLDER/releases/$RELEASE_DIR echo "Making Symbolic Link." ln -nfs $DEPLOY_FOLDER/releases/$RELEASE_DIR/ $DEPLOY_FOLDER/public_html 我在一个成功的类似环境中使用了它。 我把这个设置在一个新的服务器上,并且在删除之前,文件apache从public_html提供了很好的文件。 现在,它通过符号链接服务,PHP文件都扔500错误。 非.php文件正在服务正常。 我已经尝试将目录作为不同的Apache用户和不同的权限,但似乎没有任何工作。 有任何想法吗? 预先感谢您的帮助!
我最近安装了Ubuntu的耐寒,发现用TAB命令完成shell命令不起作用,在我的系统中安装了“bash-completion”包。 我猜这是相关的破折号是默认的shell? 有没有一种方法来使用短跑完成标签? 如果没有办法,那么我怎样才能改变我的默认shell为bash?