liunxs运维_linux系统运维常用基本命令详解一

1、ls

文件属性:

-:普通文件

d:目录文件

b:块设备

c:字符设备文件

l:符号连接文件

p:命令管道

s:套接字文件

文件权限:

9位数字,每3位一组

文件硬链接次数

文件所属主(owner)

文件的属组(group)

文件大小(size),单位默认是字节

ls常用选项:

-l:显示文件属性,ls -l=ll

-h:做相应的单位转换显示

-a:显示所有文件

-A:显示.和..以为的所有文件

-d:显示目录自身属性

-i:显示文件的缩影接点号码(index node ,inode)

-r:逆序显示文件列表

-R:递归显示文件

2、cd

cd:change directory

cd:回到用户的家目录

cd ~username:进入指定用户的家目录

cd - :在当前目录和前一次所在的目录来回切换

cd ..:切换至其父目录

3、printenv:显示当前环境变量信息

4、时间管理

date:显示系统时间

clock:显示硬件时间

hwclock -W:把系统时间同步到硬件时间

hwclock -s:把硬件时间同步到系统时间

cal:显示日历

5、命令帮助

内部命令帮助:help COMMAND

外部命令帮助:man  COMMAND

命令手册:manual

whatis COMMAND:显示此命令在man帮助的哪个章节内。

============================================================

man的操作命令:

空格:向后翻一屏

b:向前翻一屏

ENTER:向后翻一行

k:向前翻一行

============================================================

关键字查找

/KEYWORD:向后查找关键字

?KEYWORK:向前查找关键字

n:下一个关键字位置

N:前一个关键字

q:退出man帮助

6、file

file:用于查看普通文件和系统文件的类型

7、mkdir

mkdir:创建目录

rmdir:删除目录

-p:递归创建

-V:显示创建信息

8、rm

rm:删除文件

-i:交互式删除

-f:暴力删除

-r:递归删除

命令可以组合利用

9、touch

touch:创建文件

-c:文件存在的时候不在创建

-a:只改变文件的访问时间

-m:只改变文件的修改时间

-t:自己设定文件的时间戳(年月日时分.秒),与a、m配合使用

10、cp

cp:文件复制,规则:只有最后一个为目标。复制一个文件到一个文件  或者 多个文件

到一个目录!

cp /etc/passwd /tmp/   复制到目录下并保存原文件名

cp /etc/passwd /tmp/test 看test是文件还是目录,目录:负责到目录内,

文件则替换!

==============================================================

-r:递归复制目录

-i:交互式显示复制

-f:强制复制,覆盖

-p:保留源文件的属性,时间戳

-a:保留源文件的所有属性

-P:复制链接文件时保存为链接(默认是复制链接所指向的文件)

-d:复制时保持链接

-a:归档复制,常用与备份

11、mv

mv:移动或重命名文件

mv SRC(源) DEST(目标)

在统一目录下可以利用mv进行重命名: mv abc bcd 或者 mv -t 目标 源

12、cat

cat:连接并显示文件的信息,是全部显示文件内的信息

-n:在显示的时候可以显示行号,这个行号只是显示出来,跟文件内容没有  关系

-E:显示每一行的行结束符,所以linux中文本文件的行结束符是$符

-T:可以显示制表符

-v:显示其他的非打印字符

-A:显示所有的符号

13、more

more:more的作用同cat是相同的,只不过这时我们可以通过手动来翻屏,更加方便

,more:只支持向后翻,翻到最后

就直接退出了

less:显示文件信息,默认不退出显示,q即可退出

空格:向后翻一屏

b:向前翻一屏

ENTER:向后翻一行

k:向前翻一行

关键字查找

/KEYWORD:查找关键字

14、head、tail

head:显示文件的前几行,默认是10行

-NUM:显示前多少行

tail

tail:显示文件的后几行,默认是10行

-NUM:显示后多少行

-f:查看文件尾部,而且不退出,等待显示后续追加的新内容;

15、cut

cut:用于剪切数据的内容

-d:指定字段分隔符,默认的是空格  cut -d: -f7 空格符 cut -d''

-f:指定要剪切显示的字段

-f 1  表示显示第一个字段  cut  -f1

-f 1,3表示显示第一个和第3个字段

-f 1-3表示显示从1到3的字段

16、sort、uniq、wc

sort:文本排序,仅仅是对显示文件的排序,而不影响源文件的顺序,是根据ASSII码

的字符升序来排列的。

-n:安装数值大小从小到大排列

