Articles of shell

Macterminalunix问题。 试图安装showoff.io

我按照showoff.io上的说明安装了gem,但是当我尝试运行的时候 show 8888 它不工作,我得到 -bash: show: command not found 在他们的常见问题中 ,他们提到跑步 gem contents showoff-io 如果发生这种情况,但我不知道如何阅读我所得到的: Rakefile Gemfile lib/showoff/client.rb lib/showoff/settings.rb lib/showoff/api.rb lib/showoff/helpers.rb lib/showoff/version.rb lib/showoff/setup.rb lib/showoff/session.rb lib/showoff.rb bin/show 他们这样说: 这将列出showoff-io gem中的所有文件。 寻找bin / show脚本。 将该文件夹添加到$ PATH中,或者将该脚本符号链接到$ PATH中已经存在的位置。 例如: sudo ln -s /var/ruby/gems/…/bin/show /usr/local/bin 但显然复制和粘贴,没有做任何事情,因为这些只是示例path。 我确定这是非常基本的,但我是一个新手。 我需要做什么? 谢谢!

在PHP或shell中编写备份脚本会更好吗?

我有一个运行Ubuntu 10的服务器,它主要有PHP数据库的网站。 我需要编写一个备份脚本 备份数据库 压缩所有的PHP文件。 在PHP或shell中编写我的备份脚本是否更安全? 还是不重要? 我更喜欢PHP,因为这让我只有一个地方PHP数据库的密码。 如果我在shell中写这个,那么我需要把数据库密码放在shell脚本中。 当我改变密码的时候,我需要在两个地方改变它。

shell脚本不能在cron中工作

我有非常smiple脚本做一个备份,并且它运行正常,当我从命令行运行它,但我有问题运行它作为cron工作。 我的cron条目是这样的:(运行它每分钟testingatm) * * * * * /var/hosting/ctest/ptest/backup-site.sh > /var/tmp/ctest_ptest_backup_cron2.log 我可以在/ var / log / cron中看到它被执行 Sep 22 11:06:01 devbox CROND[31506]: (gwesio) CMD (/var/hosting/ctest/ptest/backup-site.sh > /var/tmp/ctest_ptest_backup_cron2.log) 但是它没有做它应该做的事情,因为备份存档没有被创build。 这是我如何设置文件的权限: -rwxr-xr-x 1 apache developers 877 2011-09-22 10:11 /var/hosting/ctest/ptest/backup-site.sh 脚本本身就是这样的: #!/bin/sh PATH=/usr/bin:/bin TIME=$(date +%Y-%m-%d-%H:%M) PDIR="/var/hosting/ctest/ptest" BACKUP_DIR="$PDIR/backups" BACKUP_FOLDER="$BACKUP_DIR/$(date +%Y-%m-%d-%H%M)" RESOURCES_DIR="$PDIR/management/html/resources" sudo mkdir $BACKUP_FOLDER sudo chown apache:developers $BACKUP_FOLDER sudo chmod […]

问题与回声命令?

我运行这个脚本作为量子build议我 #!/bin/bash EDATE=$(tail -1 a | awk '{ print substr($4, 2, length($4)) }') EEPOCH=$(date -d "$(echo "$EDATE" | awk 'BEGIN { FS = "[/:]"; } \ { print $1" "$2" "$3" "$4":"$5":"$6 }')" +%s) time=$(expr 60 \* 60 \* 24 \* 5) SEPOCH=$(expr $EEPOCH – $time) while read line do DATE=$(echo $line | awk '{ […]

如何在shell中pipe理date

