linux替换r命令 r语言删除命令

linux命令全?

linux基本命令:(其他的太多了,自己去百度吧)

在远安等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站制作、成都网站制作 网站设计制作按需设计,公司网站建设,企业网站建设,成都品牌网站建设,成都营销网站建设,成都外贸网站制作,远安网站建设费用合理。

ls:

-l:显示详细信息

-a:显示隐藏文件和其他所有文件(以.开头的为隐藏文件)

-t:安时间排序

-h:以KB MB 等单位显示

-d:只列出目录名,不列出其他内容

-R:递归显示所有目录及子目录

-lath:选项可以合并

pwd:显示当前所在位置

cd:转换目录

cd ..:返回上一级目录

cd -:回到上一次操作的目录

mkdir: 建目录

-v:显示所建目录,相同可用{}:mkdir -v dir{1,2,3}

-p:创建多级目录

rmdir:删除空目录

rm:删除

-f:强制删除无提示

-r:可删除目录

mv:移动 重命名

touch:建立空文件

file:验证文件或目录的类型

cp:复制,粘贴 (copy)改名

cp 原文件 目标文件

-r:可复制目录

ssh 192.168.1.33 远程登录

跨机拷贝:scp -r /root/Server/ 192.168.1.253:/dcw

man 命令:帮助

alias:查看是否有别名

去掉别名用完整路径

eg:

#which cp

#/bin/cp a.text b.text 或 \cp a.text b.text

或 在 /root/.bashrc 中去掉#alias cp='cp -i',后#unalias cp

查看某文件前4行内容并显示文件路径和文件名

[/usr/local/nagios]#ls /etc/vsftpd/vsftpd.conf head -n 4 /etc/vsftpd/vsftpd.conf

/etc/vsftpd/vsftpd.conf

# Example config file /etc/vsftpd/vsftpd.conf

#

# The default compiled in settings are fairly paranoid. This sample file

# loosens things up a bit, to make the ftp daemon more usable.

linux tee 命令详解

功能说明:读取标准输入的数据,并将其内容输出成文件。

语法:tee [-ai][--help][--version][文件...]

补充说明:tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。

参数:

 -a或--append  附加到既有文件的后面,而非覆盖它.

 -i-i或--ignore-interrupts  忽略中断信号。

 --help  在线帮助。

 --version  显示版本信息。

cat /etc/sysconfig/network

-n:查看行号信息

more:空格翻页 回车换行

less:上下键翻页 可以反复看(可以回翻页)

head:显示前几行

head -5 install.log 显示前5行

tail:显示后几行

tail -f 动态更新

grep:查看文件中包含关键字的一行

#grep --color=tty dump intstall.log 彩色显示

正则表达式:^root 以root为开头(^)

root$,以root结尾($)

-v:不包括的几行(取反)

grep -n -v ^# /etc/vsftpd/vsftpd.conf

:r /root/install.log 追加读入一个文件

:e 读入文件

:e! 重新读入

:q 不保存 :q!强制退出

:w 保存 :qw保存退出 :wq! 强制保存退出

在未写入状态时:

h 左 k 上 j下 l 右

shift+4($) 光标移到行尾 shift+6(^) 光标移到行头

:50 来到50行

#vim /root/install.log +50(n)来到50行

:set nu 显示行号

:set nonu 取消行号

shift+g 来到行尾

n(无显示)+G:直接来到n行

shift+a:自动来到行尾输入

:50,100 w bb.txt 保存50到100行的内容到bb.txt中

r :替换单个字符 R:替换全行

shift+o:向上插入 o:向下插入

yy 复制 p 粘贴

(n)2yy 复制前两行

y^:复制从光标位置到开头 y$:复制从光标位置到结尾

d:剪贴一行

dd:剪贴两行

ndd:多行

d^:剪贴到开头 d$:剪贴到结尾

:g/^$/d 去掉空行

:g/^\s*$/d 去空格

向左移动25个字符:25+l

:/ 查找 自上而下