-r:降序排列

-t:指定字段分隔符

-k:从哪个字符开始,就是指定关键字排列

-u:相同的行只显示一次

-f:忽略字符大小写

================================================================

uniq:报告或者忽悠重复行

-d:只显示重复行

-c:显示某一行的重复次数

================================================================

wc:文本统计,可以统计文件中一共有多少行数,多少个单词数,多少个字节数 -l:只显示行数 -w:只显示单词数 -c:只显示字节数 -L:显示最长的一行包含多少个字符

17、tr

tr:转换或删除字符

tr [OPTION]...SET1 [SET2]

例如# tr ab AB   把小写ab都换位大写AB

-d:可以实现删除出现在字符集中的所有字符

18、aliase

aliase:定义shell命令的别名alias CMDALIAS=COMMANDunalias CMDALIAS是撤销命令别名

19、权限

权限: r 、w 、x文件:r:可读,可利用类似 cat等命令查看文件内容w:可写,可以编辑或删除此文件x:可执行,可以再命令提示符下当做命令提交给内核运行。目录:r:可以对此目录执行LS以列出内部的所有文件w:可以在此目录中创建文件x:可以使用cd切换进此目录,也可以使用ls -l查看内部文件的的详细信息。

20、useradd

useradd NAME:增加用户-u UID:指定用户所属主ID-g GID:指定基本组ID或者组名(此组必须首先存在才能用)-G GID:定额外组(附加组),可以指定多个,彼此之间用逗号隔开即可(此附加组必须首先存在才能用)-c "COMMENT"指定注释信息-d /path/to/somedirectory指定用户的家目录,不用的时候默认在home下面建立一个和用户同名的目录。-s 指定shell,路径最后是etc/shells文件内规定的shell路径。-M 不给用户创建家目录-r 创建一个系统用户,共系统调用,并不建立家目录userdel USERNAME:删除用户(不加参数时,默认不删除用户的家目录)-r :删除用户的同时也删除家目录

21、id

id命令:查看当前用户的id信息-g USERNAME:查看用户的gid-u USERNAME:查看用户的uid-G USERNAME:查看用户的所有组-un:显示当前用户的用户名-gn:显示当前用户的组名

22、finger

finger命令:查看用户账户信息finger USERNAME

24、用户账户属性管理

usermod:修改账户的属性usermod [option] USERNAME-u:修改UID-g:修改GID-G:修改附加组-a -G:增加附加组,不覆盖之前的附加组-c:修改用户的注释信息-d:为用户知道新的家目录-d -m :指定信家目录并移动此前家目录的文件至新的家目录内-s:修改用户的默认shell-l:修改用户名-L:锁定用户账户-U:解锁账户

25、用户密码管理

passwd USERNAME-l:锁定账户-U:解锁账户-d:删除用户密码-n:用户密码最短时间-x:用户密码最长使用时间pwck:检查用户账户完整性

26、组管理

groupadd:新建组groupadd [option] GROUPNAME-g :GID指定GID-r :添加为系统组groupmod:组属性groupmod [option] GROUPNAME-g GID:修改gid-n NAME:修改组名gpasswd:修改组密码gpasswd GROUPNAME

27、chage

chage:更改用户账户信息-d:最后一次修改时间-E:过期时间-I:非活动时间-m:最短期限-M:最长期限-W:警告时间

28、chown

chown:改变文件属主、属组,只有管理员是也此命令chown USERNAME file....(只改变目录本身)-R 递归修改(修改目录及其内部文件的属主)--reference=/path/to/somefile file... 把file的属主设定为与somefile的属主一样(不需要指定属主)chown USERNAME:GRPNAME fiel... 同时改变属主和属组chown USERNAME,GRPNAME fiel... 同时改变属主和属组chown :GROUPNAME fiel....   修改属组

29、chgrp

chgrp:修改文件属组chgrp GROUPNAME file....(只改变目录本身)-R 递归修改(修改 目录及其内部文件的属组)--reference=/path/to/somefile file... 把file的属主设定为与somefile的属组一样(不需要指定属组)

30、chmod

chmod:修改文件的用户权限chmod MODE file...-R:递归修改--reference=/path/to/somefile file...chmod 755 file...修改某类用户的某些权限u:属主g:属组o:其他a:所有chmod 用户类别=MODE fiel..chmod u=wr,g=w /fiel..chmod uo=wr /file..修改某类的用户某位或某些位权限chmod 用户类别[-/+]MODE fiel..

