shell 重定向

2023-11-05

输入重定向

默认的输入文件是标注输入stdin 0,
可以使用下面的方法重定向输入:
command < filename
这样就会从filename文件中读取数据送给command命令使用.
例如 cat /etc/passwd

输出重定向

默认的输出文件是标准输出stdout 1,
可以使用下面的方法重定向输出:
command > filename
这样就能把command的结果输出到filename文件中.
例如 ls > /tmp/output.txt

错误重定向

默认的标准错误输入到stderr 2,
可以使用下面的方法重定向错误:
command 2> filename
例如 find / -iname “*.conf” 2>fileerrors.txt

注: 创建一个新文件的方法:
> newfile.name

丢弃信息

command >/dev/null
丢弃输出信息
command 2>/dev/null
丢弃错误信息
command &>/dev/null
同时丢弃输出信息和错误信息
例如:
grep vivek /etc/passwd >/dev/null && echo “Vivek found” || “Vivek not
found”

here document

herre document告诉shell去从当前的由特定字符串包含起来的字符串中读取内容.语法如下:

command <<HERE
text1
text2
testN
$varName
HERE

这里的HERE可以换成其他任何字符.
例子:
wc -w <<EOF
This is a test.
Apple juice.
100% fruit juice and no added sugar, colour or preservative.
EOF
结果: 16

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

shell 重定向 的相关文章

  • 在 shell 脚本中将脚本目录更改为用户的 homedir

    在我的 bash 脚本中 我需要将当前目录更改为用户的主目录 如果我想更改为用户的foo主目录 从命令行我可以执行以下操作 cd foo 效果很好 但是当我从script它告诉我 bar sh line 4 cd foo No such f
  • 终止 ssh 会话会终止正在运行的进程

    我正在使用 ssh 连接到我的 ubuntu 服务器 我使用命令启动编码程序 然而 似乎当我的 ssh 会话关闭时 因为我在进入睡眠状态的笔记本电脑上启动它 有没有办法避免这种情况 当然 阻止我的笔记本电脑休眠并不是永久的解决方案 运行你的
  • 从配置文件中读取分配

    我有配置文件 其中每行都包含用分号分隔的分配 像这样的东西 模仿正常的 shell 分配 VAR1 1 VAR2 2 VAR1 3 VAR2 4 每行包含相同的变量 并且旨在单独处理 这些配置文件都在系统管理员的控制之下 所以使用eval现
  • 基于文件位置而不是当前工作目录的相对路径[重复]

    这个问题在这里已经有答案了 Given some txt dir cat sh cat sh 的内容如下 cat some txt 然后运行 cat sh inside dir运行时工作正常 dir cat sh与dir才不是 我预计这是由
  • 如何在 PHP 中执行 shell 脚本?

    我有一个脚本 var www myscript sh它创建文件夹并运行命令svn update对于我的项目 我需要通过在浏览器中的 PHP 文件中调用它来执行此脚本 即本地主机 test php 我尝试使用函数shell exec and
  • 如何编写bash脚本来设置全局环境变量?

    最近写了一个设置环境变量的脚本 看一下 bin bash echo Pass a path read path echo path defaultPath home whoami Desktop if n path then export
  • 使用 unix ksh shell 脚本或 perl 脚本监视文件夹中的新文件并触发 perl 脚本

    我已经在谷歌搜索和溢出了一段时间 但找不到任何可用的东西 我需要一个脚本来监视公共文件夹并在创建新文件时触发 然后将文件移动到私有位置 我有一个 samba 共享文件夹 exam ple 在 UNIX 上映射到X 在窗户上 在某些操作中 t
  • Linux 从设备本身运行的脚本卸载设备

    我在路径中安装了一个 iso 映像 mnt iso 在这个 iso 中我有一个安装脚本 install sh 我从 iso 运行安装脚本 最后脚本询问用户是否要卸载 iso 本身 如果用户按 y 脚本将执行以下代码 cd umount mn
  • 如何在 Linux/Unix 上根据文件类型添加文件扩展名?

    这是一个关于 Unix shell 脚本 任何 shell 的问题 但任何其他 标准 脚本语言解决方案也将受到赞赏 我有一个充满文件的目录 其中文件名是这样的哈希值 fd73d0cf8ee68073dce270cf7e770b97 fec8
  • 无论 Rosetta 如何,获取 M1 Mac 的真实架构

    我需要检索 Mac 的真实架构 无论该进程是否通过 Rosetta 运行 现在在 Node js 中 process arch回报x64并在外壳中 uname m回报x86 64 感谢 Ouroborus 这张纸条 https develo
  • 使用 find 和 xargs 交互删除文件

    我正在尝试将一些文件从 find 命令传输到交互式删除命令 以便我可以仔细检查要删除的文件 但我遇到了一些麻烦 find name print0 xargs 0 rm i 我认为上面的方法可行 但我只得到一串 rm remove regul
  • 如何从脚本编辑 /etc/sudoers?

    我需要编辑 etc sudoers从脚本中添加 删除白名单中的内容 假设我有一个可以处理普通文件的命令 我如何将其应用到 etc sudoers 我可以复制并修改它 然后有visudo用修改后的副本替换原始版本 通过提供我自己的脚本 EDI
  • Ansible - 当至少一项在循环中失败时跳过任务

    我正在使用 sqlplus 运行一些 SQL 脚本 在运行之前 我从该目录获取所有 sql 文件列表并将其存储在sql out如下所示 问题是 如果其中一个 sql 脚本失败 其余 sql 脚本仍然会执行 如果任何一个脚本失败 我想完全跳过
  • 在ubuntu中打开spyder

    我想在ubuntu中打开spyder Python IDE 通常我会在 shell 中编写 spyder 它会打开spyder IDE 现在 当我在shell中编写spyder时 它只是换行 什么也没有发生 类似于按 enter 我如何找回
  • 在 Linux 中重新启动时,新创建的文件变为 0 kb(数据被覆盖为空)

    我遇到了一个奇怪的问题 这让我发疯 当前的任务是在 root 用户第一次登录时启动一组文件 并在同一用户第二次登录时启动另一组文件 我决定使用 profile 和 bashrc 文件 并在第一次登录期间发生的任务结束时重新加载 bashrc
  • 有哪些基于对象的 shell?

    我打算写一个面向对象的shell 基于Python 我已经有很多想法了 但在实现它之前 我想通过一些现有的 shell 来激发我的灵感 我所说的面向对象的基本意思是 参数不仅仅是字符串数组 而且是对象数组 返回值也是一个对象 不仅有 std
  • 如何使用 git hook pre-merge-commit 获取原始合并分支名称

    我正在尝试使用新的 git hook pre merge commit 创建一个特定的脚本 但它没有参数 有什么解决方法可以让我获得正在合并的分支的名称吗 例子 在分支 myBranch 上 我调用 git merge testingBra
  • 在 bash 中添加(收集)退出代码

    我需要依赖于脚本中的几个单独的执行 并且不想将它们全部捆绑在一个丑陋的 if 语句中 我想使用退出代码 每次执行并添加它 最后 如果这个值超过阈值 我想执行一个命令 伪代码 ALLOWEDERROR 5 run something RESU
  • shell中如何分割字符串

    我有一个变量作为 string ABC400p2q4 我怎样才能分开ABC400 and p2q4 我需要将它分成两个变量 结果我得到 echo var1 ABC400 echo var2 p2q4 可以用任何字母字符代替 ABC 可以用任
  • 如何从 LaTeX 执行 shell 脚本?

    我正在尝试在 LaTeX 中执行以下操作 documentclass article begin document execute usr local bin my shell script sh end document 想法是执行 us

