AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[sh](server)

Martin Hope
user3018558
Asked: 2020-03-16 01:14:43 +0800 CST

从任何命令输出中屏蔽公共 IP 地址(用于诊断)

  • 1

我正在编写一个脚本来从 BusyBox v1.25.1/Linux 2.6.36/router 中提取信息,用户可以在其中简单地运行脚本并将输出复制/粘贴到提交表单中以请求支持。该脚本本质上是一个命令列表,如route、ifconfig等。由于busybox 的含义,我仅限于/bin/sh。

我正在尝试找到一种智能方法来仅从输出中自动屏蔽所有公共 IP 地址。替换完整的 IP 已经很好了,但是如果可能的话,我会在每个命令(甚至是内部函数)的末尾寻找一个管道命令来简单地替换前两个八位字节 80.80.80.80 , 例如XX.XX.80.80

一个不错的功能是替换相同数量的数字以尽可能保留格式。例如

8.8.8.8=X.X.X.X 80.80.8.8=XX.XX.X.X 180.180.80.8=XXX.XXX.XX.X

实际例子:

root@router:/proc# route | filtering-goes-here Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface XX.XX.168.1 * 255.255.255.255 UH 0 0 0 vlan2 172.16.9.0 * 255.255.255.0 U 0 0 0 br1 10.10.9.0 * 255.255.255.0 U 0 0 0 br0 10.114.126.0 * 255.255.254.0 U 0 0 0 tun11 XX.XX.168.0 * 255.255.252.0 U 0 0 0 vlan2 10.10.0.0 * 255.255.0.0 U 0 0 0 tinc 127.0.0.0 * 255.0.0.0 U 0 0 0 lo default cpc86269 0.0.0.0 UG 0 0 0 vlan2

谢谢!!

replace busybox sed mask sh
  • 1 个回答
  • 288 Views
Martin Hope
Tamilvanan
Asked: 2017-03-15 22:19:43 +0800 CST

相同间隔的多个 crons 失败 - linux crontab

  • 0

在我的服务器中,我安排了以下一组 cron 文件。

00 21 * * * /bin/sh /path/db_backup.sh
*/2 * * * * /usr/bin/php /path/file1.php
*/2 * * * * /usr/bin/php /path/file2.php
...
*/2 * * * * /usr/bin/php /path/file7.php
*/2 * * * * /usr/bin/php /path/file8.php

所有的 cron 文件都按时工作。但是最后两个 php 文件 7 和 8 没有运行。

是否由于以前的 crons 花费了太多时间或任何其他原因而被跳过?

请帮我解决这个问题。提前致谢。

linux php cron scheduler sh
  • 1 个回答
  • 133 Views
Martin Hope
h2odev
Asked: 2016-08-18 05:53:25 +0800 CST

Linux shell 脚本“没有这样的文件或目录”

  • 3

我创建了一个 shell 脚本来完成 3 个简单的任务(压缩目录、重命名最终文件并删除源目录)。脚本源码如下:

#!/bin/bash
if [[ $2 == *"/data/"* ]]
then
    src= $2"/*";
    dest= $1".zip";

    # Just for test
    echo $src;

    # Commented for now
    #zip -r -j $dest $src
    #mv $dest $1
    #rm -rf $2
else
    echo "Invalid arguments";
fi

当我使用这些参数运行上面的脚本时,出现错误:

./scriptzip.sh /data/file-new /data/file-old