31、echoecho:输出信息echo "abc"echo "字符串" | passwd --stdin USERNAME:利用管道修改用户密码

32、输入、输出重定向 输出重定向:> 覆盖输出(会覆盖原文件内的内容): >> 追加输出(不覆盖原文件的内容)set -C :禁止对已经存在文件使用覆盖重定向set +c :关闭上述功能2>:重定向错误输出,不能输出正确信息2>>:追加方式实现错误输出&>:重定向标准输出或错误输出至同一个文件。 时覆盖方式输入重定向:<<<:>> /tmp/myfile.txt <

33、grep grep:根据模式,搜索文本,并将符合模式的文本行显示出来-i 忽略大小写--colour(color)颜色显示-v 反向查找,显示没有被模式匹配的行-O 只显示被模式匹配的字符串

34、sedsed:流编辑器,把文本中的某一行读取到内存中进行处理,此内存空间称为模式空间。默认不编辑原文件,只对模式空间内的数据进行处理,处理结束后,将没模式空间打印至屏幕sed 'AddressCommand'  file...-n :静默模式,不在显示模式空间中的内容-i :直接修改原文件-e :(-e SCRIPT -e SCRIPT) 可以同时执行多个脚本-f /PATH/TO/SED_SCRIPT: sed -f /path/to/sed_script file:执行脚本文件-r :使用扩展的正则表达式d:删除符合条件的行fg:/etc/inittab    删除1-2行sed '/root/d' /etc/fastab 删除包含root的行p:显示符合条件的行。fg:sed '/^\//d' /etc/fastb 删除以/开头的行sed '/^\//p' /etc/fastb 显示以/开通的行a \string:在指定的行后追加新的行,内容为stringi \string:在指定的行前面添加新行,内容为stringr FILE :将指定的文件的内容添加至符合条件的行处w FILE :将地址指定范围内的内容另存至指定的文件中s/pattern/string/ :查找并替换(默认只替换每行中第一次被pattern匹配到的字符串)  把pattern匹配的字符换为string修饰符:g 全局替换   s/pattern/string/gi 忽略字符大小写 s/pattern/string/is///=s###=s@@@ 在找/时就不用转意了。&:后向引用,引用模式匹配的整个串===========================================================================================fg:sed练习:1、删除/etc/grub.conf文件中行首的空白符;sed -r 's/^[[:space:]]+//g' /etc/grub.conf2、替换/etc/inittab文件中"id:3:initdefault:"一行中的数字为5;sed 's/id:3:initdefault/id:5:initdefault/g' /etc/inittabsed 's@\(id:\)[0-9]\(:initedefault)@\15\2@g' /etc/inittab3、删除/etc/inittab文件中的空白行;sed '/^$/d' /etc/inittab4、删除/etc/inittab文件中开头的#号;sed 's/^#//g' /etc/inittab5、删除某文件中开头的#号及后面的空白字符,但要求#号后面必须有空白字符;sed 's/^#[[:space:]]\{1,\}//g' /etc/inittab 或者sed  -r 's/^#[[:space:]]+//g' /etc/inittab6、删除某文件中以空白字符后面跟#类的行中的开头的空白字符及#sed -r 's/^[[:space:]]+#//' 17、取出一个文件路径的父目录名称;echo "/etc/rc.d" | sed -r 's@^(/.*/)[^/]+/?@\1@g'以/.*/开头,[^\]指非斜杠,\1引用左边第一个括号内的内容一次。echo "/etc/rc.d" | sed -r 's@^/.*/([^/]+)/?@\1@g'

提取本文件

35、vim

vim:文本编辑器,全屏、模式化的编辑器

vim模式:

编辑模式(命令模式):默认

输入模式

末行模式

------------------------------------------------------------------------------------------

vim模式转换:

1、从编辑模式-->输入模式

i:在当前光标所在字符的前面,转为输入模式

a:在当前光标所在字符的后面,转为输入模式

o:在当前光标所在行的下方新建一行,并转为输入模式

I:在当前光标所在行的行首,转为输入模式

A:在当前光标所在行的行尾,转为输入模式

O:在当前光标所在行的上方新建一行,并转为输入模式

---------------------------------------------------------------------------------------

2、从输入模式-->编辑模式

键入esc键。

3、末行模式:必须从编辑模式进入末行模式

键入:即可。

4、末行模式-->编辑模式

敲esc键,一次或者多次。

-------------------------------------------------------------

vim退出文件:

1、末行模式下关闭文件

