【用于监视文件更改的Linux bash脚本 – >如何更改文件名】教程文章相关的互联网学习教程文章

linux – 如何在Bash脚本中发送身份验证详细信息?【代码】

我想写一个bash脚本,它发送一个密码以通过远程服务器进行身份验证. 例如,我想编写一个bash脚本,它将代码从github存储库提取到服务器,但我必须指定密码或passpharse才能执行此操作. 我该怎么编码呢?我尝试了几件事,但没有任何效果.解决方法:我认为这是discussed很多,但你可以使用expect.这是一个使用它连接到主机使用ssh的例子:#!/usr/bin/expectset password "YOURPASSWORD" set user "john" set host "192.168.1.100"spawn ssh ...

linux – 使用lessc从.less文件生成.css的Bash脚本【代码】

我正在寻找一个bash脚本,它将以递归方式查找目录中的所有.less文件,并使用lessc在父css目录中创建一个具有相同名称的.css文件.在视觉上它看起来像这样. 之前:/css /lessa.lessb.less /whatever/css/lessc.lessd.less后:/cssa.cssb.css /lessa.lessb.less /whatever/cssc.cssd.css/lessc.lessd.less到目前为止我能够弄清楚的是我可以使用以下方法找到所有文件:find . -name *.less我可以使用以下方法生成单个文件:lessc foo.les...

Linux / Unix bash基本脚本awk / sed【代码】

我正在研究bash脚本.var=$(ls -t1 | head -n1); cat $var | sed 's/"//g' > latest.csv cat latest.csv | sed -e 's/^\|$/"/g' -e 's/,/","/g' > from_epos.csv echo "LATEST: $var";这是整个脚本,它意味着删除当前文件中的所有引号并在每个字段之间添加新引号. INPUT:"sku","item","price","qty" 5135,"ITEM1",1.79,5 5338,"ITEM2",1.39,5 5318,"ITEM3",1.09,5 5235,"ITEM4",1.09,5 9706,"ITEM5",1.99,5OUTPUT:"sku","item","pr...

linux – Bash脚本在从shell提示符执行时产生的结果与cron执行的结果不同【代码】

请考虑以下crontab(root):SHELL=/bin/bash ... ... 0 */3 * * * /var/maintenance/raid.sh和bash脚本/var/maintenance/raid.sh:#!/bin/bashecho -n "Checking /dev/md0... " if ! [ $(mdadm --detail /dev/md0 | grep -c "active sync") -eq 2 ]; thenmdadm --detail /dev/md0 | mail -s "Raid problem /dev/md0" "my@email.com";echo "ERROR" else echo "ALL OK" fi;#-------------------------------------------------------e...

linux – bash脚本中的错误替换【代码】

我正在尝试让脚本工作以将交换空间添加到VPS,作为一种解决方法,我认为我已经使用它但是现在,每次我收到错误:fakeswap.sh:5:每次尝试时都会有错误的替换如此执行:sudo sh fakeswap.sh. 以下是我的代码:#!/bin/bashSWAP="${1:-512}"NEW="$[SWAP*1024]"; TEMP="${NEW//?/ }"; OLD="${TEMP:1}0"umount /proc/meminfo 2> /dev/null sed "/^Swap\(Total\|Free\):/s,$OLD,$NEW," /proc/meminfo > /etc/fake_meminfo mount --bind /et...

linux – 避免同一个bash脚本的两个实例【代码】

运行shell脚本时,我想绝对确定它的一个实例在给定时间运行. 我应该使用文件锁机制,例如touch lockfile do_work rm lockfile够了吗?解决方法:它认为你的逻辑更像是:if [ ! -e lockfile ]; thentouch lockfiledo_workrm lockfile fi但请注意,即使这还不够.实际上,它为微妙的错误铺平了道路.由于整个事物不是原子的,所以第二个过程也可以在if子句之后但在触摸之前开始. 一个不太天真的实现你的想法会尝试锁定获取操作的原子性.这可以...

linux – 使用awk提取密钥的BASH脚本【代码】

我正在创建dkim private&公钥openssl genrsa -out dkim1024.key 1024openssl rsa -in dkim1024.key -out dkim1024.pub -pubout -outform PEM 我有一个使用awk提取密钥文件的bash脚本KEY = /usr/bin/awk’NR> 1 {a [k] = $0} END {for(i = 1; i< k; i)print a [i]}file.keyfile.key内容 -----BEGIN PUBLIC KEY----- MIGfMA0GCSqasdfadaBAQUAA4GNADCBiQKBsdfadsfsDgrKE5D2atbGtaqVmAZwzy1YNY 8pUYgF6qQ4zecRrpk3Uam52asdfafasdasdfas...

用于监视文件更改的Linux bash脚本 – >如何更改文件名【代码】

