第四周博客之一---Linux的基本命令(前5个)

一、Linux的系统结构

 

"/"根目录部分有以下子目录:

1./bin:系统启动时需要的执行文件(二进制),这些文件可以被普通用户使用。

2./boot:用于自举加载程序(LILO或GRUB)的文件。当计算机启动时(如果有多个操作系统,有可能允许你选择启动哪一个操作系统),这些文件首先被装在。这个目录也会包含LINUX核(压缩文件vmlinuz),但LINUX核也可以存在别处,只要配置LILO并且LILO知道LINUX核在哪儿。

3./dev:设备文件目录。LINUX下设备被当成文件,这样一来硬件被抽象化,便于读写、网络共享以及需要临时装载到文件系统中。正常情况下,设备会有一个独立的子目录。这些设备的内容会出现在独立的子目录下。LINUX没有所谓的驱动符。

4./sbin:系统执行文件(二进制),这些文件不打算被普通用户使用。(普通用户仍然可以使用它们,但要指定目录。)

5./user目录包含所有的命令、程序库、文档和其他文件。这些文件在正常操作中不会被改变的。这个,目录也包含你的Linux发行版本的主要的应用程序,譬如,Netscape。

6./var目录包含在正常操作中被改变的文件:假脱机文件、记录文件、枷锁文件、临时文件和页格式化文件等。

7./root:系统管理员(也叫超级用户或根用户)的Home目录。

8./opt:可选的应用程序,譬如,REDHAT5.3下的KDE(REDHAT6.0下,KDE放在其他的XWINDOWS应用程序中,主执行程序在/user/bin目录下)

9./lost+found在文件系统修复时恢复的文件。

界面切换操作:

1.按【向上箭头】和【向下箭头】键可以滚动以前使用过的命令键入了文件名、命令、或路径名的一部分,然后按【Tab】键,会把文件或路径名的剩

余部分补全

2.图形与文本界面切换

图形切换到文本界面(命令行界面):ctrl+alt+f4

文本界面(命令行界面)切换到图形:alt+f7

.:代表此层目录

..:代表上层,目录

cd:改变目录,如cd/home,表示由当前目录进入home目录。

pwd:显示目前的目录。

乱码:/etc/profile中添加export LC_ALL=zh_CN.GBK

注销-重启-关机

1.注销(文本模式)

[root@localhost root]#logout注销系统(锁定界面)

2.重启 rebot

[root@localhost root]#reboot重启系统

3.关机 shutdown

[root@localhost root]#shutdown now 立刻关机

[root@localhost root]#shutdown+5 5分钟后关机

[root@localhost root]#shutdown10:30:在10:30时关机

[root@localhost root]#shutdown -r now:立刻关闭系统并重启

[root@localhost root]#shutdown -r 23:59:指定在23:59时重启动

Linux的基本命令

二、基本命令有10

包括:目录管理、文件操作、文件查看命令、用户管理、权限管理、系统设置命令、磁盘管理命令、网络通信命令、备份压缩、通用命令

1、目录管理

ls    查看文件目录信息

mkdir   创建目录

mkdir   test(目录名)

rmdir   删除空目录

rmdir   test(空目录名)

mv命令    

重命名

mv test1(原文件名)    test2(新文件名)

移动文件

mv test(文件名)    目标绝对路径

注意:mv重命名功能时后面对象仅能是对象名,如果有路径将实现移动功能。

2、文件操作

2.1、touch      新建空文件

touch   test.txt(文件名)

2.2、vi命令

vi    test.txt(文件名):打开或新建文件,并将光标置于第一行首

vi    +n  test.txt(文件名):打开文件,并将光标置于第n行首

vi    +     test.txt(文件名):打开文件,并将光标置于最后一行首

vi    +n  test.txt(文件名):打开文件,并将光标置于第n行首

vi    test1.txt     test2.txt….. :打开多个文件,依次编辑,编辑时在末行模式下输入(:n)代表编辑下一个文件,输入(:N)代表编辑上一个文件

vi命令有三种模式,关系图如下:

 

vi移动光标类命令 (命令行下)

•h:光标左移一个字符

•l:光标右移一个字符

•space:光标右移一个字符

•Backspace:光标左移一个字符

•k或Ctrl+p:光标上移一行

•j或Ctrl+n:光标下移一行

•Enter:光标下移一行

•w或W:光标右移一个字至字首

•b或B:光标左移一个字至字首

•e或E:光标右移一个字至字尾

•nG:光标移至第n行首, 文件首行(1G)

•H:光标移至屏幕顶行

•M:光标移至屏幕中间行

•L:光标移至屏幕最后行

•0:(注意是数字零)光标移至当前行首或者( ^ )

•$:光标移至当前行尾

•G: 光标移至文件的最后一行行首

•:0 光标移至文件首行

•显示行号 :set nu (末行模式)

vi插入文本类命令(在查看模式下输入)

•i:在光标前

