文档章节

linux 特殊字符用法

a
 allantaylor81
发布于 2015/04/18 21:43
字数 316
阅读 8
收藏 0
点赞 0
评论 0

#!/bin/sh  () [] {}

# (   ) 指令群组 (command group)

(a=1;echo $a)

#也可以初始化数组用
c=(1 2 3)

# ${c[*]} ${c[@]} 代表数组长度
for i in ${c[*]}
do
  echo $i
done

echo ${c[0]}
echo ${c[*]}
echo ${c[@]}
echo ${#c[*]}


#扩展四则运算
a=1;
b=2;
c=3;
 
((a=a+1));
echo $a;
 
a=$((a+1,b++,c++));
echo $a,$b,$c

#扩展逻辑运算
a=1;
b="ab";
 
 
echo $((a>1?8:9));
 
((b!="a"))&& echo "err2";
((a<2))&& echo "ok";

#扩展流程控制语句(逻辑关系式)
num=100;
total=0;
 
for((i=0;i<=num;i++));
do
    ((total+=i));
done
echo $total;
 
total=0;
i=0;
while((i<=num));
do
    ((total+=i,i++));
done
echo $total;
 
if((total>=5050));then
    echo "ok";
fi


# $(command)
var=$(ps -ef | grep phppost)
echo $var


# [] 比较运算符
# [] 引用数组

if [ $a == $b ];then
 echo '='
fi

arr[1]='hello world'
arr[2]='wangbin'

echo ${arr[1]}

# [[ ]] 组合逻辑判断条件用
a=3

#if [[ $a != 1 &&  $a !=2 ]];then
#  echo 'right'
#fi

if [[ $a != 1 && $a != 2 ]];then # if no [[]] if [ $a != 1 ] && [ $a != 2 ]
 
        echo 'right'
fi


# {} 扩展参数 用逗号隔开的参数会扩展为独立的多个参数
  
# cp source.{list,log}

# ${}
file="/dir1/dir2/dir3/my.file.txt"


echo ${file#*/}
echo ${file%/*}

# 是去掉左邊(在鑑盤上 # 在 $ 之左邊)
#% 是去掉右邊(在鑑盤上 % 在 $ 之右邊)
#單一符號是最小匹配﹔兩個符號是最大匹配。

echo ${file:0:5}

#        ${#var} 计算长度 ${A[*]} ${A[@]}

© 著作权归作者所有

共有 人打赏支持
a
粉丝 2
博文 120
码字总数 2912
作品 0
东城
linux shell 的here document 用法 (cat << EOF)

Here Document 是在Linux Shell 中的一种特殊的重定向方式,它的基本的形式如下 它的作用就是将两个 delimiter 之间的内容(Here Document Content 部分) 传递给cmd 作为输入参数。 比如在终端...

GreatFish
2013/07/25
0
3
linux grep正则学习(转载)

虽然正则表达式经常都在用,但是很少能够静下心来仔细的总结一下。最近看了一个台湾人的网站叫做鸟哥Linux私房菜,关于正则表达式的描述挺详细的。在此,我进行一下总结,如果想仔细的学习正...

开卷书生
2014/08/01
0
0
16个桌面Linux用户必须要知道的Shell命令

有些人仍然会有这中愚蠢的想法,他们认为使用Linux就必须使用Linux shell命令。胡说!你可以不懂得任何Linux命令,比如说ps,grep,ls等,但是你仍然可以使用很多现代的Linux桌面发行版。 Li...

王振威
2012/05/06
0
28
Bash, 双引号,单引号,感叹号

当要引用一个变量的值时,一般推荐使用双引号。使用双引号除了变量名[2]前缀($)、后引符(`)和转义符()外,会使shell不再解释引号中其它所有的特殊字符。[3] 用双引号时$仍被当成特殊字符,允...

ChenQi
2012/07/19
0
4
usermod命令,用户密码管理和mkpasswd命令

usermod命令 命令usermod是更改用户属性的,用法:usermod [选项] [username] -u:更改用户的uid; -g:更改用户的gid或组名; -d:更改用户的家目录; -s:更改用户的shell; -G:添加扩展组; ...

风流花生
2017/11/01
0
0
linux系统计算从1加到100之和思路风暴

原题:通过shell编程或命令行方式求1+2+3...+100=?的和来活学活用shell及linux命令。 阅读完本博文,你将熟悉shell编程中的for语句、while语句及until等语句的使用语法和应用方法。在linux的...

李长春
2012/02/02
0
0
Linux通配符与特殊符号知识大全汇总

内容来源《跟老男孩学习Linux运维:核心基础实战》,预计于2018年7月出版,敬请期待,QQ群385168604交流。 Linux菜鸟及新手的福音,相当于是鸟哥私房菜(太老旧了)的2018最新企业级实战升级版...

老男孩oldboy
05/10
0
0
总结五:Linux文件系统之层次结构及目录管理命令

总结五:Linux文件系统之层次结构及目录管理命令 1、FHS:(Filesystem Hierarchy Standard)--文件系统层次结构标准 /bin,/sbin:系统自身启动和运行时可能会用到的核心二进制命令 /lib:共享...

hironepiece
06/26
0
0
Linux Shell 文本处理工具集锦

Linux Shell 文本处理工具集锦 本文将介绍Linux下使用Shell处理文本时最常用的工具: find、grep、xargs、sort、uniq、tr、cut、paste、wc、sed、awk; 提供的例子和参数都是最常用和最为实用...

平凡之路
2014/10/13
0
0
学习shell脚本之前的基础知识一

日常的linux系统管理工作中必不可少的就是shell脚本,如果不会写shell脚本,那么 你就不算一个合格的管理员。目前很多单位在招聘linux系统管理员时,shell脚本的编写是 必考的项目。有的单位...

天行健J
2012/11/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

我的成长记录(一)

今天突然精神抖擞,在我的博客下新开一项分类>成长记录,专门记录每隔一段时间我的一点感悟吧。因为今天才专门花时间新开这样一个分类,所以以前有过的一些感悟没有记录下来,现在已经想不起...

dtqq
11分钟前
0
0
机器学习管理平台 MLFlow

最近工作很忙,博客一直都没有更新。抽时间给大家介绍一下Databrick开源的机器学习管理平台-MLFlow。 谈起Databrick,相信即使是不熟悉机器学习和大数据的工程湿们也都有所了解,它由Spark的...

naughty
今天
0
0
idea tomcat 远程调试

tomcat 配置 编辑文件${tomcat_home}/bin/catalina.sh,在文件开头添加如下代码。    CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7829" Idea端配......

qwfys
今天
1
0
遍历目录下的文件每250M打包一个文件

#!/usr/bin/env python # -*- utf-8 -*- # @Time : 2018/7/20 0020 下午 10:16 # @Author : 陈元 # @Email : abcmeabc@163.com # @file : tarFile.py import os import tarfile import thr......

寻爱的小草
今天
1
0
expect同步文件&expect指定host和要同步的文件&构建文件分发系统&批量远程执行命令

20.31 expect脚本同步文件 expect通过与rsync结合,可以在一台机器上把文件自动同步到多台机器上 编写脚本 [root@linux-5 ~]# cd /usr/local/sbin[root@linux-5 sbin]# vim 4.expect#!/...

影夜Linux
今天
1
0
SpringBoot | 第九章:Mybatis-plus的集成和使用

前言 本章节开始介绍数据访问方面的相关知识点。对于后端开发者而言,和数据库打交道是每天都在进行的,所以一个好用的ORM框架是很有必要的。目前,绝大部分公司都选择MyBatis框架作为底层数...

oKong
今天
13
0
win10 上安装解压版mysql

1.效果 2. 下载MySQL 压缩版 下载地址: https://downloads.mysql.com/archives/community/ 3. 配置 3.1 将下载的文件解压到合适的位置 我最终将myql文件 放在:D:\develop\mysql 最终放的位...

Lucky_Me
今天
2
0
linux服务器修改mtu值优化cpu

一、jumbo frames 相关 1、什么是jumbo frames Jumbo frames 是指比标准Ethernet Frames长的frame,即比1518/1522 bit大的frames,Jumbo frame的大小是每个设备厂商规定的,不属于IEEE标准;...

问题终结者
今天
2
0
expect脚本同步文件expect脚本指定host和要同步的文件 构建文件分发系统批量远程执行命令

expect脚本同步文件 在一台机器上把文件同步到多台机器上 自动同步文件 vim 4.expect [root@yong-01 sbin]# vim 4.expect#!/usr/bin/expectset passwd "20655739"spawn rsync -av ro...

lyy549745
今天
1
0
36.rsync下 日志 screen

10.32/10.33 rsync通过服务同步 10.34 linux系统日志 10.35 screen工具 10.32/10.33 rsync通过服务同步: rsync还可以通过服务的方式同步。那需要开启一个服务,他的架构是cs架构,客户端服务...

王鑫linux
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部