标签: bash

删除除一个之外的所有子目录

假设当前目录下有多个子目录,一个叫A。

如何使用Bash删除除A之外的所有子目录?

linux bash

11
推荐指数
4
解决办法
4万
查看次数

应用多个 .patch 文件

我有一个包含.patch文件的目录,使用 diff 生成。

我想将所有这些补丁应用patch -p1到另一个目录。

但是补丁只需要一个文件,除非我cat.

使用xargs或类似工具应用多个文件的命令是什么。

bash patch diff xargs

11
推荐指数
3
解决办法
3万
查看次数

Linux - 找出进程的当前工作目录?

如果我有一个进程 PID X,我怎样才能找出它在哪个目录中运行?我可以看到ps aux | grep X调用它的完整命令行。但是,在这种情况下,它是./script.sh,我想看看script.sh它正在运行哪个。

bash process

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

如何更改 FreeBSD 中的默认 shell?

FreeBSD 中的默认 shell 是sh,我真的无法忍受:自动完成非常有限,rehash 命令会杀死我。感觉自己是个单臂单腿的人……

如何将 shell 全局更改为zshor bash- 对于 root 以及所有当前和未来用户?

freebsd shell bash zsh sh

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

Bash脚本来计算文件数

我有一个脚本,如果文件存在与否,我想显示不同的消息。我有一个像这样的脚本:

count=ls /import/*.zip | wc -l

echo "Number of files: " $count
if [ "$count" > "0" ]; then
    echo "Import $count files"
else
    echo "**** No files found ****"
fi
Run Code Online (Sandbox Code Playgroud)

但是,如果不存在文件,则会显示No such file or directory而不是 0 个文件。目录中有一个目录/import/,所以我不能只执行ls命令,因为它总是会返回大于 0 的值。

如何计算特定扩展名(.zip、.gz 等)的文件数并在 bash 脚本中使用该值来显示文件数,然后在 if 语句中使用它来显示不同的消息?

scripting bash

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

如何通过删除 bash 中的字符来重命名多个文件?

我必须通过删除每个文件名的前 5 个字符来重命名目录中的多个文件。
我怎样才能做到这一点我 bash/shell?我正在使用 Ubuntu 11.10。谢谢。

bash rename

11
推荐指数
4
解决办法
3万
查看次数

CPAN 和 Perl 模块的静默和脚本安装?

我需要在 Scientific Linux (RHEL) 安装脚本中自动安装 CPAN 和一些 Perl 模块。不幸的是,就我所见,我想要的特定模块(至少其中一个)无法作为 RPM:s 找到。

所以我需要安装 CPAN,自动配置它(或使用配置文件),然后自动安装所需的模块(包括依赖项)。

这似乎不是一个非常不寻常的要求,但我还没有看到任何关于此的非常好的文档。问题是,每当第一次启动 CPAN 时,都会运行交互式配置。这可以以某种方式跳过吗?以及如何直接从命令行启动模块安装?

bash perl cpan shell-scripting

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

我可以更改特定用户的所有文件的所有权吗?

有没有办法递归地查找用户拥有的所有文件并将它们更改为 Gnu/Linux 中的另一个用户/组?

我认为一定有一些神奇的单线,但我的命令行巫术技能达不到那个程度:)

谢谢!

linux shell bash centos shell-scripting

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

用于检查公共 HTTPS 站点是否已启动的 Bash 脚本

我正在尝试为 bash 脚本设置另一个代码块,以检查 HTTPS 上的公共网站是否已启动。我们可以使用 CURL 来做到这一点吗?除了 CURL 之外,还有什么可以使用的建议。谢谢

linux bash

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

尝试在 Debian 中执行启动脚本时没有此类文件或目录错误

Debian(Raspbian)的新手,我在这个问题上挣扎了几天。我有一个要在启动时执行的启动脚本。

我执行了以下命令,以使脚本可执行并将其与默认参数一起添加到启动序列中。

sudo chmod 755 /etc/init.d/testsam
sudo update-rc.d testsam defaults
Run Code Online (Sandbox Code Playgroud)

尝试测试脚本时,我执行以下操作:

sudo /etc/init.d/testsam start
Run Code Online (Sandbox Code Playgroud)

但是这样做时,我收到一个错误:无法执行 /etc/init.d/testsam: No such file or directory。

我将脚本最小化为非常基本的,但仍然不知道实际原因。我希望有人能指出我正确的解决方案?这是当前的脚本。

#! /bin/bash

# /etc/init.d/testsam

case "$1" in
 start)
        #echo "starting script"
        ;;
 stop)
        #echo "stopping script"
        ;;
 *)
        #echo "Usage: /etc/init.d/testsam {start|stop}"
        exit 1
         ;;
esac

exit 0
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助

debian bash startup-scripts

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

标签 统计

bash ×10

linux ×3

shell ×2

shell-scripting ×2

centos ×1

cpan ×1

debian ×1

diff ×1

freebsd ×1

patch ×1

perl ×1

process ×1

rename ×1

scripting ×1

sh ×1

startup-scripts ×1

xargs ×1

zsh ×1