强调textI有一个文件包含14000date。 我写了一个脚本find最近5天, 26/03/2002:11:52:25 27/03/2002:11:52:25 29/03/2002:11:30:41 30/03/2002:11:30:41 26/03/2002:11:30:41 02/04/2002:11:30:41 03/04/2002:11:30:41 04/04/2002:11:30:41 05/04/2002:11:52:25 06/04/2002:11:52:25 假设这是文件,现在我有date02/04/2002:11:30:41作为输出。 我想把从2002年4月2日到文件末尾的date放在另一个文件中。 start-date = 02/04/2002 (this is my start date) while [start-date lt end-date] do (while start date is less than end date ) start-date++ ( add one day to start day so if its 2/4/2002 it will become 3/4/2002) echo $start-date|tee -a […]

linux添加python脚本以用户身份运行

我有一个Python脚本,通过PHP执行,但脚本运行在用户的Ubuntu下。 如何将我的Python脚本更改为与我的PHP脚本(即www-data)相同的用户? 如果这不是一个安全的方法来做到这一点,会是什么? Python脚本对通过PHP上传的文件执行任务,PHP自动将所有者和组设置为www-data。 我从命令行执行python脚本,它的工作原理,但通过PHP执行时,Python脚本没有权限执行上传文件的任务。

在shell脚本中输出命令

当我在命令提示符下使用导出命令时,它按预期工作。 但是它不能从shell脚本中运行。 [root@server shantanu]# export myip=10 [root@server shantanu]# echo $myip 10 [root@server shantanu]# vi myip.sh #!/bin/sh export myipadd=10 [root@server shantanu]# sh -xv myip.sh #!/bin/sh export myipadd=10 + export myipadd=10 + myipadd=10 [root@server shantanu]# echo $myipadd 我想在下次运行时将variables提供给同一个脚本。 换句话说,我正在寻找一些方法来记住variables的值。

Powershell Export-Clixml对象操作

我想能够保存一个对象到文件,然后让另一个脚本再次拿起这个对象,并能够使用它。 我跑 Export-Clixml -InputObject $object -Encoding UTF8 -Path $file 将对象保存到文件,但如果我运行 $object = Import-Clixml $file 我不能像以前那样操纵对象。 示例代码来描述我的问题: #script 1 $objecttofromFile = new-object -com "Microsoft.Update.UpdateColl" foreach ($herp in $derp) { # do stuff, then $null = $objecttofromFile.Add($herp) } ######## stop, save to file ######### #save shiny UpdateColl object to file Export-Clixml -InputObject $objecttofromFile -Encoding UTF8 -Path $file […]

以ssh'ing作为特定用户运行根脚本,而不是在标准login时运行

我想要做以下事情: 如果我通过login屏幕以用户ABClogin,则什么也不做。 但是,如果我ssh作为美国广播公司,然后我想运行一个根脚本,而不会提示root密码,而不必在磁盘上的某处存储根密码。 Linux的文章概述了这个动机:在应用程序的基础上限制传出 。 基本上,从文章的启发https://unix.stackexchange.com/questions/21650/how-to-restrict-internet-access-for-a-particular-user-on-the-lan-using-iptables ,什么我想要做的是以下几点: 1)以用户EFGlogin并使用Firefox访问网页。 2)ssh进入ABC。 3)在ssh到ABC,我想运行一个脚本,模拟“sudo iptables -t mangle -A OUTPUT -o eth0 -m owner –uid-owner 1234 -j DROP”,其中1234是用户的UID ABC 4)然后开始在ABC的ssh'edterminal下使用我不想上网的所有应用程序,同时仍以EFG用户身份login,因此允许我以EFG的身份上网。 注意我尝试了/ etc / network / interfaces文件,但是如果计算机没有连接到networking,我的计算机无法正常启动。 谢谢

如何在PowerShell中查找用户terminal会话

我会请求一些帮助findterminal会话(如思杰)的用户。 我在这个论坛上已经经历了“terminal会议”上提出的大部分问题。 不幸的是,没有什么帮助我:( 我尝试searchget-PSterminalsessions ( http://psterminalservices.codeplex.com ),但按照给定的步骤执行后,此模块不加载。 我在Win 7以及2008 R2上都尝试过。 当我尝试使用invoke-expressions -command "Quser xyz"它不会返回任何内容。