在bash脚本中使用Linux命令的正确方法

2023-12-25

就其路径而言,在 bash 脚本中使用 Linux 命令的最佳和最正确的方法是什么?

仅使用正确吗ip addr show,依赖于 shell 路径($PATH https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html#tag_08_03),或者我应该首先找到命令的路径(就像whereis ip or command -v ip),将输出分配给某个变量然后使用它?


就我个人而言,我只是依赖 PATH 并调用“裸”命令。

如果您不信任用户的 PATH,可以将其重置为最小默认值:

PATH=$(/usr/bin/getconf PATH)

grep "$pattern" "$file"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在bash脚本中使用Linux命令的正确方法 的相关文章

  • 如何将一个文本文件拆分为多个 *.txt 文件?

    我有一个文本文件file txt 12 MB 包含 something1 something2 something3 something4 有没有办法分开file txt分成 12 个 txt 文件 比方说file2 txt file3 t
  • 任何退出 bash 脚本但不退出终端的方法

    当我使用exitshell 脚本中的命令 该脚本将终止终端 提示符 有什么方法可以终止脚本然后停留在终端中吗 我的剧本run sh预计通过直接获取或从另一个脚本获取来执行 编辑 更具体地说 有两个脚本run2 sh as run sh ec
  • 使用脚本检查 git 分支是否领先于另一个分支

    I have branch1 and branch2我想要某种 git branch1 isahead branch2 这将显示如果branch1已承诺branch2没有 也可能指定这些提交 我无法检查差异原因branch2 is在之前br
  • 在ubuntu中打开spyder

    我想在ubuntu中打开spyder Python IDE 通常我会在 shell 中编写 spyder 它会打开spyder IDE 现在 当我在shell中编写spyder时 它只是换行 什么也没有发生 类似于按 enter 我如何找回
  • bash 将输出重定向到文件,但结果不完整

    重定向命令输出的问题已经被问过很多次了 但是我有一个奇怪的行为 我使用的是 bash shell debian 版本 4 3 30 1 release 并尝试将输出重定向到文件 但并非所有内容都记录在文件中 我尝试运行的 bin 文件是 l
  • 如何根据 Bash 中的 VI 模式更改光标形状?

    我的 bashrc 中有以下行 set o vi 我希望我的光标在插入模式下具有管道形状 在命令模式下具有块形状 就像我在 vimrc 中放置以下内容时在 Vim 中的形状一样 let t SI e 6 q let t SR e 4 q l
  • Bash:将字符串添加到文件末尾而不换行

    如何将字符串添加到文件末尾而不换行 例如 如果我使用 gt gt 它将添加到文件末尾并换行 cat list txt yourText1 root host 37 echo yourText2 gt gt list txt root hos
  • 如何使用 git hook pre-merge-commit 获取原始合并分支名称

    我正在尝试使用新的 git hook pre merge commit 创建一个特定的脚本 但它没有参数 有什么解决方法可以让我获得正在合并的分支的名称吗 例子 在分支 myBranch 上 我调用 git merge testingBra
  • 用于编译和运行 C++ 的 bash 脚本

    我正在尝试进入 C 但必须使用冗长的命令通过命令行运行东西很烦人 所以我想制作一个 bash 脚本来简化过程并运行这些命令 bin bash if 1 start then cd CCPP cd HelloWorld g Wall W We
  • 退出代码大于 255 — 可能吗?

    如果是 在哪个操作系统 shell 或其他操作系统上 考虑以下 Java 程序 我使用 Java 只是作为示例 任何语言都适合这个问题 这更多地与操作系统有关 public class ExitCode public static void
  • 如何并行执行4个shell脚本,我不能使用GNU并行?

    我有4个shell脚本dog sh bird sh cow sh和fox sh 每个文件使用 xargs 并行执行 4 个 wget 来派生一个单独的进程 现在我希望这些脚本本身能够并行执行 由于某些我不知道的可移植性原因 我无法使用 GN
  • 类似 jq 中的 sql join

    我有以下 json id 1 type folder title folder 1 id 2 type folder title folder 2 id 3 type item title item 1 folder 1 id 4 type
  • 为什么 fork 炸弹没有使 android 崩溃?

    这是最简单的叉子炸弹 我在许多 Linux 发行版上执行了它 但它们都崩溃了 但是当我在 android 终端中执行此操作时 即使授予后也没有效果超级用户权限 有什么解释为什么它没有使 Android 系统崩溃吗 一句话 ulimit Li
  • 在 docker 中重定向命令输出

    我想为我的服务器做一些简单的日志记录 它是一个在 Docker 容器中运行的小型 Flask 应用程序 这是 Dockerfile Dockerfile FROM dreen flask MAINTAINER dreen WORKDIR s
  • Slurm:提交到多个节点时出错(“slurmstepd:错误:execve():python:没有这样的文件或目录”)

    我有一个 bash 脚本submit sh用于向 Slurm 服务器提交训练作业 其工作原理如下 正在做 bash submit sh p1 8 config file 将提交一些对应的任务config file至 8 个 GPU 分区p1
  • 通过 bash 命令设置 gitlab-ci.yml 变量

    variables CUSTOM NODE VERSION cat nvmrc 我想要变量CUSTOM NODE VERSION通过内容填充 nvmrc文件 位于项目根目录中 如何在gitlab ci yml file 上面的例子不起作用
  • 以不敏感的方式在 bash 中查找路径

    假设一条路径像 home albfan Projects InSaNEWEBproJECT 尽管事实上不使用这样的名称 有没有办法以不敏感的方式检查路径 我遇到了这个解决方案 但如果可能的话 我想找到一个内置或 gnu 程序 functio
  • 如何从shell脚本自动登录MySQL?

    我有一个 MySQL 服务器 其中有一个用户和密码 我想在 shell 脚本中执行一些 SQL 查询而不指定密码 如下所示 config sh MYSQL ROOT root MYSQL PASS password mysql sh sou
  • 是否有 ADB 命令来检查媒体是否正在播放

    我想使用 ADB 命令检查根植于终端的外部设备中是否正在播放音频 视频 我无法找到任何 ADB 命令 如果有 我尝试过 adb shell dumpsys media player 我想要一个命令来指定视频是否正在运行 您可以使用以下命令查
  • 在 VBA 中捕获 shell 命令的输出值?

    发现这个功能http www cpearson com excel ShellAndWait aspx http www cpearson com excel ShellAndWait aspx 但我还需要捕获 shell 的输出 有什么代

随机推荐

  • 如何在winform中打上绿色勾号或红色叉号?

    有没有一种方法可以在 Windows 窗体中的标签旁边添加绿色勾号或红色十字 基本上我需要显示配置是否成功 我正在使用c Thanks 很容易做到 您可以在文本标签旁边添加两个图像 甚至是我在本示例中使用的标签 然后手动切换Visible财
  • 了解 CompletableFuture::runAsync

    我刚刚读过文档 https docs oracle com javase 8 docs api java util concurrent CompletableFuture html runAsync java lang Runnable
  • 交替行的 jQuery 表格样式与 CSS 表格样式

    对于服务器上生成的奇数 偶数行 使用带有类的 CSS 更快 更好 还是使用 jQuery 设置条纹样式更快 更好document Ready 我想开始使用 jQuery 来使我的标记不那么混乱 但我不确定性能 特别是对于较大 最多 200
  • 在 JS 中计算直方图的相似值的最佳方法是什么?

    我正在尝试创建随机生成的数据的直方图 因此目前我正在执行以下操作 假设创建了以下数组 returns 0 0024 0 0231 0 014 0 0005 0 008 我使用以下方法遍历数组 returnsRounded x Math ro
  • 这种广度优先搜索可以变得更快吗?

    我有一个数据集 它是一个大型未加权循环图 循环发生在大约 5 6 条路径的循环中 它由大约 8000 个节点组成 每个节点有 1 6 个 通常大约 4 5 个 连接 我正在进行单对最短路径计算 并实现了以下代码来进行广度优先搜索 from
  • 从资源设置应用程序图标时应用程序大小会增加

    我有一个大小为 16kb 的应用程序 通过 项目属性 菜单添加图标资源后 应用程序的大小如预期增加到 299kb 现在 在 属性 应用程序 下 当我将图标文件设置为 Resource IconName ico 时 文件大小再次增加到 581
  • 带有临时链接的提交按钮

    好的 我不知道我在做什么 我要回去帮助人们找工作 我在 Fiddle 中运行了所有内容 并将其迁移到两个不同的编辑器 一切都显示正常 但没有任何反应 没有警报 没有单击提交 我在我的笔记本电脑上尝试了一下 显示了两个页面 一个页面上有 pr
  • D3 - 重置 SVG 对象动画

    我正在用交互式标记制作一个图表 每个标记都沿着侧轴开始 单击时会移动到沿线的位置并增大尺寸 我让图标移动和增长 但在重置图表时遇到问题 我可以通过第二次单击使图标返回到其原始位置 但是第二次单击后图标将不再响应单击 我怀疑这很简单 但我没有
  • 防止 git checkout 覆盖文件

    另一位开发人员将他的 rvmrc 检查到了 git 存储库中 我已经删除了它并将其添加到 gitignore 但每次需要返回时它都会覆盖我的 rvmrc 我使用的是 OSX 所以我发现我可以使用 OSX 文件锁定机制 获取信息中的 锁定 复
  • 如何在数据库中保存标签(关键字)?

    我想使用 php 和 mysql 创建一个简单的标签系统 以便用户可以通过表单添加一些标签 我的问题是我应该将标签保存为单个数据库列中的数组吗 例如 tag1 tag2 tag3 或者我应该在数据库表中有单独的列 我应该在每列中保存每个标签
  • PowerShell 按嵌套字段选择和分组

    我有以下对象结构 resources Array resource PSCustomObject 名称 字符串 Tags PSCustomObject 所有者 字符串 more 所以我可以做 resources 0 Tags Owner并获
  • 在 iOS 中使用 AVCapture 捕获视频时进行缩放

    我正在使用 AVCapture 捕获视频并保存它 但我需要提供缩放选项 例如捏合缩放或通过缩放按钮 此外 视频的保存方式应与显示的方式完全相同 我的意思是当放大时 应以缩放的方式保存 如有任何帮助 链接将不胜感激 我设置 AVCapture
  • perl 正则表达式中的 OR 条件

    我正在尝试编写一个脚本 通过 Perl 中的正则表达式执行 OR 函数 我编写了一段代码 其中如果字符串包含 D 或 E 后跟 P 则应该打印 D或E后跟P 否则 D或E后不跟P 假设如果我给出 s ABCDEABCDEPABCDEAB 它
  • SameSite Cookie 标头和 Websocket 不起作用

    在我们设置 SameSite None 之前 我们的游戏无法在任何第 3 方网站上运行 正如这段视频中所示 https youtu be AYCvCrZyDk https youtu be AYCvCrZyDk 网站已加载 但网络套接字无法
  • OCaml 中的惰性“n 选择 k”

    作为枚举集合的更大问题的一部分 我需要编写一个 OCaml 函数 choose 它接受一个列表并输出为由该列表的元素组成的所有可能的大小为 k 的序列的列表 不重复序列 这可以可以通过排列相互获得 它们在最终列表中的顺序无关 例如 choo
  • 如何在reactjs中使用formData添加多个图像

    我是 Reactjs 新手 我正在使用环回存储连接器来存储图像 文件 现在我的问题是使用上传多个文件formData my code constructor props super props this state car photo Ca
  • 按项目分组时,测试显示在测试资源管理器的“外部”类别下

    Whenever I try to run tests on Test Explorer from Visual Studio 2012 SOME test are being categorized as External even th
  • 在两个数字和一个稀有数字之间生成随机数

    我可以使用这个在c中生成两个数字之间的随机数 arc4random high low 1 low 那么现在我的要求是 我想让一个数字变得稀有 这意味着如果 高 5 低 1 稀有 3 比 3 出现的次数比 1 2 4 和 5 少得多 Than
  • #1062 - 密钥 1 的重复条目“1” - 未找到重复条目

    因此 当尝试向字段添加自动增量时 会出现 1062 Duplicate entry 1 for key 1 我尝试删除主键并重新添加它 效果很好 我认为如果有重复项就不会 但是当我尝试向该字段添加自动增量时 它会抛出错误 它为我提供了一个运
  • 在bash脚本中使用Linux命令的正确方法

    就其路径而言 在 bash 脚本中使用 Linux 命令的最佳和最正确的方法是什么 仅使用正确吗ip addr show 依赖于 shell 路径 PATH https pubs opengroup org onlinepubs 96999