标签: scripting

检查文件夹,打印文件然后删除这些文件的脚本

我正在寻找有关创建脚本的指导,该脚本将检查特定文件夹、打印所有文档(如果有)然后删除这些文档。我还想将此脚本作为 cron 作业运行。

我希望这样做的原因是因为我目前有一个 PHP 网络应用程序,它可以动态创建 pdf 发票并将它们保存在某个文件夹中,但我无法从网络自动打印这些文档(我想是为了安全/垃圾邮件问题)。

我没有语言偏好,但理想情况下希望脚本能够控制打印多少份,在打印机中使用哪个托盘等。

scripting cron printing

2
推荐指数
1
解决办法
2560
查看次数

bash脚本选择最后一个路径变量

我正在编写我的第一个 bash 脚本。我正在让它安装我在 GitHub 上的所有存储库。

warpInLocations=("git@github.com:acc/toolkit.git" "git@github.com:acc/sms.git" "git@github.com:acc/boogle.git" "git@github.com:acc/cairo.git")
Run Code Online (Sandbox Code Playgroud)

当我安装它们时,它们就是它们。

echo "warping in toolkit, sms, boogle and cairo"
for repo in "${warpInLocations[@]}"
do
  warpInDir=$(echo ${warpToLocation}${repo} | cut -d'.' -f1)
  if [ -d "$warpToLocation"]; then
    echo "somethings in the way.. $warpInDir all ready exists"
  else
    git clone $repo $warpInDir
  fi

done
Run Code Online (Sandbox Code Playgroud)

此处的这一行,我希望它为我提供一个名为toolkitor的文件夹sms,因此在位置扭曲之后/和之前.,但它正在选择git@github。我猜,因为它在..

我怎样才能让它在回购中选择名称?

scripting bash

2
推荐指数
2
解决办法
390
查看次数

在每行的末尾添加一个后缀字符串?

我有两个文件:

文件01:

line1
line2
line3
Run Code Online (Sandbox Code Playgroud)

文件02:

A
B
C
Run Code Online (Sandbox Code Playgroud)

我想得到

line1 A
line2 B
line3 C
Run Code Online (Sandbox Code Playgroud)

我可能会写一个 Perl 脚本,但如果我不需要它会更好。

我试过使用明显的 grep -o '^' file02 >> file01

但这会产生

line1
line2
line3
A
B
C
Run Code Online (Sandbox Code Playgroud)

这应该是一件很简单的事情,但在“man grep”(grep手册)中没有找到。

linux grep scripting bash sed

2
推荐指数
1
解决办法
1605
查看次数

通过shell脚本按下一个html按钮?

我目前正在尝试编写一个脚本来通过 shell 脚本更改网页上的一些参数。我可以毫无问题地更改文本框中的值,但我似乎无法弄清楚如何“按下”应用按钮。

这就是我更改值的方式,如您所见,我需要最后一次“应用”按钮。

setJitterDelay()
{
    rate=${1}
    if [ "${rate}" == "low" ]; then
            ((htmlJitterNegDelta = 5))
            ((htmlJitterPosDelta = 5))
            ((htmlJitterDelayMax = 10))
            jDelta=5
    else
            if [ "${rate}" == "med" ]; then
                    ((htmlJitterNegDelta = 25))
                    ((htmlJitterPosDelta = 25))
                    ((htmlJitterDelayMax = 50))
                    jDelta=25
            else
                    if [ "${rate}" == "high" ]; then
                            ((htmlJitterNegDelta = 50))
                            ((htmlJitterPosDelta = 50))
                            ((htmlJitterDelayMax = 100))
                            jDelta=50
                    else
                            echo "error: low, med, high not selected! Skipped..."
                            return
                    fi
            fi
    fi
    ### APPLY BUTTON
}
Run Code Online (Sandbox Code Playgroud)

我使用 Firebug 来了解我必须更改哪些值,Apply …

shell scripting html

2
推荐指数
1
解决办法
1万
查看次数

优化文件列表和删除方式

我需要列出和删除 .php、.xml 文件。为此,我正在使用find命令。

列出: find . -type f -name \*.php -print0

删除 : find . -type f -name \*.php -print0 | xargs -0 rm -r