:? 查找自下而上

n 下一个

替换:

:s/old/new 把旧的换为新的 单个

:s/old/new/g 整行替换

:%s/old/new/g 整个文件替换

:%s/old/new/gc 整个文件替换并询问

u:替换上次命令

ctrl+r 重做

ctrl+^ 两个切换

打开多个文件

vim a.txt b.txt c.txt

:args 可选

:next

:prev

:last

vim diff a.txt b.txt

ctrl+w+w 跳到第二个文件

:wqa

使用vimtutor工具联系vim使用。

vimtutor工具使用方法:

vimtutor zh

如果出现乱马,使用下面命令解决(只能执行一次)

cd /usr/share/vim/vim70/tutor

mv tutor.zh.euc tutor.zh.euc.bak

iconv -f gb2312 -t utf-8 tutor.zh.euc.bak tutor.zh.euc

vimtutor zh

locate :空间换时间

updatedb

locate passwd

find [路径] [参数] [表达式]

find /usr/share/doc -name filename

-user:根据文件拥有者寻找文件

-group:根据文件所属组寻找文件

-name:根据文件名寻找文件

-perm:根据文件权限寻找

-size:根据文件大小寻找

-type:根据文件类型寻找文件,参数对应c b l f d

find 的表达式使用通配符时需要使用“”圈界

find 目录 条件 条件

[root@localhost ~]# find / -name "pass*"

当前目录:.

find . -name "*ss*"

find . -type f(文件)

find . -type d(目录)

[root@localhost ~]# find . -nouser(文件无属主)

[root@localhost ~]# find . -nogroup(文件无属组)

[root@localhost ~]# find /home/ -user/group user1

-exec

[root@localhost ~]# find . -nouser -exec rm {} \;

{}代表文件和目录

\转义字符

-ok

find . -nogroup -ok rm -rf {} \;有提示删除

[root@localhost ~]# stat a

File: “a”

Size: 0 Blocks: 0 IO Block: 4096 一般空文件

Device: 803h/2051d Inode: 261796 Links: 1

Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)

Access: 2011-04-02 14:23:25.000000000 +0800(创建时间:-atime)

Modify: 2011-04-02 14:23:25.000000000 +0800(修改时间:-mtime)

Change: 2011-04-02 14:23:25.000000000 +0800(改变属组属主会变:-ctime)

find /root -mtime -5(5天以内) 5(5天时) +5(5天前)

find . -perm 400:要求权限全部匹配,精确匹配

find . -perm +600(wr):有w,r中任意权限的都会列出,即会列出200 400 600 的权限

find . -perm -600 :要求权限完全满足 权限大于等于600

-name -type

-name -user

-perm -type

-nouser

-nogroup

-mtime

-exec

-ok

-rgex(正则表达式)

linux替换文件命令

1、这么就用不会提示了:#

\cp

-rf

2、

原因:

#

vi

~/.bashrc

如果你看到如下内容,以下命令都会用别名执行了,就是说自动加了

-i

参数:

alias

rm='rm

-i'

alias

cp='cp

-i'

alias

mv='mv

-i'

为了让复制和移动大量文件去覆盖目标时,不会产生一个个的提示,命令应该这样写

#

\cp

-rf

/data/xxx*

/home/xxx

注意

cp

命令前加了

\

,意思是不让它用~/.bashrc里的别名运行,即

-i

参数

3、补充cp该命令的各选项含义如下

-

a

该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。

-

d

拷贝时保留链接。

-

f

删除已经存在的目标文件而不提示。

-

i

和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。

-

p

此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。

-

r

若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。

-

l

不作拷贝,只是链接文件。

4、需要说明的是,为防止用户在不经意的情况下用cp命令破坏另一个文件,如用户指定的目标文件名是一个已存在的文件名,用cp命令拷贝文件后,这个文件就会被新拷贝的源文件覆盖,因此,建议用户在使用cp命令拷贝文件时,最好使用i选项。

linux之文本内容替换命令sed