随机推荐

  • ios逆向(二)frida-ios-dump一键砸壳详细版

    写在前面 本教程为本人实际操作记录 在此感谢庆哥官方 一条命令完成砸壳 github frida ios dump ios端配置 打开cydia 添加源 https build frida re 打开刚刚添加的源 安装 frida 安装完成
  • 注册表关闭windows安全中心_关闭win10自动更新的三个小妙招,再也不用被自动下载更新打扰了...

    对于Windows 10操作系统 微软默认设置为自动下载并安装Windows 以确保系统正常运行并保持其安全性 但是在某些情况下 需要关闭Windows 10更新或在Windows 10上禁用自动更新安装 这该如何办呢 本文目录 关于Win
  • Linux系统中文件查找find函数用法

    find name april 在当前目录下查找以april开始的文件 find name april fprint file 在当前目录下查找以april开始的文件 并把结果输出到file中 find name ap o name may
  • JAVA导入txt文件并按行读取内容封装成实体以及导出下载

    业务背景 前台页面支持用户上传txt类型的文件 用做一些服务的配置 我们需求将改文件解析 读取里面的内容 并封装成接口参数 再调第三方接口 上代码 PostMapping uploadHost RequiresRoles admin pub
  • p9plus升级鸿蒙教程,华为P9 Plus(VIE-AL10 全网通 EMUI 5.0)一键ROOT图文详解教程

    伴随着安卓刷机越来越流行 很多安卓用户都喜欢上了这种可以自定个性系统的行为 那么华为P9 Plus VIE AL10 全网通 EMUI 5 0 怎么获取ROOT权限 华为P9 Plus VIE AL10 全网通 EMUI 5 0 一ROOT
  • IMEI、IMSI、ICCID、SN是什么?意义和区别?通信模组或手机的唯一识别码

    最近在做几个4G移动端的产品 初入行门有很多生涩的名词 想获取一个全球唯一ID作为设备后台管理编号 就扯出了 IMEI IMSI ICCID SN 这几个东西 IMEI IMEI 国际移动设备识别码 International Mobile
  • 如何正确理解三极管的放大区、饱和区、截止区

    作为电子初学者来说 模拟电路非常重要 模拟电路的三极管的应用是重中之重 能正确理解三极管的放大区 饱和区 截止区是理解三极管的标志 很多初学者都会认为三极管是两个 PN 结的简单凑合 如下图 这种想法是错误的 两个二极管的组合不能形成一个三
  • 多线程和高并发介绍

    多线程和高并发介绍 文章目录 多线程和高并发介绍 前言 一 什么是多线程 1 多线程介绍 2 多线程实现原理 3 白话文解释多线程 4 多线程存在的问题 二 什么是高并发 1 高并发介绍 2 如何提升系统的并发能力 三 多线程和高并发 总结
  • es6对象多层解构、数组解构

    对象类 基础对象解构 const obj a 1 b 2 c 3 const a b c obj console log a b c 1 2 3 多层对象解构 const obj a 1 b 2 c 3 d d1 4 const a b c
  • qt调用Linux脚本范例,QT下实现对Linux Shell调用的几种方法

    使用QProcess QThread include int main QProcess execute ls return 0 QProcess poc new QProcess poc gt start ping 222 207 53
  • [极客大挑战 2019]Knife

    极客大挑战 2019 Knife 主界面 很显然 题目已经内置了一个一句话木马 我们只需要用蚁剑连接即可 但是我在连接蚁剑时报错了 错误如下 经过搜索 原来是开启了手动代理模式 在菜单中关闭即可 更改后成功进入 在根目录下找到flag文件
  • 20050405:什么都要会啊

    为了要修补门户的页面 今天学会了三样 怎么用Photoshop切割图片并存入网页 怎么用DW在表格中平铺背景图片 在么用Tomcat部署网站 真的是什么都要会啊 今天下午在漫网论坛上发了封贴子 晚上却被删了 原贴如下 关于日本动漫中女性角色
  • C 语言实现简单有限状态机

    简介 常说的状态机是有限状态机 FSM 是表示有限个状态以及在这些状态之间的转移和动作等行为的数学计算模型 三个特征 状态总数 state 是有限的 任一时刻 只处在一种状态之中 某种条件下 会从一种状态转变 transition 到另一种
  • KVM快照

    KVM快照就是将虚拟机在某一个时间点上的磁盘内容 全部 或部分 内存和设备状态保存一下 以备将来恢复之用 一 内存状态快照 只是保持内存和虚机使用的其它资源的状态 如果虚机状态快照在做和恢复之间磁盘没有被修改 那么虚机将保持一个持续的状态
  • 不安装Visual Studio,只用Windows SDK搭建VC环境

    首先你需要下载的是 Microsoft Windows SDK for Windows 7 and NET Framework 4 下载以后你得到的是一个网络安装文件 确保网络的连接 安装Windows SDK 7 1 注意得到的Windo
  • git的分支

    1 master主分支 在初始化本地Git仓库的时候 Git默认已经帮我们创建了一个名字叫做master的分支 通常我们把这个master分支叫做主分支 在实际工作中 master主分支的作用是 用来保存和记录整个项目已完成的功能代码 因此
  • 图形基础-叉乘

    using System Collections using System Collections Generic using UnityEngine public class Test MonoBehaviour public Vecto
  • flink部署三种模式(案例操作)

    文章目录 一 Local模式 1 应用场景 2 操作 二 Standalone 模式 1 应用场景 2 部署模式 2 1 会话模式 2 1 1 安装规划 2 1 2 修改配置 2 1 3 分发安装目录 2 1 4 启动集群 2 1 5 访问
  • xp的服务器系统怎么安装win7系统教程,把xp系统重装成win7最简单实用的方法

    xp系统重装成win7 很多网友现在想把把 因为微软对xp系统的停止服务 很多人都想安装win7系统了 xp系统重装win7有什么方法好 小编推荐在线重装系统 那就是系统一键重装大师 这个软件功能非常强大 现在就让小编告诉大家把xp系统重装
  • shell 重定向

    输入重定向 默认的输入文件是标注输入stdin 0 可以使用下面的方法重定向输入 command lt filename 这样就会从filename文件中读取数据送给command命令使用 例如 cat etc passwd 输出重定向 默