博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux命令补遗 - 4
阅读量:6649 次
发布时间:2019-06-25

本文共 3297 字,大约阅读时间需要 10 分钟。

1、部分行替换:
例如:将5到11行前面加上#(即注释掉5到11行):
sed -i '5,11s/^/#/g' Hello.java
去掉开头的#号,在vi模式下使用:
%s/^#//g
2、grep取上下行
cat  a.txt  |  grep -A1 saved       //取匹配行及其下一行
cat  a.txt  |  grep -B1 saved       //取匹配行及其上一行
cat  a.txt  |  grep -1  saved       //取匹配行及其上下一行
3、查看二进制文件
$ vim dir
然后输入":%!xxd"命令。如下:
 
会把二进制文件的内容转换为十六进制。
还可以用:":%!od"、":%!xxd -c N",N为数字,表示每行显示的字节数。
4、拷贝是保留模式、权限、时间戳
-p     same as --preserve=mode,ownership,timestamps
例:-p     same as --preserve=mode,ownership,timestamps
5、vi快捷键

Ctrl + a:去往首行

Ctrl + e: 去往末行

Alt + f: 前进一个字

    Alt + b: 退后一个字 
 6、yum安装与卸载
按照:yum install ...
卸载:yum remove ...
7、解压到指定目录:-d
例子:unzip spring-framework-3.1.0.M2-with-docs.zip  -d /home/kejuwang/works/opensource/spring
 
8、正确和错误输出: > exp.out 2>&1
bash -x ./startws.sh > exp.out 2>&1
 
9、查看进程,去除头部
ps  --no-heading -C java -f --width 1000
 
10、echo -e
echo -e  后一般会接参数,-e 若参数出现以下字符,则特别加以处理,而不会将它当成一般文字输出:   \a 发出警告声;   \b 删除前一个字符;   \c 最后不加上换行符号;   \f 换行但光标仍旧停留在原来的位置;   \n 换行且光标移至行首;   \r 光标移至行首,但不换行;   \t 插入tab;   \v 与\f相同;   \\ 插入\字符;   \nnn 插入nnn(八进制)所代表的ASCII字符;
 
 
  1. [admin@inc-platform-133-132 ~]$ echo -e "abc\n" 
  2. abc 
  3.  
  4. [admin@inc-platform-133-132 ~]$ echo "abc\n" 
  5. abc\n 
【注意】注意
echo -e "abc\n"的最后多输出了一行(空行),也就是-e参数的效果,让特殊字符生效
 