我想编辑Mike Mullin编写的这个监视脚本:https://gist.github.com/mikesmullin/6401258以获取已更改文件的名称.它似乎只检查整个文件列表的数据完整性:update_sha() { sha=`ls -lR --time-style=full-iso $path | sha1sum` }将其与旧列表进行比较:compare() {update_shaif [[ $sha != $previous_sha ]] ; thenecho -n "change detected,"buildprevious_sha=$shaelseecho -n .fi }如果我理解它是正确的,它只会检查是否有任何更改...

linux – 将Bash脚本转换为Shell

我有一个用Bash编写的脚本列表,现在我需要将它们转换为Shell脚本.我知道bash是Shell规范的扩展实现,因此,我正在寻找Bash中实现的扩展的一些规范,即Bash中不属于Shell规范的内容,所以我可以查看我的脚本并做出适当的修改.有这样的文件吗?或者,我们将非常感谢有关如何进行转换的任何其他建议.解决方法:要将Bash脚本更改为POSIX compatible shell代码,您必须删除任何bashisms.虽然我认为没有任何工具可以可靠地处理所有bashisms,您可...

linux – Bash脚本继续关键字不破坏循环迭代【代码】

我正在学习一系列教程来学习Bash shell脚本.其中一个练习是遍历当前目录中的文件并在这些文件中搜索模式.如果找到模式,那么脚本应该总结这些文件的文件大小.#!/bin/sh patern=echo totalSize=0for file in * do[ ! -f $file ] && continue if grep $patern $file > /dev/nullthen echo "pattern matched in $file" echo "file size is `stat -c%s $file`"fileSize=`stat -c%s $file`totalSize=`expr $totalSize + $fileSize`e...

linux – 来自bash脚本的ssh-add并自动化密码输入【代码】

我正在尝试从脚本执行ssh-add(此时不关心安全性). 现在ssh提示密码短语,需要自动化,所以我读了很多东西,比如this,发现了expect. 现在我做以下事情:eval `ssh-agent -s`脚本tmp.sh定义为:#!/usr/bin/expect spawn ssh-add /root/.ssh/id_rsa expect "Enter passphrase for /root/.ssh/id_rsa:" send "my_pass" interact./tmp.sh ssh-add -l 如果ssh-add可行,它会显示类似的内容 4096 SHA256:wlfP / nhVSWXLcljBOen5GSYZXJGgfi / ...

linux – 如果bash脚本的条件有什么问题【代码】

我安装了ZSH的Ubuntu 18.04.我有这个bash脚本来检查目录是否存在. 即使我有一个名为“?/ .config”的目录,但条件总是为负.我似乎无法弄清楚我的代码有什么问题. setup.sh#!/bin/bashif [ -d "~/.config" ] ; thenecho "Directory exist" elseecho "Does not exist" fi使用chmod x ./setup.sh使文件可执行输出始终不存在解决方法:由于您已编写“?/ .config”,因此将其视为文字字符串.要允许~shell扩展,您需要不加引号:#!/bin/bash ...

linux – 为什么这个字符串的值在bash脚本中正在执行?【代码】

为什么此脚本在if语句中执行字符串:#!/bin/bash FILES="*" STRING=''for f in $FILES doif ["$STRING" = ""]thenecho firstSTRING='hello'elseSTRING="$STRING hello"fi doneecho $STRING用sh script.sh输出时运行它:first lesscd.sh: line 7: [hello: command not found lesscd.sh: line 7: [hello hello: command not found lesscd.sh: line 7: [hello hello hello: command not found lesscd.sh: line 7: [hello hello hello ...

linux – 如何从bash脚本中完全静音vlc输出?【代码】

我有一个我为自己编写的脚本,它使用vlc到某个地方结束,我需要它停止输出它想要的东西,但保留我自己的输出(所以没有“清除”). 我使用了参数:“ – q”和“–no-sout-x264-quiet”但无效,它仍然输出丑陋的消息,即:“警告:调用rand()”和“阻止:.. .“和”Gtk-WARNING ** …“ 我尝试重定向’vlc …> err.log’,它没有帮助…… (编辑[忘记添加]:重定向’>’不起作用,文件为空) 我在vlc -H搜索但是它的大量并且有> 20“安静”的...

linux – 使用bash脚本读取数字【代码】

编写一个bash脚本,它将从用户读取10个整数,并将输出附加到文件’XYZ’.您不能在脚本中多次使用“读取”语句.#! /bin/bashfor i in {0,1,2,3,4,5,6,7,8,9} doread "i"echo "0,1,2,3,4,5,6,7,8,9" >> XYZ done我是学生,只是为了学习这个,我觉得很难,你能给我一些建议吗?我认为这应该有很多问题.非常感谢你.解决方法:让我们看看你已经拥有的东西.你的for循环执行10次迭代的read命令,read只在脚本中出现一次.您还可以将输出(&??gt;>)附...