因为我跑find了两次。是否可以存储第一个命令的结果然后在第二个命令中重用?

谢谢。

scripting find shell-script

2
推荐指数
1
解决办法
1835
查看次数

需要将文件复制到现有目录并删除已有的同名但扩展名不同的文件

编辑:为了清楚起见,完全重写了问题。

我有一个目录树(新的),里面有一堆扩展名为 .new. 我有一个相同的树(),其中许多文件的名称与树中的文件名称相同,只是扩展名为.old. 我想将所有.new文件从新目录树复制到包含文件的目录树中.old。由于将带有.new扩展名的文件写入目录树,我想删除任何具有相同名称但带有.old扩展名的文件。

所以,如果在新的目录树中,有一个名为 的文件new/foo/bar/file.new,它会被复制到旧的目录树中old/foo/bar/file.newold/foo/bar/file.old如果它退出,则该文件将被删除。

编辑#1

这个答案在下面进行了讨论(使用具有令人困惑的无关背景信息的旧问题)。请参阅我在下面制定的实际解决方案作为答案之一。

command-line scripting find file-copy

2
推荐指数
1
解决办法
2213
查看次数

How to compress and transfer folders from one server to another over network

我们是否可以选择将文件夹从一台服务器传输到另一台服务器,即更快、可压缩且带宽限制可设置的方法?服务器在 Linux 上运行。

我尝试了 tar + ssh,但同样无法将带宽限制设置为 3 或 4 MBPS。

有其他服务可以吗?

scripting scp

2
推荐指数
1
解决办法
917
查看次数

连接具有不同列数和行数的两个文件

我有两个文件。file_1.txt 看起来像这样:

R1     C1     C2     C3     C4     C5
R2     C1     C2     C3     C4     C5
R3     C1     C2     C3     C4     C5
R4     C1     C2     C3     C4     C5
R5     C1     C2     C3     C4     C5
R6     C1     C2     C3     C4     C5
R7     C1     C2     C3     C4     C5
R8     C1     C2     C3     C4     C5
R9     C1     C2     C3     C4     C5
R10    C1     C2     C3     C4     C5
Run Code Online (Sandbox Code Playgroud)

file_2.txt 看起来像这样:

R4 C4 C5
R6 C4 C5
R7 C4 C5
R9 C4 C5
Run Code Online (Sandbox Code Playgroud)

我想将 file_1.txt 中的 C4 …

scripting text-processing join

2
推荐指数
1
解决办法
1937
查看次数

Bash:将列附加到表

如果您想将一列(而不是一行)附加到表格中,并且该列肯定具有相同数量的元素,您该怎么做?

给定一组每天都在变化的文件,您希望对其进行跟踪。

一个例子是:

file1 3443 words 11-20-13 44 4788 words 11-23-13 
file2 4457 words ...
Run Code Online (Sandbox Code Playgroud)

scripting text-processing columns

2
推荐指数
1
解决办法
6144
查看次数

~/bin 中的脚本权限被拒绝

PATH在我的环境变量中设置了一些额外的位置,~/.bashrc以便这些位置包含/来源在登录和非交互式脚本中,这些脚本使用cron.

我注意到虽然在一个系统上PATH正确修改了,但是尽管所有权和权限设置正确,但其中的任何脚本都不会运行(据我所知)。

$ ls -l
total 756
-rw-r-xr-x 1 slackline slackline    300 Sep  6 07:35 backup
-rwxr-xr-x 1 slackline slackline    978 Dec 30 10:28 bbc_mpd
-rwxr-xr-x 1 slackline slackline 355483 Nov 29 07:31 get_iplayer
-rwxr-xr-x 1 slackline slackline    110 Sep  6 07:35 rsync.albums
-rwxr-xr-x 1 slackline slackline    114 Sep  6 07:35 rsync.climbing
-rwxr-xr-x 1 slackline slackline    108 Sep  6 07:35 rsync.films
-rwxr-xr-x 1 slackline slackline    125 Sep  6 07:35 rsync.mixes
-rwxr-xr-x 1 …
Run Code Online (Sandbox Code Playgroud)

scripting permissions executable

2
推荐指数
1
解决办法
4877
查看次数