11、
注意调试:bash -x的输出
 
 
  1. memcached_pid=`ps  --no-heading -C memcached -f --width 1000 | grep "$MEMCACHED_INSTALL_CTL" |awk '{print $2}' 
 当
$MEMCACHED_INSTALL_CTL未定义时,同样可以执行,所以会带来执行执行和脚本中执行的区别,注意调试。
 
12、输出1到100:seq 1 100,常用于循环中:
 
  1. for i in `seq 1 100`  
  2. do 
  3.     echo $i 
  4. don 
 
13、yum卸载
 
查看安装情况
 
  1. #yum list | grep httpd 
  2. alibaba-httpd.x86_64                       2.0.63-17                   installed 
  3. alibaba-httpd22.x86_64                     2.2.15-2                    installed 
  4. alibaba-httpd.x86_64                       2.2.15-22                   update    
  5. alibaba-httpd-int.x86_64                   2.0.61-17                   update    
  6. alibaba-httpd_module-img_private.x86_64    1.0-2                       update  
卸载:yum remove
 
  1. #yum remove alibaba-httpd.x86_64  
安装:线上是安装是
alibaba-httpd.x86_64                       2.2.15-22  
 
  1. yum install alibaba-httpd.x86_64 
 
14、vi中部分行替换:“
:1,57s/^/#/g
例子:将:将1到57行中的全部注释,方法:":1,57s/^/#/g"
 
15、文件编码方式转换:iconv
-f:from
-t:to
将文件从gbk编码转换成utf8编码:
iconv -f gbk -t utf8 filename
 
16、条件判断参数查询:
man test
使用man test可以查看if中参数的选择,例如:-z:判断字符串长度是否为0
 
17、分析apache的访问日志
例:以"为分隔符,查看refer(引用当前js的url)
awk -F "\"" '{print $4}' apache_access.log | more
 
18、查看文件的最后修改时间
-r, --reference=FILE
              display the last modification time of FILE
例子:
 
  1. [admin@hz-unicorn1 2]$ date -r apache_access.log.2.tar.gz  
  2. Wed Nov 16 02:55:06 PST 2011 
 
 
  1. kejuwang@kejuwang-desktop:~/work/unicorn-docs$ date -d"2010/09/02 13:00:00" +"%Y%m%d%H%M" 
  2. 201009021300 
将文件的最后修改时间进行格式化:
"`date -r unicorn-accesslog-backup.sh`"
 
 
  1. date -d"`date -r unicorn-accesslog-backup.sh`" +"%Y-%m-%d" 
 
正确的格式化文件最后修改时间:
 
  1. kejuwang@kejuwang-desktop:~/work/unicorn-docs$ date -r apache_access.log +"%Y_%m_%d %H:%M:%S" 
  2. 2011_11_16 15:59:59 
19、去除VI中的某些文字的存在的下划线
: syntax off 
 
20、yum安装与卸载软件
yum list
 yum install
卸载:yum erase
 
21、统计目录下所有文件以及文件夹大小和总大小
du -shc *
22、wget注意事项
(1)wget在访问url的时候,
后面的url最好放在双引号之中,因为经常有url中包含&符号,命令行会将url截断,认为&为后台执行。
例如:wget -c "http://www.baidu.com/s?tn=baiduhome_pg&bs=request+getHeader+User-Agent+%BF%D5&f=8&rsv_bp=1&rsv_spt=1&wd=request+getHeader+User-Agent+null&inputT=1013"
 22、svn diff操作
svn diff
 
-r
 newversion:oldversion  path


svn diff
 
-r
 
1327
:
1326
 mcsd_svc.php
23、tar解压到制定目录(条件:目录需存在,且使用大写的-C)
tar zxvf hummock.server.db-2.3.1.tar.gz -C db 
24、为软件打补丁
例如:gzip -cd php-5.2.6-fpm-0.5.9.diff.gz | patch -d php-5.2.6 -p1
 
本文转自 tianya23 51CTO博客,原文链接:http://blog.51cto.com/tianya23/586185,如需转载请自行联系原作者
你可能感兴趣的文章
JAVA语言基础-面向对象(集合框架总结)
查看>>
关于云租户安全建设的思路分享
查看>>
直播APP开发:熊猫直播求续命,直播的多种玩法
查看>>
《每日一剂》listview上拉加载下拉刷新的数组越界
查看>>
Linux基础(day76)
查看>>
c++模板编程
查看>>
1.9 使用PuTTY远程连接Linux 1.10 使用xshell连接Linux 1.11 PuTTY密钥认证 1.12 xshell密钥认证...
查看>>
JSP中表单提交问题
查看>>
valgrind
查看>>
微信公众号第三方登录
查看>>
SAP S4CRM 1811 服务订单API介绍
查看>>
推荐一个好用的以多tab标签方式打开windows CMD的工具
查看>>
阿里云的重大战略调整,“被集成”成核心,发布SaaS加速器助力企业成长
查看>>
“旧城改造”的背后——银泰新零售阿里云解决方案(下)
查看>>
少年学习java等编程开发课程是一种愚蠢的时尚[图]
查看>>
阅读名著《鼠疫》读后感4000字
查看>>
java RMI 源码总结(个人理解)
查看>>
锁分类(独占锁、分拆锁、分离锁、分布式锁)
查看>>
shell介绍、命令历史、补全、别名、通配符、输入/输出重定向
查看>>
Bytom资产发行与部署合约教程
查看>>