#!/bin/bash

# online test tool: http://www.shucunwang.com/RunCode/shell/

name="pxy"
#Attention for variables' names:
#1. No space between "name" and "="
#2. First letter must be a-z, A-Z
#3. No space or 标点符号punctuation in it

# for file in 'ls /etc'
# list all files' names in /etc. Also assignment

#echo $name
echo ${name}
# when using a variable, add '$' or '${}'(better)
# 第二次赋值不需要在变量前加$

for skill in Ada Coffe Action Java; do
echo "I am good at ${skill}Script"
done
# 加花括号是为了帮助解释器识别变量的边界
# 如果不加,上例中解释器就会把$skillScript当成一个变量(其值为空)
# 加的话就可以正确输出了

readonly name
# then its value cann't be changed

unset name
# delete a variable. cann't delete readonly

#******************************
# 字符串:单引号、双引号、无引号都可以
# 单引号:1) 任何字符都会原样输出;2)其中不能出现单引号(变量、转义符无效)
# 双引号:可以有变量和转义字符
name='pxy\n'
fullName="you are \"$name\", right?"
echo $fullName

# 拼接字符串:直接写
name1="I am "${name}
name2=${name}" is me"

# 获取字符串长度
echo ${#name}

# 截取字符串。${字符串名字:start:size}
name="01234567"
echo ${name:2:3}
# output 234

# 查找子串。子串此处为r,输出为1
string="runoob is a great company"
echo `expr index "$string" r`

#******************************
# 数组:
# 定义:1) 数组名=(值1 值2 ... 值n)或者用换行的方式
# 2) 可以单独定义数组的各个分量,可以不使用连续的下标,而且下标的范围没有限制。
arr=(1 2 3)
# get an item. '@' means all items.
echo ${arr[0]}
echo ${arr[@]}
# get length of an item or an array
echo ${#arr[0]}
# for array
echo ${#arr[@]}
echo ${#arr[*]}
#******************************

shell-code-1的更多相关文章

  1. shell code

  2. bash shell while语法

    在编写脚本时,一定要注意空格 基本语法: while [ condition ] do command1 command2 command3 done condition为true时命令1到命令3将会 ...

  3. 我是如何通过CSRF拿到Shell的

    织梦内容管理系统(DedeCms) 以简单.实用.开源而闻名,是国内最知名的PHP开源网站管理系统,也是使用用户最多的PHP类CMS系统,在经历多年的发展,目前的版本无论在功能,还是在易用性方面,都有 ...

  4. 爆路径写后门拿shell的一些姿势

    [PhpMyAdmin后台拿Shell]CREATE TABLE `mysql`.`xiaoma` (`xiaoma1` TEXT NOT NULL );INSERT INTO `mysql`.`xi ...

  5. Shell 输出第五行的内容

    目录 Shell 输出第五行的内容 题目 题解-awk 题解-sed Shell 输出第五行的内容 题目 写一个 bash脚本以输出一个文本文件 nowcoder.txt 中第5行的内容. 示例: 假 ...

  6. Web Application Penetration Testing Local File Inclusion (LFI) Testing Techniques

    Web Application Penetration Testing Local File Inclusion (LFI) Testing Techniques Jan 04, 2017, Vers ...

  7. CentOS 6.3下Samba服务器的安装与配置方法(图文详解)

    这篇文章主要介绍了CentOS 6.3下Samba服务器的安装与配置方法(图文详解),需要的朋友可以参考下   一.简介  Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件, ...

  8. Webshell实现与隐藏探究

    一.什么是webshell webshell简介 webshell,顾名思义:web指的是在web服务器上,而shell是用脚本语言编写的脚本程序,webshell就是就是web的一个管理 工具,可以 ...

  9. C++调用python

    本文以实例code讲解 C++ 调用 python 的方法. 本文在util.h中实现三个函数: 1. init_log: 用google log(glog)初始化log 2. exe_command ...

  10. PE工具

    PE编辑工具 Stud_PE v. 2.4.0.1 PE工具,用来学习PE格式十分方便. http://www.cgsoftlabs.ro/ 汉化版:http://bbs.pediy.com/show ...

随机推荐

  1. sQL存储过程的优缺点

    目前具体的项目中没有使用sql存储过程,都用的封装好的框架,简单说下存储过程的优缺点. 优点: 1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般 SQL 语句每执行一次就编 ...

  2. 洛谷 P1031 均分纸牌

    P1031 均分纸牌 这道题告诉我们,对于实在想不出算法的题,可以大胆按照直觉用贪心,而且在考试中永远不要试着去证明贪心算法,因为非常难证,会浪费大量时间. (这就是你们都不去证的理由??) 这道题贪 ...

  3. 命令行视频下载工具 you-get 和 youtube-dl

    you-get 和 youtube-dl 都是基于 Python 的命令行媒体文件下载工具,完全开源免费跨平台.用户只需使用简单命令并提供在线视频的网页地址即可让程序自动进行嗅探.下载.合并.命名和清 ...

  4. ES6字符串操作讲解(详细),字符串编码表,代码单元,码点的详细介绍。

    以前用到字符串的方法时候,并不会深刻的去思考其中的原理,所以在es6新增的这些方法里就有点蒙圈了,于是想要搞清楚为什么会新增这些方法,以及如何使用这些方法. 在博客园上看见一篇大神SamWeb的总结, ...

  5. 532 K-diff Pairs in an Array 数组中差为K的数对

    详见:https://leetcode.com/problems/k-diff-pairs-in-an-array/description/ C++: class Solution { public: ...

  6. Jackson 动态过滤属性,编程式过滤对象中的属性

    场景:有时候我们做系统的时候,比如两个请求,返回同一个对象,但是需要的返回字段并不相同. 常见与写前端接口的时候,尤其是手机端,一般需要什么数据就返回什么样的数据.此时对于返回同一个对象我们就要动态过 ...

  7. centos笔记记录

    1. mac链接远程centos系统的时候,出现的问题: ssh 10.1**.4*.**:36** 会出现ssh: Could not resolve hostname 10.1**.4*.**:3 ...

  8. apache安装报错

    libtool: install: error: cannot install `libaprutil-1.la' to a directory not ending /some_directory ...

  9. ycsb模板介绍

    #对应的mongodb uri参数等mongodb.url=mongodb://127.0.0.1:27010/test_1 #对应的mongo数据库名称mongodb.database=test_1 ...

  10. sql创建作业--自动执行存储过程

    创建自动执行存储过程: 1.创建参数 2.删除已有同名的作业 3. 创建作业 4.创建作业步骤 5.连接服务器 6.创建作业调度 7.启动作业 ALTER PROCEDURE dbo.sx_pro_A ...