在PHP中,字符串连接在一起如下:
$foo = "Hello";
$foo .= " World";
Run Code Online (Sandbox Code Playgroud)
在这里,$foo成为"Hello World".
在Bash中如何实现?
我正在尝试使用Bash(使用Ubuntu)获得一个if声明:
#!/bin/bash
s1="hi"
s2="hi"
if ["$s1" == "$s2"]
then
echo match
fi
Run Code Online (Sandbox Code Playgroud)
我尝试了各种形式的if语句,使用[["$s1" == "$s2"]],有和没有引号,使用=,==和-eq,但我仍然得到以下错误:
[hi:命令未找到
我查看了各种网站和教程并复制了这些内容,但是它不起作用 - 我做错了什么?
最后,我想说是否$s1包含$s2,所以我该怎么做?
我刚刚解决了空位...:/我怎么说包含?
我试过了
if [[ "$s1" == "*$s2*" ]]
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
我有这个脚本,但我不知道如何获得打印输出中的最后一个元素:
cat /proc/cpuinfo | awk '/^processor/{print $3}'
Run Code Online (Sandbox Code Playgroud)
最后一个元素应该是CPU的数量减去1.
我正在寻找一个命令行解决方案,它将返回localhost的主(第一)IP地址,而不是127.0.0.1
该解决方案至少适用于Linux(Debian和RedHat)和OS X 10.7+
我知道ifconfig两者都可用,但它们的输出在这些平台之间并不一致.
我有一个包含目录名称的文件:
my_list.txt :
/tmp
/var/tmp
Run Code Online (Sandbox Code Playgroud)
我想在我添加目录名之前检查Bash,如果该名称已存在于文件中.
我试图比较bash中的字符串.我已经找到了关于如何在stackoverflow上执行此操作的答案.在我尝试的脚本中,我使用的是Adam在提到的问题中提交的代码:
#!/bin/bash
string='My string';
if [[ "$string" == *My* ]]
then
echo "It's there!";
fi
needle='y s'
if [[ "$string" == *"$needle"* ]]; then
echo "haystack '$string' contains needle '$needle'"
fi
Run Code Online (Sandbox Code Playgroud)
我也尝试过你可以在第二篇文章中找到的ubuntuforums方法
if [[ $var =~ regexp ]]; then
#do something
fi
Run Code Online (Sandbox Code Playgroud)
在这两种情况下我都收到错误:
[[: not found
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
我想编写一个Unix shell脚本,如果另一个字符串中有一个字符串,它将执行各种逻辑.例如,如果我在某个文件夹中,请分支.有人可以告诉我如何做到这一点?如果可能的话,我想让这不是特定于shell的(即不仅仅是bash),但如果没有别的方法可以做到这一点.
#!/usr/bin/env sh
if [ "$PWD" contains "String1" ]
then
echo "String1 present"
elif [ "$PWD" contains "String2" ]
then
echo "String2 present"
else
echo "Else"
fi
Run Code Online (Sandbox Code Playgroud) ${testmystring}我的.sh脚本中有一个字符串,我想检查这个字符串是否包含另一个字符串.
if [[ ${testmystring} doesNotContain *"c0"* ]];then
# testmystring does not contain c0
fi
Run Code Online (Sandbox Code Playgroud)
我怎么能这样做,即什么是NotContain应该是什么?
如果我在shell变量中有文本,请说$a:
a="The cat sat on the mat"
Run Code Online (Sandbox Code Playgroud)
如何使用Linux shell脚本搜索"cat"并返回4,如果找不到则返回-1?
说一个字符串可能就像"ab''c''d".如何检查字符串中是否包含单/双引号和空格?