sed简介:流编辑工具,用来对文本进行过滤与替换操作。

sed流程:sed通过一次仅读取一行内容来对某些指令进行处理后输出。

1、sed通过文件或管道读取文件内容,但sed默认并不直接修改源文件,而是将读入的内容复制到缓冲区中,称之为模式空间。

2、所有的指令操作都是在模式空间找那个进行

3、sed根据相应的指令对模式空间中的内容进行处理并输出结果,默认输出至标准输出(即屏幕上)。

sed基本语法格式:

用法:sed[选项]...{脚本指令}[输入文件]...

选项: -version 显示sed版本

-help :显示帮助文档

-n,-quiet,-silent静默输出,默认情况下,sed程序在所有的脚本指令执行完毕后,将自动打印模式空间中的内容。

-e script允许多个脚本指令被执行

-f script-file从文件中读取脚本指令,对编写自动化脚本程序很实用

-i ,-in-place 该选项直接修改源文件

-l N 该选项指定l指令可以输出的行长度,l指令为输出非打印字符。

-posix 禁用GNU sed扩展功能。

-r 在脚本指令中使用扩展正则表达式。

-s,-separate 默认情况下,sed将把输入的多个文件名作为一个长的连续的输入流。而GNU sed则允许把它们当作单独的文件。

-u,-unbuffered 最低限度的缓存输入与输出

a,append表示追加指令;

i,insert表示插入指令;

d,delete表示删除指令;

s,substitution表示替换指令。

sed脚本指令的基本格式是:

[地址,即路径]命令(有些命令仅可以对一行操作,有些可以对多行操作),命令也可以用花括号进行组合,使命令序列可以作用于同一个地址。

address{

command1

command2

command3

}

sed的基本工作方式是:

sed的替换命令s:

1、全局替换 : s/old/new/g ,其中g为全局替换,用于替换所有出现的次数; /如果和正则匹配的内容冲突可以使用其他符号,如 : s@old@new@g

2、标志位

为什么要有多行模式: 配置文件一般有单行出现,但也有使用json或XML格式的配置文件,为多行出现。

多行模式处理命令N、D、P

linux 中如何用vi编辑器替换相同的字符?

1)单字符替换:在命令模式下使光标位于要替换的字符,按r,再按需要的字符;

2)取代字符串:在命令模式下

$s/string/replae/g

会将全文的string字符串取代为replace字符串,其中1,$s就是指搜寻区间为文章从头至尾的意思,g则是表示全部取代不必确认。

%s/string/replace/c:同样会将全文的string字符串取代为replace字符串,和上面指令不同的地方是,%s和1,$s是相同的功能,c则是表示要替代之前必须再次确认是否取代。

1,20s/string/replace/g:将1至20行间的string替代为relpace字符串。

Linux 编辑文本命令

一、vi编辑器有3种基本工作模式

分别是:命令模式、文本输入模式、和末行模式。

第一:命令行模式:

该模式是进入vi编辑器后的默认模式。任何时候,不管用户处于何种模式,按下ESC键即可进入命令模式。在该模式下,用户可以输入vi命令,用户管理自己的文档。此时从键盘上输入的任何字符都被当作编辑命令来解释。若输入的字符是合法的vi命令,则vi在接受用户命令之后完成相应的动作。但需要注意的是,所输入的命令并不回显在屏幕上。若输入的字符不是vi命令,vi会响铃报警。

第二:文本输入模式:

在命令模式下输入命令i、附加命令a、打开命令o、修改命令c、取代命令r或替换命令s都可以进入文本输入模式。在该模式下,用户输入的任何字符都被vi当作文件内容保护起来,并将其显示在屏幕上。在文本输入过程中,若想回到命令模式下,按ESC键即可。

第三:末行模式:

