There are two types of bash for loops available. One using the “in” keyword with list of values, another using the C programming like syntax.       This article is part of our on-going bash tutorial series.       This explains both of the bash for lo…
本系列文章为<Linux Shell Scripting Cookbook>的读书笔记,只记录了我觉得工作中有用,而我还不是很熟练的命令 书是很好的书,有许多命令由于我比较熟悉,可能就没有记录在其中了 1. 获得进程的环境变量 cat /proc/$PID/environ 将原先彼此间的null('\0')分隔符替换成换行 cat /proc/1194/environ | tr '\0' '\n' 2. 获得字符串长度 length=${#var} 3. 数字运算 let, (()), []执…
How do I use bash for loop to repeat certain task under Linux / UNIX operating system? How do I set infinite loops using for statement? How do I use three-parameter for loop control expression? A 'for loop' is a bash programming language statement wh…
ping, du, ps, kill, 收集系统信息 判断网络中哪些主机是活动主机 #!/bin/bash for ip in 10.215.70.{1..255}; do ( ping $ip -c2 &> /dev/null ; if [ $? -eq 0 ]; then echo $ip is alive fi )& # ()中为子shell,后面的&表示后台执行 done wait #等待所有进程执行完才退出 du -a dir 递归地输出指定目录或多个目录中所有文件…
cat,script,find, xargs, tr, tmp文件,字符串截取,批量文件重命名,固定大小文件,自动化交互 1. cat的用法 压缩连续的空白行 cat -s file 也可以用tr,将连续'\n',压缩成一个'\n' cat file | tr -s '\n' 显示制表符 cat -T file 显示行号 cat -n file 2. script命令 录制: script -t 2> time.log out.session type commands; exit退出录制 回放…
http://bash.cyberciti.biz/wiki/index.php?title=Main_Page…
wget,curl, tar, rsync wget ftp://example.com/somefile.img -t 5 -O download.img -o log -t表示重试的次数 -O指定输出文件名 -o指定一个日志文件 wget -c URL 断点续传,如果下载在完成前被中断,可以用-c从断点处开始下载 用curl指定参考页,指定cookie curl -I --referer http://www.baidu.com https://www.cnblogs.com --cooki…
sed,awk 1. sed (string editor) 使用-i可以将结果运用于原文件 sed 's/text1/text2/' file > newfile mv newfile file 其实可以使用 sed -i 's/text1/text2/' file 搞定 如果加后缀g表示全部替换,不加只会替换每行的第一处匹配 使用Ng选择从第几处开始匹配,第二个例子是为了说明无论使用/或者|或者其他什么字符,都是可以用作定界符的 移除空白行 sed '/^$/d'  # /pattern/d…
正则, grep 1. 正则表达式  正则表达式  描述  示例 ^ 行起始标记  ^hell匹配以hell开头的行 $ 行尾标记  test$匹配以test结尾的行 . 匹配任意一个字符  hell.匹配hell1,hell2,但是不能匹配hell12,只能匹配单个字符 [] 匹配包含在[字符]之中的任意一个字符  test[123]匹配test1,test2,test3 [^] 匹配除[^字符]之外的任意一个字符  test[^12]不匹配test1,test2,匹配test3 [-] 匹配…
patch, tree, head ,tail 1. 创建不可修改文件 chattr +i file chattr -i file 移除不可修改属性 2. 能够启动闪存或硬盘的混合ISO isohybrid img.iso dd if=img.iso of=/dev/sdb1 通常情况下不能将可引导的ISO文件写入USB设备来引导操作系统,但是这种混合ISO可以做到(未测试) 3. patch patch v1 < v.patch #文件v1会变得跟v2一样 再执行一遍,输入y,则会还原成v1…
Linux Bash Script loop shell 编程之流程控制 for 循环.while 循环和 until 循环 for var in item1 item2 ... itemN do command1 command2 ... commandN done for var in item1 item2 ... itemN; do command1; command2- done; refs http://www.imooc.com/learn/408 https://linuxize…
前言 shell作为用户和操作系统内核交互的接口,也不断的在发展迭代.shell的发展也离不开unix/linux 系统的发展.并且在开源社区对shell的发展也起到了推动作用. 内容思维导图简介 发展历史 从最早的bourne shell的问世,shell一直经历着较快的更新迭代. 1970年美国Bell lab由Stephen Bourne(大神啊)主导开发了bourne shell,改shell以Stephen本身姓名命名.最早的shell出现了,并且bourne shell也在不断的发展…
说到shell通配符(wildcard),大家在使用时候会经常用到.下面是一个实例: 1   1 2 3 4 [chengmo@localhost ~/shell]$ ls a.txt  b.txt  c.old   #2 1 2 3 4 [chengmo@localhost ~/shell]$ ls *.txt a.txt  b.txt   #3 1 2 [chengmo@localhost ~/shell]$ ls d*.txt ls: 无法访问 d*.txt: 没有那个文件或目录 从上面这…
linux bash吧,还有啥Bourne Again Shell bash吧,还有啥Bourne Again Shell 头部要写#!/bin/bash set -x #open script debug 1* 添加执行权限chmod +x 脚本名chmod +x testsh1.sh 2*执行脚本当前路径执行./脚本名testsh1.sh 全路径执行/tmp/vskedtest/testsh1.sh 解释器执行/bin/sh 脚本路径/bin/sh testsh1.sh/bin/sh /tm…
概述 简单解释一下 shell 脚本卡头的 #!/bin/bash 水一篇, 少一篇 背景 shell 脚本中的注释 通常是 以# 卡头的行 但是有时候执行 shell 的时候, 会有这种内容 #!/bin/bash 1. #!/bin/bash 这不是注释 他是有意义的 shell 脚本执行 场景 一个 脚本 由 shell 执行 !/bin/bash 作用 指定 shell 2. 尝试 场景1: bash 脚本: test01.sh #!/bin/bash echo 'hello' 执行 命…
/*************************************************************************************** * linux shell except tcl login ssh Automatic interaction * 声明: * 本程序是使用except自动登入远程目标机,并且执行commands文件中的命令给定的命令, * 可以对多个目标机进行测试,目标机的IP保存在shell的数组中,目前只支持相同的账户和密码.…
When you are using Linux command line frequently, using the history effectively can be a major productivity boost. In fact, once you have mastered the 15 examples that I’ve provided here, you’ll find using command line more enjoyable and fun. 1. Disp…
linux shell编程总结 本周学习了unix/linux shell编程,参考的是<LINUX与UNIX Shell 编程指南>,David Tansley著:徐焱,张春萌等译,由机械工业出版社出版的了,往内页那么一翻,都是2000年3月译的了,原书估计会更老,不过图书馆能找到合适于我这种初学者的也许就这么本了,将就着的吧. 这本书是以Bourne shell这个UNIX系统都支持的标准shell.Bourne Again shell(BASH).TCSH shell和Z shell它们…
Linux shell基础知识(上) 目录 一.shell介绍 二.命令历史 三.命令补全和别名 四.通配符 五.输入输出重定向 六.管道符和作业控制 七.shell变量 八.环境变量配置文件 九.bashrc和bash_profile的区别 一.shell介绍 shell是一个命令解释器,提供用户和机器之间的交互.支持特定语法,如逻辑判断,循环等.每个用户都可以有自己的shell,centos7默认的shell为bash(Bourne Again Shell). Shell的两大家族 1.Bo…
shell(计算机壳层)_百度百科 http://baike.baidu.com/subview/849/15831672.htm Shell (computing) - Wikipedia, the free encyclopedia http://en.wikipedia.org/wiki/Shell_(computing) iSeries QSHELL - Wikipedia http://en.wikipedia.org/wiki/ISeries_QSHELL According to…
ls /usr/bin/ info #路径操作 dirname basename #“”和‘’与 ` ` 在shell变量中的区别 “ ” 允许通过$符引用其他变量 ‘’禁止引用其他变量符,视为普通字符 `` 将命令执行的结果输出给变量 #执行一个命令,但不保存在命令历史记录中 <space>command man ascii #并行执行的命令之间添加&,多条命令就可以并行执行. ls & echo 'aaaaaaaa' & echo 'fesfsfse' #串行执行命…
Linux Shell脚本攻略笔记[速查] 资源 shell script run shell script echo printf 环境变量和变量 pgrep shell数学运算 命令状态 文件描述符和重定向 cat 数组和关联数组 alias date 调试脚本 函数和参数 管道 读取命令输出 read 字段分隔符和迭代器 循环 比较和测试 find xargs tr md5sum sha1sum 对目录进行校验 sort uniq tempfile split bash变量匹配切分 exp…
Linux shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头.注释.变量和 环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提.1. Linux 脚本编写基础◆1.1 语法基本介绍 1.1.1 开头 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序.在这个例子中我们使用/bin/sh来执行程序. 当编辑好脚本时,如果要执行该脚本,还必须使其可执行. 要使脚本可执…
2. Shell 2.1 简介 shell脚本执行方式Shell 是一个用 C 语言编写的程序,通过 Shell 用户可以访问操作系统内核服务.它类似于 DOS 下的 command 和后来的 cmd.exe.Shell 既是一种命令语言,又是一种程序设计语言. Shell script 是一种为 shell 编写的脚本程序.Shell 编程一般指 shell脚本编程,不是指开发 shell 自身. Shell 编程跟 java.php 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行…
整理自: https://www.runoob.com/?s=shell Shell 脚本(shell script),是一种为 shell 编写的脚本程序. 业界所说的 shell 通常都是指 shell 脚本,但读者朋友要知道,shell 和 shell script 是两个不同的概念. 由于习惯的原因,简洁起见,本文出现的 "shell编程" 都是指 shell 脚本编程,不是指开发 shell 自身. 用shell脚本可以在linux中很方便的执行一些机械的操作. 这个hell…
第一部分:Linux Shell 简介 Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务. Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell. 当一个用户登陆linux 系统后,系统就会为该用户创建一个shell程序. Shell的版本…
开始还以为是这样的语法: sleep(1), 后面发现是: linux shell 中的sleep命令 分类: LINUX 在有的shell(比如linux中的bash)中sleep还支持睡眠(分,小时) sleep 1 睡眠1秒 sleep 1s 睡眠1秒 sleep 1m 睡眠1分 sleep 1h 睡眠1小时 linux shell 真奇怪... 其实linux shell 也有函数的概念…
Linux shell脚本编程 流程控制: 循环语句:for,while,until while循环: while CONDITION; do 循环体 done 进入条件:当CONDITION为“真”: 退出条件:当CONDITION为“假”: while CONDITION; do 循环体 控制变量的修正表达式 done 示例:求100以内所有正整数之和; #!/bin/bash # declare -i sum=0 declare -i i=1 while [ $i -le 100 ]; d…
Linux shell脚本编程(二) 练习:求100以内所有偶数之和; 使用至少三种方法实现; 示例1: #!/bin/bash # declare -i sum=0 #声明一个变量求和,初始值为0 for i in $(seq 0 2 100); do sum=$(($sum+$i)) done echo "Even sum: $sum." 示例2: #!/bin/bash # declare -i sum=0 for i in {1..100}; do if [ $[$i%2] -…
Linux shell脚本编程: 守护进程,服务进程:启动?开机时自动启动: 交互式进程:shell应用程序 广义:GUI,CLI GUI: CLI: 词法分析:命令,选项,参数 内建命令: 外部命令:PATH fork()创建为一个进程: 把要运行的一系列命令,写在文件中: 脚本或程序源文件:文本文件 两种方式: 编译执行:预处理---->编译---->汇编---->链接:事先完成,结果:二进制程序文件 C,C++ 解释执行:由解释器全程参与运行过程,每次读取一行,运行一行: Pyth…