Articles of 脚本

在bash脚本中recursion地打印一个儿童的完整树

因为在这里我不熟悉问题惯例。 我想写一个脚本,recursion地打印给定的pid,完整的儿童树。 我到目前为止: ps h -ef | awk '$3='$input_pid' {print $2}' | sort -n 但这仅仅是打印给定的PID(分类)的直接子节点。 问题是:如何为给定的pid的每个子pid召唤recursion函数? 谢谢…

期望脚本速度太快:在从文件读取的每行之间添加睡眠

我正在尝试自动切换命令。 它几乎都是好的,但是当期望脚本从包含我的开关命令的文件(逐行列出)读取每行时,开关似乎在大约10或15个命令后停止,我认为缓冲区太小。 如何在从文件读取的每个命​​令之间添加睡眠? 谢谢!! set fp [open "/home/room.txt" r] set data [read $fp] set timeout -60 spawn telnet 10.91.60.14 match_max 100000 sleep 2 expect * send — "^Y" sleep 2 send — "password\r" sleep 2 send — "^[\[A" send — "^[\[A" send — "\r" sleep 1 send — "enable\r" send — "configure terminal\r" sleep 1 […]

使用多个脚本logging所有bash操作

使用下面的命令,我可以logging脚本中发生的所有操作。 bash -x script.sh 不幸的是,脚本调用另一个脚本,它没有活动的-x设置,即该设置不被子脚本inheritance。 那么,有没有办法为所有后续脚本激活set -x ?

相同的脚本,相同的操作系统,相同的安装,失败

所以我正在使用RANCID监视一些交换机,现在我正在使用clogin来testing一些修改。 我在两台不同的电脑上工作,但是他们都在办公室里。 虽然它们位于不同的子网上,但是它们都可以build立telnet和ssh连接到我正在使用的交换机( Alcatel Omni 6248 )。 我已经在两台计算机上进行了RANCID的默认安装,并添加了所需的一切。 不要打扰想念一个missconfiguration 所以我设法得到了一些交换机的configuration,但其中两个失败,所以我试图修改clogin所以它得到每一个路由器的configuration。 经过一些改变,执行 ./clogin -c "show running-config" alcatel-sw 会导致脚本login,执行 terminal datadump 然后等待提示,直到它得到一个TIMEOUT 。 在试图解决这个问题的时候,我只是决定获得默认的clogin并从零开始,所以我恢复了备份,并尝试login到一个CISCO交换机(这完全与默认的clogin脚本一起工作)。 我执行了 ./clogin -c "show running-config" cisco-sw 我得到了TIMEOUT ,好像我在使用旧的脚本。 我检查了它,不知道,我正在使用默认的。 我甚至转移了我在另一台计算机(我在发送之前testing)上的一个,并再次尝试得到相同的错误。 任何想法如何可以这样做? 我在同一台机器上的CentOS 7.2上,都在一个几乎全新的安装和clogin正在工作,直到我修改它,然后用备份副本replace它。

赢10,如何更新registry参数

我需要修改Win 10registry中的现有参数,所以我执行了: reg update [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] "Hidden"="1" 它没有工作,所以我没有reg /? 我注意到更新参数甚至没有。 我检查了其他参数,似乎没有更新。 任何build议?

Powershell:一个简单的脚本来获取命令列表,并且每次追加相同的cmdlet

我有一个这样的脚本运行的命令列表 Some-Cmdlet -someswitch | Outfile -filepath .\somefile.txt -append Another-Cmdlet -someswitch | Out-File -filepath .\somefile.txt -append Hello-Cmdlet -someswitch | Out-File -filepath .\somefile.txt -append Banana-Cmdlet -someswitch | Out-File -filepath .\somefile.txt -append 它实际上是创build这个somefile.txt的一长串命令。 如果必须更改somefile.txt的位置或名称,则必须逐一编辑每一行。 我想清理脚本的可维护性,所以我想是这样的: 对于以下命令列表: Some-Cmdlet -someswitch Another-Cmdlet -someswitch Hello-Cmdlet -someswitch Banana-Cmdlet -someswitch 总是把这个添加到命令中: | Outfile -filepath .\somefile.txt -append 这样我只需要在一个地方编辑脚本,如果somefile.txtpath或名称需要改变。

不要在bash中正确运行脚本

我需要通过号码获取界面。 我的脚本: #!/bin/bash interfaces=/root/tt interfaces_with_numbers=/root/tt2 ls -1 /sys/class/net > /root/tt cat -n $interfaces > $interfaces_with_numbers cat $interfaces_with_numbers read number echo $number eth=`cat $interfaces_with_numbers | grep $number | awk '{ print $2 }'` if [[ -d /sys/class/net/$eth ]];then echo "You choose is: $eth" else echo "not found" fi 我有输出: 1 dummy0 2 eno1 3 enp4s0 4 […]

在services.msc中的一些服务不与sc查询列出

最近,我的services.msc应用程序变得非常反应迟钝。 花几分钟才能打开它。 列出的服务有许多问题,但是我将使用AppFabricCachingService。 AppFabricCachingService在services.msc中列出。 但是,如果我做了 sc query AppFabricCachingService 我明白了 C:\WINDOWS\system32>sc query AppFabricCachingService [SC] EnumQueryServicesStatus:OpenService FAILED 1060: The specified service does not exist as an installed service. AppFabricCachingService在这里没有在registry中列出。 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 有关如何获得与SC同步的services.msc和系统上的实际内容的任何想法? 我正在使用Windows 10

batch file安装应用程序(Adobe Reader)

我以前用ninite来安装这个。 但是,现在已经不再支持这个了。 我通常手动安装,但我知道在哪里使用某种批处理脚本自动化的方法。 这是我有: msiexec.exe /I AcroRead.msi /QN 从我读过的,这应该工作,但不幸的是不安装。 我也试过这个: start /d "\\directoryToMyFile\" AcroRead.msi 它运行该文件,但出现提示需要我select“安装”button。 我采取了最好的方法? 我有一个batch file,安装其他几个程序就好了,但对于Adobe Reader,这给我很多麻烦。

TrimStart()不正确地截断string

我写了一个脚本来将BitLocker密钥备份到Active Directory。 除非密码ID以'D'开头,否则这些作品很棒。 这是脚本 #Get recovery info $recoveryinfo = manage-bde -protectors -get c: #Check if bitlocker key could be located If ($recoveryinfo -match 'All Key Protectors') { $recoveryinfo $arr = $recoveryinfo | Select-String -Pattern 'ID:' $arr[1] = $arr[1].ToString().TrimStart('ID: {') $arr[1] = $arr[1].ToString().TrimEnd('}') $key = $arr[1] $key = '{' + $key + '}' #Backup bitlocker key […]