•I:在当前行首

•a:光标后

•A:在当前行尾

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

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

vi保存退出命令

:q :退出vi

:wq :保存并退出vi

:w :保存编辑内容

:q! :强制退出

:wq! :强制保存并退出vi

vi复制粘贴(命令模式下)

• yy复制一行

•p 粘贴

• [n]yy复制n行

•p 粘贴

vi剪切与删除(命令模式下)

•dd删除一行

•ndd删除光标行的后n行

•p粘贴上面的内容

vi搜索命令(命令模式下,输入/后面搜索的内容)

•按 n 向后搜索

•按 N 向前搜索

vi替换命令(末行模式下)

•:%(整个文件内容)s/源(准备替换的字符)/目标替换(要替换成什么字符)/g(全局替换)

vi撤销命令(命令模式下)

              •u撤销至上一步

              •crtl + r恢复至上一步撤销

vi其他命令

              •set      nu!(末行模式下)             显示行号

              •file(末行模式下)              显示当前文件名

2.3、cp命令

将源文件复制至某处

cp   -r    test1(源文件目录)  test2(目标文件目录)

cp   test1/test.txt(源文件)       test2/…(目标目录)

2.4、mv命令

将源文件剪切至某处

mv test1(源文件)      test2(目标目录)

2.5、rm命令

删除文件或目录

rm  -rf      test.txt强制删除文件或目录,没有友好提示

rm  -i  删除文件或目录时会有提示            

2.6、wc命令

打印文件中的字符行数、字节数、单词个数等

wc  filename         查看文件的行数、字符总数、文字总数

• -c, --bytes:统计字节数

wc  -c filename         统计该文件的字节数

• -m, --chars:统计字符数(同上)

• -l, --lines: 统计行数(同上)

• -L, --max-line-length:打印最长行的长度(同上)

• -w, --words: 统计字数(由空白、等分隔)

2.7、sort命令

将文本文件内容加以排序

sort  filename   将文件排序

sort  -r  filename  将文件按倒序排序

2.8、find命令

目录结构中搜索文件,并执行指定的操作

find  /etc/(文件路径)  -name(参数)  filename(文件名)

find  -name  filename  按照文件名查找文件

find  -name  “* [A-Z].txt”  查找文件名含有[A-Z]的文件,*代表通配

find  -perm  filename  按照文件权限来查找文件

find  -perm   755   查找755权限的文件

find  -user  filename  按照文件属性来查找文件

find  -group  filename  按照文件所属的组来查找文件

find  -type  [d(目录)]  [l(软链接)]  [f(文件)]  filename   查找某一类型的文件

find  /  -type  d  -name   ‘*log’  查找log类型的目录

find  -size  +(-)10   查找长度大于(小于)10块的文件(1块=512字节)

注意:可以指定目录查询

2.9、grep命令

用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设grep指令会把含有范本样式的那一列显示出来

grep  要过滤的字符  要过滤的文件

Grep命令:

-c:只输出匹配行的计数。

grep  -c  A  filename  输出该文件中包含A字符的总数

-i:不区分大小写

grep  -i  A  filename  输出与关键字符A的匹配行,不区分大小写

-h:查询多文件时不显示文件名。

-l:查询多文件时只输出包含匹配字符的文件名。

Grep  -l  A  te**  查找关键字A的文件名前缀名有te开头的文件

-n:显示匹配行及行号。

grep  -n  A  filename  输出与关键字符A的匹配行,并显示行号

-s:不显示不存在或无匹配文本的错误信息。

-v:显示不包含匹配文本的所有行。

grep  -r  aaa   file  搜索file目录下所有文件中是否包含aaa这个字符串

3、文本查看命令

3.1、cat命令

显示文件内容,并且支持将多个文件串连后输出

cat  -n  test.txt          对文件所有输出进行编号

cat  -b  test.txt          对文件所有输出进行编号,但空白行不编号

cat  filename1  filename2  filename3…   同时显示多个文

3.2、head命令   

输出文件最前面的几行数据

head  -3(可变)  filename     显示该文件的前三行(可变)的数据

3.3、more命令

分页显示文件内容 (一页一页地显示,仅只能向前)

more  +3  -2  filename       显示从第2行开始,每页显示3行数据

•-num:每页显示多少行内容

•+num:从多少行开始显示

3.4、less命令

分页浏览 (可以向前翻页与可以向后翻页)

less  test.txt    显示文件内容

下翻页 d , 上翻页u,退出是q

3.5、tail命令

命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的文件内容.

•-f 循环读取

tail  -f  filename  循环读取文件

•-n<行数> 显示行数

tail  -n  n  filename       打印输入最后n行的内容

tail  -f  -n  n  filename  循环打印最后n行的内容

•-c<数目> 显示的字节数

4、用户管理(在home目录下操作)

4.1、useradd = adduser

建立用户帐号

useradd  参数  新建的用户名

