linux 符号链接与硬链接的区别

2014-5-23 杜世伟 Linux

linux下我们可以把符号链接,也就是软连接 当做是 windows系统里的 快捷方式。

硬链接 就好像是 又复制了一份.

ln 1.txt 2.txt   这是硬链接,相当于复制,不可以跨分区,但修改1.txt,2.txt会跟着变,若删除1.txt,2.txt不受任何影响。

ln -s 3.txt 4.txt  这是软连接,相当于快捷方式。修改4.txt,3.txt也会跟着变,若删除3.txt,4.txt就坏掉了。不可以用了。

阅读全文>>

标签: linux ln

评论(0) 浏览(16286)

linux sed

2014-5-22 杜世伟 Linux

    sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等

阅读全文>>

标签: linux sed

评论(0) 浏览(13274)

使用sed awk bash提取行的范围

2014-5-15 杜世伟 Vim

使用sed awk bash提取行的范围


以下是根据行号打印或提取文件部分的几种不同方式。


方式一使用sed把文件中指定行的内容重定向到/tmp/file1中

sed -n ’27,99p’ file.txt > /tmp/file1

等同于

sed '27,99 !d' file.txt > /tmp/file2


方式二使用awk NR

awk 'NR >= 27 && NR <= 99' file.txt > /tmp/file3


方式三使用head和tail

head -99 file.txt | tail -73 > /tmp/file4

阅读全文>>

标签: linux vim sed awk

评论(0) 浏览(18834)

vim 编辑远程文件

2014-5-13 杜世伟 Vim

vim 编辑远程文件


unstableme.log 是一个存放在172.21.20.104服务器/root目录下的一个文件. 通过从本地的编辑该文件的命令是:


vim scp://root@172.21.20.104//root/unstableme.log


这个时候会提示你输入172.21.20.104服务的密码


(转)http://www.unixcl.com/2008/08/edit-remote-file-using-vi-and-scp-linux.html

标签: linux vim vi

评论(0) 浏览(15892)

Php 安全设置

2014-5-11 杜世伟 Php

1) 打开 php 的安全模式
php 的安全模式是个非常重要的内嵌的安全机制,能够控制一些 php 中的函数,比如 system(),
同时把很多文件操作函数进行了权限控制,也不允许对某些关键文件的文件,比如/etc/passwd,
但是默认的 php.ini 是没有打开安全模式的,我们把它打开:
safe_mode = on
2) 用户组安全
当 safe_mode 打开时,safe_mode_gid 被关闭,那么 php 脚本能够对文件进行访问,而且相同
组的用户也能够对文件进行访问。
建议设置为:
safe_mode_gid = off
如果不进行设置,可能我们无法对我们服务器网站目录下的文件进行操作了,比如我们需要
对文件进行操作的时候。
3) 安全模式下执行程序主目录
如果安全模式打开了,但是却是要执行某些程序的时候,可以指定要执行程序的主目录:
safe_mode_exec_dir = /usr/bin
一般情况下是不需要执行什么程序的,所以推荐不要执行系统程序目录,可以指向一个目录,
然后把需要执行的程序拷贝过去,比如:
safe_mode_exec_dir = /tmp/cmd
但是,我更推荐不要执行任何程序,那么就可以指向我们网页目录:
safe_mode_exec_dir = /usr/www
4) 安全模式下包含文件
如果要在安全模式下包含某些公共文件,那么就修改一下选项:
safe_mode_include_dir = /usr/www/include/

阅读全文>>

标签: PHP linux nginx

评论(0) 浏览(12313)

vim 打开文件并跳动指定的行数

2014-5-10 杜世伟 Vim

vim 打开文件并跳动指定的行数


有时我们需要在vim中打开一个文件,然后需要去一个特定的行号,以便检查某些东西或编辑某些东西。 这就是我们如何在vim中打开一个文件,并直接把光标放在我们感兴趣的所需行上。


方法-

使用vim -c 参数

From VIM(1) man page:


-c {command}

{command} will be executed after the first file has been read.  {command} is interpreted as an

 Ex command.  If the {command} contains spaces it must be enclosed in double quotes (this

depends on the shell  that is used).  Example: Vim "+set si" main.c

阅读全文>>

标签: linux vim vi

评论(0) 浏览(11891)

linux shell 将多行文件转换为一行

2014-5-8 杜世伟 Linux

说实话,虽然对shell编程包括awk有所了解,但是对sed的多行与一行的处理还是不甚理解,在网上搜罗了一篇文章觉得还不错,记录一下:
 
 
今天一个工程师问我,怎么将一个文件中的多行转换成一行。
      我给出了如下三种方法:
      1. 采用awk
      awk BEGIN{RS=EOF}'{gsub(/\n/," ");print}' file
      说明:awk默认将记录分隔符(record separator即RS)设置为\n,此行代码将RS设置为EOF(文件结束),也就是把文件视为一个记录,然后通过gsub函数将\n替换成空格,最后输出。
      2. 采用sed
      sed ':a ; N;s/\n/ / ; t a ; ' file
      说明:sed默认只按行处理,N可以让其读入下一行,再对\n进行替换,这样就可以将两行并做一行。但是怎么将所有行并作一行呢?可以采用sed的跳转功能。:a 在代码开始处设置一个标记a,在代码执行到结尾处时利用跳转命令t a重新跳转到标号a处,重新执行代码,这样就可以递归的将所有行合并成一行。

阅读全文>>

标签: linux shell awk

评论(0) 浏览(9504)

Web基础架构:负载均衡和LVS

2014-5-4 杜世伟 架构

在大规模互联网应用中,负载均衡设备是必不可少的一个节点,源于互联网应用的高并发和大流量的冲击压力,我们通常会在服务端部署多个无状态的应用服务器和若干有状态的存储服务器(数据库、缓存等等)。

一、负载均衡的作用

负载均衡设备的任务就是作为应用服务器流量的入口,首先挑选最合适的一台服务器,然后将客户端的请求转发给这台服务器处理,实现客户端到真实服务端的透明转发。最近几年很火的「云计算」以及分布式架构,本质上也是将后端服务器作为计算资源、存储资源,由某台管理服务器封装成一个服务对外提供,客户端不需要关心真正提供服务的是哪台机器,在它看来,就好像它面对的是一台拥有近乎无限能力的服务器,而本质上,真正提供服务的,是后端的集群。

阅读全文>>

标签: haproxy lvs web tcp

评论(0) 浏览(2052)

vim 大小写快速转换

2014-5-2 杜世伟 Vim

平时在写程序的过程中会经常遇到大小写转换的问题.我们可以借助命令命令tr和sed进行转换.
,vim中提供了很多非常方便的大小写转换命令,可以快速的进行字母、单词、任意行的大小写转换,可以和vim的光标移动指令组合使用。


范例:
 
:1,$ s/.*/\L&/ #整个文件全部转换为小写
:1,$ s/.*/\U&/ #整个文件全部转换为大写
:1,$ s/\<./\u&/g #整个文件中每个单词的首字母大写

:1,$ s/\<./\u&/gc 
#带确认提示首字母转成大写,此模式会进行确认信息交互,选择参数有replace with \u& (y/n/a/q/l/^E/^Y)?
#1)y确认转换
#2)n不进行转换
#3)a文件中全部替换
#4)q退出替换模式 
#5)l替换第一个然后退出交互 
#6)^E/^Y这两个暂未明白

阅读全文>>

标签: linux vim sed tr

评论(0) 浏览(21053)

Powered by emlog 沪ICP备2023034538号-1