shell初探(二)

2023-05-16

1.if条件语句
一般数值判断用到逻辑运算符>,<的用双小括号

#!/bin/bash
age1=20
age2=30
if (($age1>$age2));then
	echo "age1 is older than age2"
else 
	echo "age1 is younger than age2"
fi

常用系统判断用中括号,如文件判断

#!/bin/bash
file=/data/file.text
if [ -d $file ];then
	echo "file already exist!"
else
	echo "file does not exist! please create it!"
fi

其他用双中括号,当然也可以都用双中括号。
2.输出内容到文件

echo "内容" #直接输出到控制台
echo "内容" >> /data/test.text #在test.text的文档尾部追加内容
echo "内容" > /data/test.text #覆盖test.text的原有内容

3.常用逻辑运算符

逻辑运算符作用
-d判断文件夹是否存在
-f判断文件是否存在
-eq等于
-ne不等于
-lt小于
-gt大于
-le小于等于
-ge大于等于
-a逻辑与运算
-o逻辑或运算
逻辑非运算
-z空字符
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

shell初探(二) 的相关文章

  • shell脚本“x$VARIABLE”中x的用途[重复]

    这个问题在这里已经有答案了 我正在查看一些 shell 脚本 comarison shcu 中 x 的用途是什么 if x USER x RUN AS USER then su RUN AS USER c CATALINA HOME bin
  • 如何复制每个扩展名为 X 的文件,同时保留原始文件夹结构? (类Unix系统)

    我正在尝试将每个 HTML 文件从 src 文件夹复制到 dist 文件夹 但是 我想保留原始文件夹结构 如果 dist 文件夹不存在 我想创建一个新文件夹 如果文件夹不存在则创建 d dist mkdir dist 复制每个文件 cp R
  • 如何从 Linux 的 shell 中删除所有以 ._ 开头的文件?

    确实如标题所示 我已将许多文件从 Mac 复制到 Raspberry Pi 这导致了许多以前缀开头的多余文件 我想删除以以下开头的文件夹中的每个文件 我该怎么做 尝试类似的方法 cd path to directory rm rf 或者 如
  • 在powershell中检查文件是否可读且正常

    我是 powershell 新手 我想检查文件是否可读且正常 在 unix 中 我们可以使用 f 和 r 在一行中完成此操作 例如 以下 shell 脚本函数接受文件名作为参数并检查文件的可读性和规律性 与此等效的 powershell 是
  • 列出破折号中当前定义的函数?

    我想列出当前定义的函数dash 有什么办法可以做到这一点吗 我能想到的最接近的是type它可以用来测试一个函数是否存在 但除此之外我很困惑 附 我说的是dash在这里 不是bash or zsh 看看 exec c 似乎没有 没有 表是静态
  • 在 shell 脚本中连接命令字符串

    我正在维护一个现有的 shell 脚本 它将命令分配给 shell 脚本中的变量 例如 MY COMMAND bin command dosomething 然后接下来 它通过执行以下操作将 参数 传递给 MY COMMAND MY ARG
  • 如何让“grep”从文件中读取模式?

    假设有一个很大的文本文件 我只想打印与某些模式不匹配的行 显然 我可以使用egrep v patter1 pattern2 pattern3 现在 如果所有这些模式都在一个文本文件中怎么办 最好的制作方法是什么egrep从文件中读取模式 g
  • 在 Fish Shell 中设置导出

    我安装了多个版本的 PHP 对于我的正常开发 我总是使用通过自制程序安装的 PHP 5 5 x 在鱼壳里 which php php version gt usr local bin php gt PHP 5 5 8 cli built J
  • 给出 5 个参数,但在终端中只得到 3 个参数

    我想将一个文件传递给一个c 程序 如果我在 IDE 中执行此操作 test string string lt test txt return argc 5 但在终端上我刚刚得到argc 3 看来 这是因为 什么是 lt 意思是 我正在使用
  • xsel -o 对于 OS X 等效项

    是否有一个等效的解决方案可以在 OS X 中抓取选定的文本 就像适用于 Linux 的 xsel o 一样 只需要当前的选择 这样我就可以在 shell 脚本中使用文本 干杯 埃里克 你也许可以安装xsel在 MacOS 上 更新 根据 A
  • awk: hping: 打印 icmp 发起/接收之间的差异

    我有以下输出hping http ports su net hping在 OpenBSD 上 hping icmp ts www openbsd org HPING www openbsd org re0 129 128 5 194 icm
  • 拆分字符串以仅获取前 5 个字符

    我想去那个地点 var log src ap kernelmodule 10 001 100 但看起来我的代码必须处理 ap kernelmodule 10 002 100 ap kernelmodule 10 003 101 等 我想使用
  • ReferenceError:MongoDB shell 中未定义 require

    我尝试通过 Windows 命令 Windows 8 1 从 Mongo 客户端连接 MongoDB 当我使用require 在 javascript 中 我遇到如下错误 有人有同样的问题吗 我有错过任何一个吗require有关的npm安装
  • Bash 解析和 shell 扩展

    我对 bash 解析输入和执行扩展的方式感到困惑 对于输入来说 hello world 作为 bash 中的参数传递给显示其输入内容的脚本 我不太确定 Bash 如何解析它 Example var hello world displaywh
  • 通过powershell运行ADB命令

    所以我尝试通过 powershell 脚本运行一些 ADB 命令 这是我正在尝试做的一个简单示例 adb shell echo in adb shell su root echo you are now root ls cd data da
  • chown:不允许操作

    我有问题 我需要通过 php 脚本为系统中的不同用户设置文件所有者权限 所以我通过以下命令执行此操作 其中 1002 是系统的用户 ID file put contents filename content system chown 100
  • 添加要在给定命令中运行的 .env 变量

    我有一个 env 文件 其中包含如下变量 HELLO world SOMETHING nothing 前几天我发现了这个很棒的脚本 它将这些变量放入当前会话中 所以当我运行这样的东西时 cat env grep v xargs node t
  • OSX bash 最小化窗口

    在 Mac 中并使用 bash shell 我想执行一个包含单个命令 启动 Jupyter Lab 的文件并立即最小化终端窗口 有没有办法在不安装第三方软件的情况下做到这一点 是的 只需使用osascript https ss64 com
  • 如何在 Linux shell 中将十六进制转换为 ASCII 字符?

    假设我有一个字符串5a 这是 ASCII 字母的十六进制表示Z 我需要找到一个 Linux shell 命令 它将接受一个十六进制字符串并输出该十六进制字符串代表的 ASCII 字符 所以如果我这样做 echo 5a command im
  • 分叉/多线程进程|重击

    我想让我的代码的一部分更加高效 我正在考虑让它分叉成多个进程 并让它们一次执行 50 100 次 而不是只执行一次 例如 伪 for line in file do foo foo2 foo3 done 我希望这个 for 循环运行多次 我