-c   <备注> 加上备注文字。备注会保存在passwd备注栏位中

useradd  -c  (备注)  user  新建user用户并添加备注

-d   <登入目录> 指定用户登入时的启始目录。

-e  <有效期限> 指定帐号的有效期限。时间格式:yyyy-mm-dd

-g  <群组> 指定用户所属的群组。

-r   建立系统帐号。

-s  <shell> 指定用户登入后所使用的shell。

-u  <uid> 指定用户ID

useradd  -u  766(指定的uid)  user  新建user用户并指定UID

-p(password)   加密型密码,查看使用 tail -l /etc/shadow(谨慎使用)

id  user  查看用户

4.2、passwd

passwd  user  为用户user添加密码

passwd文件介绍

 

       1       2    3    4               5                                      6                 7

•1: 登录名

•2: 口令 (密码)

•3: 用户标识号(UID)

•4: 组织标识

•5: 用户名 用-c创建内容

•6: 用户主目录

•7: 命令解释程序 如/bin/bash 用户登录系统时运行的程序

tail  -l  /etc/shadow   查看加密后的用户账号和密码使用

4.3、usermod

修改用户帐号

usermod   -参数   user

-c  <备注> 修改用户帐号的备注文字。

-d  <登入目录> 修改用户登入时的目录。

-e  <有效期限> 修改帐号的有效期限,格式:YYYY-MM-DD

-g  <群组> 修改用户所属的群组。

usermod  -g  root  user  将user用户所属组改为(root创建user用户时该用户默认组是user)

-L  锁定用户密码,使密码无效。

-s  <shell> 修改用户登入后所使用的shell。

-u  <uid> 修改用户ID。

-U  解除密码锁定。

4.4、userdel

删除用户帐号

userdel   [-r]  user  userdel可删除用户帐号与相关的文件。若不加参数,则仅删除用户帐号,而不删除相关文件

-r   删除用户及其home目录

userdel   -r   user  删除user及其主目录

4.5、groupadd

建立用户组

-g   gid:指定组ID号

-r: 创建系统用户组,低于499系统账号

groupadd  -g  123  userg  添加userg用户组,并指定gid为123

cat  /etc/group  |  grep  ‘userg’ 查看用户组

4.6、groupmod

更改群组识别码或名称

groupmod  [-g <群组识别码> <-o>] [-n <新群组名称>] [群组名称]

-g   <群组识别码> 设置欲使用的群组识别码

-n   <新群组名称> 设置欲使用的新的群组名称

groupmod  -n  userg1  userg2  将userg2用户组的组名改为userg1

4.7、groupdel

删除群组

groupdel  userg

注意:需要从系统上删除群组时,可用groupdel指令来完成这项工作。倘若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组

groupdel  userg   删除userg用户组

5、权限管理

5.1、ls  -l

Linux中将文件的权限分为只读、可写、执行三种,分别以r(read)、w(write)、x(execute)表示

 

•1、表示文件的类型,“d”表示该文件为目录,也就是通常意义的文件夹,“-”表示该文件是一般文件,“l”表示该文件为一个软链接,也就是通常意义的快捷方式。

•2、表示文件所有者u的权限,其中r为读权限,w为写权限,x为执行权限,

•3、表示文件所属组g的权限,r,w,x含义同上。

•4、表示其他人o对该文件拥有的权限,r,w,x含义同上。

•5、表示(硬)连接数;

•6、表示文件拥有者;

•7、表示文件所属组;

•8、表示文件的大小;

•9、表示文件创建日期&最后修改日期;

•10、文件名称

5.2、chmod

改变文件或目录的访问权限

chmod   [-R]   权限  文件名

chmod  467  filename   修改该文件的权限

也可以使用下列方法为用户设定指定权限

•+:添加权限(w、r、x)

•-:删除权限(w、r、x)

•u:文件拥有者 g:文件所属组 o:其他人 a:所有人

•[root@localhost]$ chmod u+x *

•[root@localhost]$ chmod g+rx *

•[root@localhost]$ chmod a-r *

5.3、chown

修改文件所有者和所属组

chown  [-R]  权限  文件名

-R 递归修改目录以及其子目录下的所有文件

修改文件的用户及用户组

 

 

5.4、chgrp

修改文件所属用户组

chgrp   [-R]  组名  文件名

-R  递归修改

 

5.5、diff

比较两个文件之间的不同

diff   [options]  from  -file  to  -file

diff  test1  test2  比较test1和test2文件的不同

 

diff -u test1 test2 (合并格式)

•"---"表示变动前的文件,"+++"表示变动后的文件。

•第二部分,变动的位置用两个@作为起首和结束。

diff -c test1 test2 (上下文格式)

•“+” 比较的文件的后者比前着多一行

•“-” 比较的文件的后者比前着少一行

•“!” 比较的文件两者有差别的行

原文地址:https://www.cnblogs.com/zouyaoyao/p/8727812.html