w:保存文件

q:退出

wq:保存并退出

q!:不保存并退出

w!:强制保存

wq=x 保存退出

2、编辑模式下退出

大写ZZ:保存退出

------------------------------------------------------------------------------------------

vim下移动光标(编辑模式):

1、逐字符移动:

h:向左

l:向右

j:向下

K:向上

#h:移动#(数字)个字符

2、以单词为单位移动

w:移动下一个单词的词首

e:移动到当前单词的词尾或者下一个单词的词尾

b:移动到当前单词的词首或者上一个单词的词首

#w:一次跳#个单词。

3、行内跳转

0:跳到行首(绝对行首)

^:跳到第一个非空白字符的行首

$:绝对行尾

4、行间跳转

#G:直接跳转至第#行上。

G:直接跳转至最后一行

末行模式下跳转:直接给出行号,回车即可。

-------------------------------------------------------------------------------------------

vim翻屏:

ctrl+f:向下翻一屏

ctrl+b:向上翻一屏

ctrl+d:向下翻半屏

ctrl+u:向上翻半屏

-------------------------------------------------------------------------------------------

vim删除字符:

x:删除光标所在处的单个字符

#x:删除光标所在处及向后的共#个字符

vim删除命令:d

d命令与跳转命令结合使用

d$:删除到行尾。

#d跳转符:删除跳转符指定的#个字符

dd:删除当前光标所在行

#dd:删除包括光标所在行之内的#行

末行模式下可以使用:

startADD,ednADDd

1,10d:删除第一行到第十行

.,100:删除当前行到100行。

.表示当前行

$:最后一行

+#:向下的#行

$-10:倒数第10行

vim删除的内容为保存在缓冲中,最后一次删除的内容可以粘贴。

-------------------------------------------------------------------------------------------

vim粘贴命令:p

p(小写):如果删除的或复制的为正行内容,则粘贴至光标所在含行的下方,如果

复制或删除的内容为非整行,则粘贴至光标所在字符的后面

P(大写):如果删除的或复制的为正行内容,则粘贴至光标所在含行的上方,如果

复制或删除的内容为非整行,则粘贴至光标所在字符的前面

vim复制命令:y

y的用法同d

yy:复制一行

vim先删除内容,再转换为输入模式:c

c的用法同d命令

cc:删除一行,并进入输入模式。

c$:删除到行尾,并进入输入模式

-------------------------------------------------------------------------------------------

vim下撤销编辑操作命令:u

u:撤销上一次操作,连续u命令可以撤销此前的n次操作

#u:直接撤销最近#次编辑操作

-------------------------------------------------------------------------------------------

vim超找替换

/PATTERN:从行首向下查找PATTERN匹配的选项

?PATTERN:从行尾向上查找PATTERN匹配的选项

vim查找并替换:s

在末行模式下使用s命令

用法与sed一样

ADDR1,ADDR2s@PATTERN@string@gi

g:全局 i:忽略大小写

.,$-1 :当前行到倒数第一行

1,$表示全文

vim下shell交互

:!COMMAND 回车查看,查看完以后再回车,进入vim编辑模式。

-------------------------------------------------------------------------------------------

vim高级话题

1、显示或取消显示行号

:set nu

:set nonu

2、设定忽略或区分大小写

:set ignorecase

:set ic 忽略

:set noic

3、设定自动缩进

:set autoindent

:set ai 缩进

:set noai

4、查找到的文本高亮显示或取消高亮显示

:set hlsearch 高亮显示

:set nohlserch 取消

5、语法高亮

:syntax on 开启

:syntax off 关闭

36、let

let:相当于一个小的计算器

let SUM+=$I ;sum等于sum+I

let I+=1:让I等于I加1

let I++:让I等于I加1

let I-=相当于let I--:I等于I减1

37、locate

locate:查找文件,非实时的、模糊匹配,全系统文件数据库的查找命令

updatedb:手动生成文件数据库,新安装的系统没有数据库的,速度快

38、find

find:实时查找、精确、遍历指定目录中的所有文件完成查找,速度慢、支持众多

查找标准

格式:find 查找路径 查找标准 查找到以后的处理运作

查找路径:默认为当前目录

查找标准:默认为指定路径下的所有文件

处理运作:默认为显示到屏幕

-------------------------------------------------------------------------------------------

匹配标准

-name 'FILENAME':对文件名进行精确匹配

还支持文件名通配符:*:任意长度的任意字符

-iname 'FILENAME':文件名匹配不区分大小写