末行模式也称ex转义模式。在命令模式下,用户按“:”键即可进入末行模式下,此时vi会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个“:”作为末行模式的说明符,等待用户输入命令。多数文件管理命令都是在此模式下执行的(如把编辑缓冲区的内容写到文件中等)。末行命令在执行完后,vi自动回到命令模式。如果要从命令模式转换到编辑模式,可以键入a或者i。如果需要从文本模式返回,则按ESC即可。在命令模式下输入“:”即可切换到末行模式,然后输入命令。

实例演示

首先我们使用命令 vi filename 打开一个文件,这个时候进入到的是命令模式

接下来我们按i,然后键盘随便输入写内容。

然后按ESC重新进入到命令模式。

在命令模式的情况下,我们按:,进入到了末行模式。

我们输入wq!,然后回车,强行保存退出。

下次我们再打开对应文件(可用less filename命令打开),即可看到内容已经更改。

补充:

(1)末行模式下:q! 【强制退出不保存】 q【退出不保存】 wq【退出并保存后面也可以加个!】

(2)如果你不想保存直接退出有可以在命令模式下使用“ctrl+z”快捷键或者按住“shift”键,输入两个z即可退出。

更多命令

进入vi的命令:

vi filename :打开或新建文件,并将光标置于第一行首

vi +n filename :打开文件,并将光标置于第n行首

vi + filename :打开文件,并将光标置于最后一行首

vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处

vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename

vi filename….filename :打开多个文件,依次进行编辑

屏幕翻滚类命令:

Ctrl+u:向文件首翻半屏

Ctrl+d:向文件尾翻半屏

Ctrl+f:向文件尾翻一屏

Ctrl+b;向文件首翻一屏

nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。

插入文本类命令:

i :在光标前

I :在当前行首

a:光标后

A:在当前行尾

o:在当前行之下新开一行

O:在当前行之上新开一行

r:替换当前字符

R:替换当前字符及其后的字符,直至按ESC键

s:从当前光标位置处开始,以输入的文本替代指定数目的字符

S:删除指定数目的行,并以所输入文本代替之

ncw或nCW:修改指定数目的字

nCC:修改指定数目的行

删除命令:

ndw或ndW:删除光标处开始及其后的n-1个字

do:删至行首

d$:删至行尾

ndd:删除当前行及其后n-1行

x或X:删除一个字符,x删除光标后的,而X删除光标前的

Ctrl+u:删除输入方式下所输入的文本

搜索及替换命令:

/pattern:从光标开始处向文件尾搜索pattern

?pattern:从光标开始处向文件首搜索pattern

n:在同一方向重复上一次搜索命令

N:在反方向上重复上一次搜索命令

:s/p1/p2/g:将当前行中所有p1均用p2替代

:n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代

:g/p1/s//p2/g:将文件中所有p1均用p2替换

撤销回退命令:

u 撤销上一步的操作

Ctrl+r 恢复上一步被撤销的操作

选项设置:

all:列出所有选项设置情况

term:设置终端类型

ignorance:在搜索中忽略大小写

list:显示制表位(Ctrl+I)和行尾标志($)

number:显示行号

report:显示由面向行的命令修改过的数目

terse:显示简短的警告信息

warn:在转到别的文件时若没保存当前文件则显示NO write信息

nomagic:允许在搜索模式中,使用前面不带“\”的特殊字符

nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始

mesg:允许vi显示其他用户用write写到自己终端上的信息

末行模式命令:

:n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下

:n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下

:n1,n2 d :将n1行到n2行之间的内容删除

:w :保存当前文件

:e filename:打开文件filename进行编辑

:x:保存当前文件并退出

:q:退出vi

:q!:不保存文件并退出vi

:wq:保存并退出

:!command:执行shell命令command

:n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入

:r!command:将命令command的输出结果放到当前行

寄存器操作:

“?nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字

“?nyw:将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字

“?nyl:将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字

“?p:取出寄存器?中的内容并将其放到光标位置处。这里?可以是一个字母,也可以是一个数字

ndd:将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中。


分享文章:linux替换r命令 r语言删除命令
分享地址:http://pwwzsj.com/article/hghdpd.html