问题标签 [bash]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
15 回答
385706 浏览

bash - Bash 中的错误处理

你最喜欢在 Bash 中处理错误的方法是什么?我在网上找到的处理错误的最佳示例是由 William Shotts, Jr 在http://www.linuxcommand.org编写的。

他建议在 Bash 中使用以下函数进行错误处理:

您是否有在 Bash 脚本中使用的更好的错误处理例程?

0 投票
6 回答
418 浏览

perl - 从文件中提取版本字符串的最佳方法是什么?

我想使用一个文件来存储一个客户软件的当前版本号,启动脚本可以使用该文件在正确的目录中运行二进制文件。

例如,如果运行目录如下所示:

current_version 包含:

我想run.sh降到 1.2.2 并运行程序foo

目前的解决方案是这样的:

它可以工作,但不是很健壮。它不检查文件是否存在,不能处理多行、前导空格、注释行、空白文件等。

使用 shell 或 perl 脚本执行此操作的最可行的方法是什么?

0 投票
105 回答
144218 浏览

bash - 你最喜欢使用 Bash 的命令行技巧是什么?

我们都知道如何使用<ctrl>-R反向搜索历史,但你知道<ctrl>-S如果你设置了你可以使用前向搜索stty stop ""吗?另外,您是否尝试过运行 bind -p 来查看列出的所有键盘快捷键?默认情况下,Mac OS X 上有超过 455 个。

您最喜欢使用 bash 的一个不起眼的技巧、键盘快捷键或 shopt 配置是什么?

0 投票
8 回答
3704 浏览

bash - 抓取每 4 个文件

我有 16,000 张来自 webcan 屏幕抓取器的 jpg,我让它们运行了一年,指向后一年。我想找到一种方法来抓取每 4 个图像,以便我可以将它们放入另一个目录,以便以后将它们变成电影。linux下是否有一个简单的bash脚本或其他方式可以做到这一点。

他们的名字是这样的......

frame-44558.jpg

frame-44559.jpg

frame-44560.jpg

frame-44561.jpg

感谢需要帮助的新手。


似乎奏效了。我的原始帖子中有几个错误。实际上有 280,000 张图像,命名是。/home/baldy/Desktop/webcamimages/webcam_2007-05-29_163405.jpg /home/baldy/Desktop/webcamimages/webcam_2007-05-29_163505.jpg /home/baldy/Desktop/webcamimages/webcam_2007-05-29_163605.jpg

我跑了。cp $(ls | awk '{nr++; if (nr % 10 == 0) print $0}') ../newdirectory/

似乎复制了图像。从外观上看每天70-900。

现在我正在运行 mencoder mf://*.jpg -mf w=640:h=480:fps=30:type=jpg -ovc lavc -lavcopts vcodec=msmpeg4v2 -nosound -o ../output-msmpeg4v2.avi

我会让你知道这部电影的效果如何。

更新:电影没有工作。尽管目录中也有 2008 年,但其中只有 2007 年的图像。webcam_2008-02-17_101403.jpg webcam_2008-03-27_192205.jpg webcam_2008-02-17_102403.jpg webcam_2008-03-27_193205.jpg webcam_2008-02-17_103403.jpg webcam_2008-03-27_194205.jpg webcam_2008-02-17_104403.jpg webcam_2008 -03-27_195205.jpg

如何修改我的 mencoder 线以使其使用所有图像?

0 投票
4 回答
622 浏览

bash - 删除除 4 个最新目录之外的所有目录

我想删除父目录中除 4 个最新目录之外的所有目录。你会如何在 Bash 中做到这一点?

0 投票
9 回答
106423 浏览

linux - 如何在 Linux 上使用 grep 搜索包含 DOS 行尾 (CRLF) 的文件?

我想在 Linux 上使用 grep 搜索包含 DOS 行结尾的文件。像这样的东西:

以上似乎与rn不想要的文字相匹配。

它的输出将通过 xargs 管道传输到 todos 以将 crlf 转换为 lf 像这样

0 投票
12 回答
115246 浏览

bash - Bash 还是 KornShell (ksh)?

我对 *nix 并不陌生,但是最近我在提示符下花了很多时间。我的问题是使用 KornShell (ksh) 或 Bash Shell 有什么好处?使用其中一个的陷阱在哪里?

希望从用户的角度来理解,而不是纯粹的脚本。

0 投票
3 回答
647 浏览

bash - 如何创建使用变量执行大量命令的命令行 (unix/linux) 指令?

我需要重新排列各种目录中的一些内容,但这有点痛苦。为了调试我正在开发的应用程序(一个 ruby​​ 应用程序),我需要一次将一个 gem 移动到我的 gem 文件夹中(长话短说;简而言之:一个坏了,我不知道是哪一个)。

所以我需要做类似的事情:

每次替换“foo”。我如何编写一个简单的 shell 脚本来让我执行以下操作: gemMove("foo") 并为我填补空白?

0 投票
4 回答
5028 浏览

python - 将命令重定向到 Python 中另一个的输入

我想在python中复制它:

(hg cat file.txt 输出最近提交的 file.txt 版本)

我知道如何将文件传输到 gvimdiff,但它不会接受另一个文件:

进入python部分......

当 subprocess 被调用时,它只是<(hg cat file)作为gvimdiff文件名传递。

那么,有没有办法像 bash 那样重定向命令?为简单起见,只需 cat 一个文件并将其重定向到 diff:

0 投票
8 回答
73618 浏览

design-patterns - shell 脚本的设计模式或最佳实践

有谁知道任何关于 shell 脚本(sh、bash 等)的最佳实践或设计模式的资源?