-regex PATTERN:基于正则表达式进行文件名匹配

-user USERNAME:基于文件所属主进行匹配查找

-group GROUPNAME:基于文件的属组进行查找

-uid UID:基于文件的uid,用户被删了以后id号会保存下来

-gid GID:文件组

-nouser:查找没有属主的文件

-nogroup:查找没有属组的文件

-type :根据文件的类型来查找

f:普通文件

d:目录

p:管道

s:套接字

l:链接

-size:指定文件的大小

[+|-]#K:大于或者小于#k的文件

-------------------------------------------------------------------------------------------

时间戳查找

单位为天

-mtime :修改时间

-atime :访问时间

-ctime:改变时间

支持[+|-]#:

5:五天那一天访问

-5:五天之内

+5:至少五  天之外

单位为分钟

-amin:访问时间

-cmin:修改时间

-tmin:改变时间

文件的权限查找

-perm mode(755):精确查找

fg:find 路径 -pern 755

-perm /mode : 三位匹配一位就可以

-perm -mode:文件权限能完全包含此mode才可以显示

执行动作:

-print:默认的,显示

-ls:类似ls -l的形式显示匹配到的每个文件的详细信息

-ok COMMAND {} \;每个操作需要用户确认 执行命令,必须以\;结尾。

{}代表匹配到的文件。

-exec COMMAND {} \;不需要确认,执行命令,必须以\;结尾。{}代表

匹配到的文件。

=========================================================================================

39、SUID

suid:运行某程序时,相应进程的属主是程序文件自身的属主,而不是启动者所属主

添加文件的SUID:chmod u+s FILE

chmod u-s FILE

如果FILE本来原来就有执行权限,则SUID显示为s,否则为大S。

SGID:运行某程序时,相应进程的属组是程序文件自身的属组,而不是启动者所属

的基本组

chmod g+s  FILE

chmod g-s  FILE

fg:一个团队,三个用户:hadoop、hbase、hive,一个开发目录

/tmp/project,要求这三个用户可以同时修改同一个文件。查看、编辑、等权限

三个用户同属一个基本组,并要求基本组具有查看、编辑权限。。

groupadd devdeop

chown -R :develop /tmp/projest

usermod -a -G develop hadoop

chmod g+s /tmp/project

然后就可以进行创建、修改、删除同一个文件了。

===========================================================================================

40、sticky

sticky:规定在一个公共目录,每个人都可以创建文件、删除自己的文件,但不

能删除别人的文件。

chmod o+t DIR:对目录增加sticky权限

chmod o-t DIR:去掉目录的sticky权限

chmod 1755 /backup/test 表示文件具有sticky权限

41、facl

facl:利用文件扩展保持额外的访问权限

setfacl:设置某文件的控制权限

-m:增加facl

u:设定用户的时候,后面加上u:UID:perm

fg:setfact -m u:UID:rw file

g:设置组

-x:取消facl

getfacl:查看文件的facl权限

42、whoami

whoami:显示当前用户是谁,su半切换的时候显示的是切换之前的那个用户

43、who

who:查看当前登录系统的用户以及他所登录的终端

-r:显示当前运行级别

-H:第一回列表显示各列名称

w:显示比who更详细的信息

44、last

last:显示当前系统上的登录日志(/var/log/wtmp文件),包括系统用户和

重启信息

last -n 数字:只显示最近几次的登录信息

45、lastb

lastb:显示用户错误的登录常识

lastb -n 数字:只显示最近几次错误的登录信息。

46、lastlog

lastlog:显示每个用户最近一次成功登录的信息

lastlog -u USERNAME:显示指定用户最近一次的登录信息

47、basename

basename:显示一个目录的基名

basename /etc/abc/me 直接显示me

$0:命令名称或者脚本本身的路径。

basename $0:直接调用脚本本身路径

==========================================================================================

48、mail

mail:邮件查看,可以查看邮件,查看以后就会放到用户的家目录内mbox文件夹内。

-s主题

mail -s "How are you " root

cat /etc/fast | mail   -s "How are you "   root

49、hostname

hostname:显示当前主机的名称

hostname 主机名:更改主机名

fg:如当前主机的名字为空,或者(none)或者为(localhost),就将其

改为www

[ -z` hostname` -o `hostname` == "(null)" -o `hostname`

== "localhost" ] && host www.

-z:表示是否为空

50、RANDOM

RANDOM:0-32768直接的随机数

echo $RANDOM:生成随机数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值