随机推荐

  • 在PaaS上代理出现了异常的解决方案

    前言 xff1a 我们的项目基本都是在内网的 xff0c 但是当你要访问第三方的插件或者是和第三方做集成时 xff0c 需要后台与第三方接口做连接的 xff0c 这个时候需要通过公司的代理服务器去访问外网 方法一 xff1a 通过Java添
  • 记一次pip下载包报错ERROR: No matching distribution found for xxx时的解决方案

    前言 当我们使用python自带的pip安装一些包时 xff0c 可能会报以下错误 xff1a 出现这种情况有三种可能 xff1a 第一种可能 xff1a pip的版本过低 xff0c 需要升级一下 xff0c 可以执行以下命令进行尝试 p
  • linux系统的7种运行级别

    Linux系统有7个运行级别 runlevel 运行级别0 xff1a 系统停机状态 xff0c 系统默认运行级别不能设为0 xff0c 否则不能正常启动 运行级别1 xff1a 单用户工作状态 xff0c root权限 xff0c 用于系
  • C语言:求 1! + 2! + 3! + ... + n!(for循环)

    解决问题 xff1a C语言利用 for循环 xff1a 求 1 43 2 43 3 43 43 n 代码实现 include lt stdio h gt int main void int n 61 0 int i 61 0 int m
  • Selenium之Css定位元素

    Selenium之Css定位元素 xff1a cssSelector定位 xff0c 属于CSS高级等位 xff0c 它的定位方式 xff0c 利用选择器进行的 在CSS 中 xff0c 选择器是一种模式 xff0c 用于选择需要添加样式的
  • Ubuntu双系统、ROS、软件安装教程

    一 win10下安装Ubuntu16 04双系统 1 制作系统U盘 下载Ubuntu16 04 我们首先去Ubuntu官网下一个Ubuntu16 04的iso镜像文件 利用软碟通制作 在制作系统U盘的时候我们需要去下一个软件 软碟通 xff
  • Matlab并行计算(新手)

    Matlab并行计算 1 Matlab不会自动开启多核并行2 Matlab并行过程 parpool3 电脑核数与parpool的关系4 说明 matlabpool与partool5 并行实现 parfor或SPMD5 1 parfor xf
  • linux打开防火墙端口

    先打开端口 firewall cmd zone 61 public add port 61 8888 tcp permanent 命令8888就是端口 xff0c 直接替换 然后重启防火墙 firewall cmd reload
  • CSS动画(animation)【一】

    1 动画 xff08 animation xff09 属性简介 2 动画实现 64 keyframes wave 0 css样式 10 css样式 100 css样式 3 示例 xff08 vue xff09 lt template gt
  • Js对象数组查找对象属性的值

    let students 61 name 39 小明 39 age 9 name 39 小李 39 age 14 name 39 小白 39 age 12 let index 61 studens findIndex function st
  • sql汇总

    一 xff1a SQLSERVER 1 dateadd 日减一 update tableName set time 61 DATEADD DAY 1 time 小时加10 update tableName set time 61 DATEA
  • 微信开发者工具 显示区域鼠标不显示的问题

    1 xff1a 打开控制面板 2 xff1a 硬件和声音 3 xff1a 鼠标 4 xff1a 勾选显示鼠标轨迹 OK
  • maven导入本地jar

    cmd 然后进入maven库根目录 mvn install install file Dfile 61 D maven lingpipe 4 1 2 jar DgroupId 61 com aliasi DartifactId 61 lin
  • MergeSort(迭代归并排序)——C语言实现

    前言 xff1a 归并排序跟快速排序有异曲同工之妙 xff0c 都是分治法的典型代表 但是这种分治法都有不小的弊端 xff0c 就是需要占用大量的系统栈 xff0c 很容易造成空间的大量浪费 xff0c 所以就有用迭代来优化递归的操作 这次
  • Spring boot @Async不起作用 的解决方法

    Spring boot 64 Async 为异步方法 但有时候往往会遇到注解不起作用的情况 xff0c 就我遇到的两种情况 xff0c 给出解决方法 1 64 Async 注解的方法不能跟调用它的方法房子一个类中 2 需要在Applicat
  • springboot jar包window服务器启动

    1 在idea中用maven将程序打成jar xff0c 放到运行的目录中 2 去github上面下载winsw xff1a https github com kohsuke winsw releases 将WinSW NET4 exe文件
  • salesforce 接口国内访问慢的解决方案

    最近接到一个客户 xff0c 他们需要用salesforce作为ToC的后端 xff0c 由salesforce直接提供api给前端页面 我们知道一般做salesforce的 xff0c 基本上是作为公司内部应用系统来使用的 xff0c 即
  • sql server跨库连接

    exec sp addlinkedserver kd SQLOLEDB 127 0 0 1 exec sp addlinkedsrvlogin kd 39 false 39 null 39 用户名 39 39 密码 select from
  • shell初探(一)

    1 文件夹创建 span class token function mkdir span p my sheel mkdir是在当前目录下创建文件夹 xff0c p是递归创建目录 2 编辑文件 span class token functio
  • shell初探(二)

    1 if条件语句 一般数值判断用到逻辑运算符 gt lt 的用双小括号 span class token shebang important bin bash span age1 span class token operator 61 s