./scriptzip.sh: line 4: /data/file-old/*: No such file or directory
./scriptzip.sh: line 5: /data/file-new.zip: No such file or directory

如何防止 shell 为“类似目录”的字符串测试变量?有什么办法可以跳过吗?

linux bash sh
  • 1 个回答
  • 10909 Views
Martin Hope
James Gan
Asked: 2015-11-26 11:58:26 +0800 CST

shell脚本中“exec &>/var/log/a.log”的准确含义是什么?

  • 2

我认为这是某种 io 重定向,但它看起来与手册中的示例不同。通常,我们可以通过以下行重定向脚本的标准输出:

exec 1> /var/log/a.log

但我在一个脚本中看到了这一行:

exec &> /var/log/a.log

这里的“&”是什么意思?它是标准输出和标准错误吗?

谢谢,詹姆斯

sh
  • 1 个回答
  • 5738 Views
Martin Hope
Justin
Asked: 2012-06-21 22:57:51 +0800 CST

如何在不创建文件的情况下执行 shell 脚本

  • 2

如何在不创建文件的情况下执行 shell 脚本?例如,假设我有以下脚本 ( testscript):

#!/bin/bash
function run_free() {
   free -m
}

run_free

然后我当然可以执行这个:sh testscript

我想 ovoid 创建一个文件。我试过了:

sh echo '#!/bin/bash function run_free() { free -m } run_free'

哪个不起作用。有任何想法吗?

bash shell shell-scripting sh
  • 4 个回答
  • 4690 Views
Martin Hope
Justin
Asked: 2012-06-21 22:40:04 +0800 CST

sh 命令是否使用用户 shell

  • 1

linux 命令是否sh使用用户当前的 shell,即使它不是bash?例如,假设用户 bob 正在运行 csh。如果我创建一个带有函数和 csh 的脚本并尝试执行它:

sh cshtestscript

这会与 csh 一起运行吗?

然后假设另一个用户 joe 正在使用 bash。如果我用函数和 bash 脚本创建另一个脚本并尝试执行它:

sh bashtestscript

这会与 bash 一起运行吗?

bash command-line-interface shell sh
  • 1 个回答
  • 182 Views
Martin Hope
DarthCaniac
Asked: 2012-05-30 12:58:55 +0800 CST

PHP、SSH2 和 Bash 脚本不协调

  • 1

我在我的 PHP 中使用 SSH2 库在远程服务器上执行 SH 脚本。当我在 SSH 上手动运行它时,它工作得很好。但是,当我尝试通过 PHP 运行它时,脚本启动了,但从未完成。(该脚本回显两个目录的大小,并在 for 循环中运行回显大小,直到两个文件夹的大小相同。)。我试过将它放在屏幕上,用一个符号在后台运行,拒绝它,等等。

这是整个脚本:

echo "starting" > /var/www/html/$2.log
rep=`du -sk /home/repository_$1 | awk '{print $1}'`
dirsize=`du -sk /home/$2 | awk '{print $1}'`
while [ "$dirsize" -lt "$rep" ]; do
        dirsize=`du -sk /home/$2 | awk '{print $1}'`
        echo "New directory size: $dirsize."
        echo "$dirsize\\$rep" > /var/www/html/$2.log
        sleep 2;
done
echo "Loop Complete"
echo "done" > /var/www/html/$2.log

我已将崩溃范围缩小到 while 循环。出于某种原因,这会导致它锁定。执行之前的所有代码都很好。该脚本以 root 用户身份执行,我尝试将 while 循环中的变量回显到文本文件中,因此我知道它们已设置并正常工作。

php ssh sh
  • 2 个回答
  • 1351 Views
Martin Hope
user33651
Asked: 2010-02-03 14:14:42 +0800 CST

在 Solaris 10 中更改 root 用户的 shell 时出错

  • 0

我无法在 Solaris 10 中为 root 更改我的 shell。当我更改时,注销后我无法再次登录。错误是“没有外壳”。

solaris bash shell sh
  • 3 个回答
  • 975 Views
Martin Hope
user32372
Asked: 2010-01-21 11:43:57 +0800 CST

Cron 权限被拒绝

  • 2

美好的一天,我的主目录中有一个 bash 脚本,它可以从命令行正常工作(文件结构是默认的媒体寺庙 DV。< 注意某些权限问题)但从 cron 收到此错误:“/home/myFile.sh:第 2 行:/var/www/vhosts/domain.com/subdomains/techspatch/installation.sql: Permission denied" 注意:这只是第 2 行...它写入本地服务器就好了。

以下是 Bash 文件:

    #!/bin/bash
mysqldump -uUSER -pPASSWORD -hHOST dbName> /var/www/vhosts/domain.com/subdomains/techspatch/installation.sql

mysql -uadmin -pPASSWORD -hlocalhost dbName< /var/www/vhosts/domain.com/subdomains/techspatch/installation.sql

不能从 bash chmod(大声笑,是的,我试过了)。在那里写入文件并在传输之前设置权限是无用的......

我已经用谷歌搜索了这种情况,这似乎仍然很独特....任何见解都值得赞赏

linux bash cron sh
  • 1 个回答
  • 846 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve