![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
shell基础/命令/语法
文章平均质量分 75
zhengdl126
这个作者很懒,什么都没留下…
展开
-
打包解压(tar,uzip)命令实用总汇
(.zip) zip unzip (.gz) gzip gunzip (.bz2) bzip2 bunzip2 -j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩 (.Z) compress uncompress (.tar.gz) tar zxvf xvf -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip...2009-07-28 16:13:26 · 346 阅读 · 0 评论 -
read,cat,touch,head,tail
===================== read 接收标准输入(键盘)的输入,或其他文件描述符的输入-d[输入结束字符,默认结束符是换行] -p("提示语句") -n[字符个数] -t(等待时间) -s(不回显) -a [数组名]#!/bin/bashecho -n "Enter your name:" //参数-...原创 2012-06-26 13:39:54 · 251 阅读 · 0 评论 -
xargs格式化输出
从标准输出建立并运行命令行把从stdin接收到的数据重新格式化,再将其作为参数提供给其它命令------------------------------------------------ xargs 选项:-d 选项:为输入指定一个定制的定界符-p 选项;它使操作具有可交互性:命令: file * | grep ...原创 2012-06-26 13:41:52 · 842 阅读 · 0 评论 -
split,csplit切割文件
linux split 命令 功能说明:切割文件。 语 法:split [--help][--version][-<行数>][-b <字节>][-C <字节>][-l <行数>][要切割的文件][输出文件名] 补充说明:split可将文件切成较小的文件,预设每1000行会切成一个小文件。 参 数: -<行数&g...原创 2012-06-26 18:06:34 · 165 阅读 · 0 评论 -
df,du,fdisk
-------------------------df 是来自于coreutils 软件包,系统安装时,就自带的;我们通过这个命令可以查看磁盘的使用情况以及文件系统被挂载的位置; -a 显示所有文件系统的磁盘使用情况,包括0块(block)的文件系统,如/proc文件系统。 -k 以k字节为单位显示。 -i 显示i节点信息,而不...原创 2012-06-27 12:39:38 · 76 阅读 · 0 评论 -
【汇总】sh语法汇总2
============= "binary operator expected"错误 今天写了个shell脚本一运行就出现"binary operator expected"错误test1.sh: line 6: [: /export/images/a10091400ux0415: binary operator expected检查脚本第六行:...原创 2012-06-27 16:08:14 · 254 阅读 · 0 评论 -
字段分隔符IFS和循环
Shell的内部域分隔符可以是空格、制表符和换行符。它可以作为命令的分隔符用在例如read、set和for等命令中。如果在列表中使用不同的分隔符,用户可以自己定义这个符号。在修改之前将IFS原始符号的值保存在另外一个变量中,这样在需要的时候还可以还原。 见如下示例脚本: /> cat > test9.sh names=Stephen:...原创 2012-06-27 16:10:00 · 302 阅读 · 0 评论 -
【书】linux shell 脚本攻略
转载:http://jackyrong.iteye.com/blog/1378736 1 假如知道一个应用运行,想知道其进程id,可以用: pgrep xxxx获得其进程id 再通过 cat /proc/进程id号/environ获得其环境变量2 获得字符串长度 var=1233333 length=${...原创 2012-06-27 17:39:42 · 95 阅读 · 0 评论 -
UNIX高手的20个习惯
1. 在单个命令中创建目录树 清单 1 演示了最常见的 UNIX 坏习惯之一:一次定义一个目录树。 清单 1. 坏习惯 1 的示例:单独定义每个目录树 ~ $ mkdir tmp ~ $ cd tmp ~/tmp $ mkdir a ~/tmp $ cd a ~/tmp/a $ mkdir b ~/tmp/a $ cd b ~/tmp/a/b...原创 2012-06-29 12:02:48 · 97 阅读 · 0 评论 -
[转]实用基础_shell脚本详解命令
shell脚本编写技巧"1.test测试命令test命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试,其测试符和相应的功能分别如下:(1)数值测试:-eq:等于则为真-ne:不等于则为真-gt:大于则为真-ge:大于等于则为真-lt:小于则为真-le:小于等于则为真(2)字符串测试:=:等于则为真!=:不相等则为真-...原创 2012-07-11 11:44:31 · 59 阅读 · 0 评论 -
很精彩的linux命令
1.按内存从大到小排列进程: ps -eo "%C : %p : %z : %a"|sort -k5 -nr2.查看当前有哪些进程;查看进程打开的文件:ps -A ;lsof -p PID3.获取当前IP地址(从中学习grep,awk,cut的作用)ifconfig eth0 |grep "inet addr:" |awk '{print $2}'|cut -c 6-4....原创 2012-07-13 10:55:17 · 67 阅读 · 0 评论 -
read case
read -p "请输入安装程序编号:" ncase $n in 1) read -p "确定要安装程序吗?[Y/y]" s if [ $s == "Y" -o $s == "y" ];then nginx_install else printf "没有选择[Y/y]安装程序,程序退出!\n" ...原创 2012-11-01 16:55:24 · 182 阅读 · 0 评论 -
expect
whereis expect -c 选项用来标明需要在执行脚本内容之前来执行的命令。这条命令(-c选项后的命令)应该用引号括起来,以免在执行时被shell分开解释。-c选项可能会被反复使用。多条命令可以使用同一个”-c”,命令之间需要用分号隔开。这些命令会按照它们出现的先后顺序执行。(在Expectk中,”-c”相当于”-command”)。-d 选项允许输出调...原创 2012-04-17 14:35:45 · 131 阅读 · 0 评论 -
你可能不知道的Shell
!$!$是一个特殊的环境变量,它代表了上一个命令的最后一个字符串。如:你可能会这样:$mkdir mydir$mv mydir yourdir$cd yourdir可以改成:$mkdir mydir$mv !$ yourdir$cd !$sudo !!以root的身份执行上一条命令 。场景举例:比如Ubuntu里用apt-get安装软件...原创 2012-11-26 13:41:54 · 148 阅读 · 0 评论 -
Shell中脚本变量和函数变量的作用域
在shell中定义函数可以使代码模块化,便于复用代码。不过脚本本身的变量和函数的变量的作用域问题可能令你费解,在这里梳理一下这个问题。(1)Shell脚本中定义的变量是global的,其作用域从被定义的地方开始,到shell结束或被显示删除的地方为止。例1:脚本变量的作用域#!/bin/bash#define the function ltx_funcltx_fun...原创 2012-11-28 16:21:12 · 88 阅读 · 0 评论 -
【汇总】shell show收藏
================== shell从文本取对应的字符串 本内容--------------------------------Filesystem Size Used Avail Use% Mounted on/dev/sda2 441G 180G 240G 43% //dev/sda1 ...原创 2012-11-29 14:03:28 · 184 阅读 · 0 评论 -
[汇总]shell笔试
http://president.blog.51cto.com/4990508/851407http://president.blog.51cto.com/4990508/854249http://president.blog.51cto.com/4990508/854647 由于工作的关系,收集了很多的shell面试题,有些比较有意思,有些纯粹是为折磨人用的题目。有的...原创 2013-01-24 17:32:18 · 159 阅读 · 0 评论 -
sed简化命令:tr
连续多个’\n‘字符压缩成单个'\n'cat t.txt | tr -s '\n' 通过使用 tr,您可以非常容易地实现 sed 的许多最基本功能。您可以将 tr 看作为 sed 的(极其)简化的变体:它可以用一个字符来替换另一个字符,或者可以完全除去一些字符。您也可以用它来除去重复字符。这就是所有 tr 所能够做的...原创 2012-06-26 13:12:21 · 86 阅读 · 0 评论 -
linux操作系统下c语言编程入门
http://blog.csdn.net/zypsg/article/details/644163 2)Linux程序设计入门--进程介绍3)Linux程序设计入门--文件操作4)Linux程序设计入门--时间概念5)Linux程序设计入门--信号处理6)Linux程序设计入门--消息管理7)Linux程序设计入门--线程操作8)Linux程序设计入门-...原创 2012-02-16 16:37:54 · 1025 阅读 · 0 评论 -
cut用法
linux之cut用法cut是一个选取命令,就是将一段数据经过分析,取出我们想要的。一般来说,选取信息通常是针对“行”来进行分析的,并不是整篇信息分析的。(1)其语法格式为:cut [-bn] [file] 或 cut [-c] [file] 或 cut [-df] [file]使用说明cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段写至标准输出。...原创 2012-06-13 17:12:30 · 81 阅读 · 0 评论 -
linux top+ps
========================= toptop -u apachetop -u mysql 只查看有效用户名为mysql的进程 # top -d 5 更新延时设置为5秒(默认3秒) # top -u mysql 只查看有效用户名为mysql的进程 # top -p 200,2000 只查看进程200和2000 # ...2009-08-01 14:32:13 · 191 阅读 · 0 评论 -
netstat详解
http://www.now163.net/2011/04/460.html Netstat命令详解 如何关闭TIME_WAIT连接 如何查看nginx的访问流量 http://kerry.blog.51cto.com/172631/105233/ 发现大量的TIME_WAIT解决办法 ============================= 压测时的nets...原创 2011-05-24 11:34:39 · 625 阅读 · 0 评论 -
awk命令:是一种用于处理数据和生成报告的编程语言
ttp://bbs.linuxtone.org/thread-1714-1-1.htmlAwk学习笔记 http://www.linux.gov.cn/shell/awk.htm 是一种用于处理数据和生成报告的编程语言awk 倾向于将一行分成数个字段来处理; ------------------------linlin awk '{print}' /etc...原创 2010-11-01 21:00:20 · 379 阅读 · 0 评论 -
sed
鸟哥sed知识补遗 http://bbs.linuxtone.org/thread-2125-1-1.html 1. Sed简介 sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这...原创 2010-11-01 21:20:25 · 77 阅读 · 0 评论 -
find命令:查找文件
http://bbs.linuxtone.org/thread-1696-1-1.html -----------------------选项包括:-name 按照文件名查找文件,支持*号和[]号。-perm按照文件权限来查找文件,支持完全指定和-号、+号部分符合。-prune使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使...原创 2010-11-02 11:28:36 · 1111 阅读 · 0 评论 -
grep与egrep
http://bbs.chinaunix.net/thread-446683-1-1.html比方以 grep 来说, 在 Linux 上你可找到 grep, egrep, fgrep 这几个程序, 其差异大致如下: * grep:传统的 grep 程序, 在没有参数的情况下, 只输出符合 RE 字符串之句子. 常见参数如下:-v: 逆反模示, 只输出"不含" RE 字符串...原创 2010-11-03 14:11:53 · 95 阅读 · 0 评论 -
【汇总】sh语法汇总
test -d $nginx_path || mkdir -p $nginx_path ============== 单引 双引 反引用 [] [[]] hard quote:单引号,关闭所有的meta(什么是meta,自己查吧)soft quote:双引号,关闭大部分的meta,但是某些保留,例如$,括在双引号中的三种特殊字符不被忽略:$,\,...原创 2011-05-25 18:07:20 · 1505 阅读 · 0 评论 -
unrar安装和使用
简单,centos5安装unrar即可。 unrar安装方法如下: wget http://dag.wieers.com/rpm/packages/unrar/unrar-3.6.8-1.el5.rf.i386.rpm; rpm -Uvh unrar-3.6.8-1.el5.rf.i386.rpm; 复制上面的命令,在root下执行即可。基本unrar用法: un...原创 2011-03-11 17:43:26 · 829 阅读 · 0 评论 -
Iptables
http://www.net527.cn/a/anquan/kaiyuanfanghuoqiang/6428.html 防范DDOS攻击脚本 防范CC攻击 http://hi.baidu.com/wbwssb/blog/item/b711cbfa44c2ae54242df27c.html 1) 重启后生效 开启: chkconfig iptables ...原创 2010-11-06 16:44:28 · 136 阅读 · 0 评论 -
sort行排序,uniq剔除重复
awk '{print NR, $0}' file1 file2 |sort -k2|uniq -u -f 1|sort -k1|awk '{print $2}'或者:awk '{print $0}' file1 file2 |sort|uniq -uawk命令的使用,听牛人说可谓博大精深,我也没有太搞清楚。这里只是使用了一些简单的功能。下面以我自己的理解来解释...原创 2011-03-21 12:00:48 · 494 阅读 · 0 评论 -
linux date命令详解
DATE=`date +%Y-%m-%d`echo $DATEecho "`date -d \"-1 month\" \"+%Y-%m\"`" lastday="`date -d \"-1 month\" \"+%Y-%m\"`" echo $lastday lastday="`date -d \"yesterday\"原创 2011-03-21 16:32:05 · 88 阅读 · 0 评论 -
linux mail
轻松搭建Postfix_邮件服务器系统(08-04-06).rar ==================mail 用法/var/spool/mail/ mail存放目录/var/log/maillog 清空某个用户的所有邮件: echo /dev/null > root telnet localhost 25 檢查是否出現...原创 2011-03-29 15:46:42 · 133 阅读 · 0 评论 -
Linux free 详细说明
Linux内存 性能调优内存是影响Linux性能的主要因素之一,内存资源的充足与否直接影响应用系统的使用性能。free命令:监控Linux内存使用状况。由上图可知,空闲内存是free+buffers+cached=155MB一般来说如果空闲内存/物理内存>70%,内存性能优;如果小于20%,则...原创 2011-08-10 14:07:20 · 138 阅读 · 0 评论 -
前台进程:jobs,fg,bg,nohup
LINUX任务(jobs)详解在用管理员执行一个命令后,用Ctrl+Z把命令转移到了后台。导致无法退出root的。输入命令:exit终端显示:There are stopped jobs.解决方法:方法一、输入命令:jobs终端显示:[1]+ Stopped vim /etc/network/interfaces > /home/leo/Des...原创 2012-05-11 16:22:23 · 120 阅读 · 0 评论 -
shell之数组
====================== 循环 corp_other_table=(table1 table2)for table in ${corp_other_table[*]}do table:${table}done ------------------------数组 array_var=(1 2 3 4...原创 2012-05-11 18:05:44 · 74 阅读 · 0 评论 -
用diff比较目录文件差异和patch备份源代码
=============??????? 新增加的文件无法更新 The next patch would create the file sc_patch/update20120730.sql,which already exists! Skipping patch.1 out of 1 hunk ignored =============== ...原创 2012-06-12 17:11:35 · 485 阅读 · 0 评论 -
Linux运维常用命令 (转载)
1 删除0字节文件find-type f -size 0 -exec rm -rf {} \; 2 查看进程 按内存从大到小排列 ps -e -o "%C : %p : %z : %a"|sort -k5 -nr 3 按cpu利用率从大到小排列 ps -e -o "%C : %p : %z : %a"|sort -nr 4 打印说cache里的URL grep -...原创 2013-01-31 10:23:14 · 119 阅读 · 0 评论