linux 基础学习

          

Linux学习

1、显示目录文件命令ls 英文原意:list 命令位置:/bin/ls 执行权限:所有用户

命令格式:命令 [-选项] [参数]

例如:ls -la /etc

说明:1)个别命令使用不遵循此格式

2)当有多个选项时,可以写在一起

3)简化选项与完整选项-a等于—all

语法:ls 选项[-adl] [文件或目录]

-a 显示所有文件,包括隐藏文件和. ..

-l 显示详细信息

-d 查看目录本身属性

-h 显示方便人看的大小

-i 查看i节点

查看一个目录的详细信息:ls -ld /

文件类型

属主权限

属组权限

其他用户权限

0

1

2

3

4

5

6

7

8

9

d

r

w

x

r

-

x

r

-

x

目录文件

执行

执行

执行

一、文件类型:

标示

d

-

l

b

p

c

s

含义

文件夹

普通文件

链接(类似Windows的快捷方式)

块设备文件(例如硬盘、光驱等)

管道文件

字符设备文件(例如猫等串口设备)

套接口文件/数据接口文件(例如启动一个MySql服务器时会产生一个mysql.sock文件

二、文件权限

权限

对应数字

意义

权限

对应数字

意义

权限

对应数字

意义

r

4

可读

w

2

可写

x

1

可执行

-:某一位置为空时显示-,表示不具备这个权限

权限位由9位组成,前3位表示文件拥有者的权限,中间3位表示文件所属用户组的权限,后3位表示其他用户的权限。

举例如下drwxr-xr-x  2 root mail  4096 1月  12 03:44 account

表示文件夹account,root是他的所属拥有者,具有可读可写可执行的权限;

mail是他的所属用户组,具有可读、可执行的权限,不具备可写的权限;其他用户针对这个文件夹具有可读、可执行的权限,不具备可写的权限

用户

意义

u

所有者(user)

g

所属群组(group)

o

其他人(other)

a

全部的人(all)

更改权限命令:

chmod 权限 文件名

chmod有两种用法

1.chmod 用户+(-)权限 文件名

(增加权限用+,减少权限用-,直接等

于的权限用=)

例:给文件test.txt的其他用户增加可读的权限

chmod o+r test.txt 

权限其他说明:

文件都有默认权限:

类型

默认权限

文件

rw-rw-rw-

目录

rwxrwxrwx

但是这个权限不一定是我们linux系统的默认权限,每个系统都有一个权限掩码(unmask)

使用命令查看权限掩码(umask查看数字掩码;umask -S查看字符掩码)

https://www.linuxidc.com/upload/2017_02/170208084347693.png数字掩码:默认掩码减去数字掩码代表的权限

字符掩码:取默认淹没和字符掩码的交集代表权限

修改权限掩码的命令:umask 007(或者umask u=rw,g=rwx,o=r) 

2.chmod 权限数字 文件名

权限数字由3位数组成

第1位数表示所有者的权限;

第2位数表示所属群组的权限;

第3位数表示其他人的权限

例:将test.txt文件变更权限为文件拥有者可读可写可执行,文件所属组可读可写可执行;其他人可读可执行不可写。

chmod 775 test.txt

说明:数字是对应权限的数值和。

例如7=4+2+1,所以7代表可读可写可执行。5=4+1,所以5代表可读可执行不可写。

0代表不可读不可写不可执行

三、文件所属的拥有者和所属群组

1.更改文件拥有者

命令:chown 用户名 文件

例如:chown work test.txt(将test.txt的拥有者变更为work)

2.更改文件的所属群组

命令:chgrp 群组名称 文件

例如:chgrp named test(将test的所属群组变更为named)

其他:

1.chmod和chgrp、chown都有一个参数-R,可以递归的将目录及它以下的子目录一起变更权限等

2.有的ll后,发现第一段的权限后还有一个“.”或者“+”,如下图所示:

https://www.linuxidc.com/upload/2017_02/170208084347694.png

在网上查了一下,

“.”表示有selinux的安全标签,具有安全上下文属性(可以用ll -LZ查看)

https://www.linuxidc.com/upload/2017_02/170208084347695.png

“+”表示文件应用了其他访问控制的安全措施

2、目录处理命令:mkdir创建文件夹 英文原意: make directories

命令路径: /bin/mkdir 执行权限:所有用户

语法:mkdir -p [目录名]

-p递归创建

3、目录处理命令:cd切换目录命令原意:change directory

命令路径:shell内置命令 执行权限:所有用户

语法:cd [目录]

注意:.代表当前路径,..代表上级目录

4、目录处理命令:pwd显示当前所在目录 命令原意:print working directory

命令路径:/bin/pwd

语法:pwd

5、文件处理命令:rmdir 删除空目录 英文愿意:remove empty directories

所在路径:/bin/rmdir

语法:mkdir [目录]

功能:删除空目录

示例:rmdir /test/aaa 删除aaa目录

6、目录处理命令:cp复制文件或目录 英文愿意:copy 命令路径:/bin/cp

执行权限:所有用户

语法:cp -rp [原文件或目录] [目标目录]

-r复制目录

-p保留文件属性

7、目录处理命令:mv剪切文件、改名 英文愿意:move 所在路径:/bin/mv

语法:mv[原文件或目录] [目标目录]

注意:ctrl+l清屏 或者用clear命令

8、目录处理命令:rm删除文件

英文愿意:remove

命令所在路径:/bin/rm

语法:rm -rf [文件或目录]

-r删除目录

-f强制执行

Linux下如何删除非空目录

这个问题很basic,不过还是困扰了我一段时间.(这里主要讨论的是命令行模式下)
我本来觉得应该使用命令rmdir
但是发现它无法删除非空的目录.
后来发现了原来应该使用命令rm -rf 目录名
其中参数-f表示force.使用了这个参数就不会提示你是否要删除了.

9、目录处理命令:rm

范例:rm /tmp /yum.log //删除文件

rm -rf /tmp/test //删除目录

总结:

1) mkdir -p /test/abc -p递归创建目录

2) cd 切换目录

3) pwd查看当前所在目录

4) rmdir 删除一个空目录非空目录使用rm -r删除 结合-f删除不提示

5) rm删除文件 -f删除不提示

6) cp -r -p 复制一个目录 -r复制目录 -p保留文件原有属性

7) mv剪切文件 或者给文件重命名

10、文件处理命令:touch创建空文件 命令路径:/bin/touch

语法:touch [文件名]

示例:touch abc.php

11、文件处理命令:cat显示文件内容 所在目录:/bin/cat

语法:cat [文件名]

功能描述:显示文件内容

-n显示行号

示例:cat /etc/issue

cat -n /etc/services

注意:cat不适合看内容较多的文件。

把cat反过来写tac则会显示文件内容(反向显示)

示例:tac /etc/issue

12、文件处理命令:more分页显示文件内容 命令路径:/bin/more

语法:more [文件名]

(空格)或f翻页

(enter)换行

Q或者q 退出

示例:more /etc/services

13、文件处理命令:less 分页显示文件内容(可向上翻页) 命令路径:/usr/bin/less

语法:less [文件名]

功能:分页显示文件内容(可向上翻页)

示例:less /etc/services

可以结合pageup pagedown上下翻页,可以/关键词,查询关键词

14、文件处理命令:head显示文件的前几行,默认显示前十行 命令路径:/usr/bin/head

语法:head [文件名]

功能:显示文件前面几行

-n 指定行数

示例:head -n 2- /etc/services

15、文件处理命令:tail显示文件末尾内容,默认显示前十行 命令路径:/usr/bin/tail

语法:tail [文件名]

功能:显示文件后面几行

-n指定行数

-f动态显示文件末尾内容 可以监控apache或nginx日志信息

示例:tail -n 19 /etc/services

tail -nf 19 /etc/services

总结:

1)touch 创建一个文件

2)more可以分页显示,不能翻页

3)less分页显示文件内容,可以上下翻页

4) head -n 查看文件前几行

5) tail -n 查看文件末尾几行 动态显示文件内容 tail -n -f

问题:用vim编辑文件,使用tail -n -f a.php 无法动态加载,原因:vim会删除原有的文件,并生成新的同名文件。

用ls -ia.php可以查看a.php的节点,编辑前后是不同的节点

结论:**tail -f**通过inode追踪文件,如果文件的inode发生了变化,将会使**tail -f**失效。

解决方案

使用tail -F替代tail -f,根据man tail的说明,tail -F在文件不可以打开的时候,会重试打开该文件,也就是在vim删除旧文件,创建新文件的过程中,tail短暂性失去了对tmp.test文件的访问权限,加上-F选项后,tail在文件恢复访问后可以重新对文件实施跟踪。

链接命令:

16、文件处理命令:ln 创建软连接文件

示例:创建文件/etc/issue的软连接/tmp/issue.soft

ln -s /etc/issue /tmp/issue.soft

创建文件/etc/issue 的硬链接/tmp/issue.hard

ln /etc/issue /tmp/issue.hard

软连接特征:类似windows快捷方式,文件类型l.文件大小只是符号链接,/tmp/issue.soft->/etc/issue 箭头指向源文件。软连接的权限都是rwx

硬链接特征:拷贝cp -p +同步更新

echo “追加文件末尾” >> /etc/issue

通过i节点识别

不能夸分区

不能针对目录生成硬连接

权限管理命令

1、权限管理命令:chmod 英文愿意:change the permissions mode of file

命令目录:/bin/chmod

语法:chmod [{ugoa} {+-=} {rwx}] [文件或目录] [mode=421] [文件或目录] -R 递归修改

功能:改变文件或目录权限

更改文件的权限要么是管理者,要么是所有者。

示例:chmod u+x,o-r /test/a.php

chmod g-x /test/b.php

chmod o=rx /test/b.php

权限的数字表示:

r----4w----2x-----1

示例:rwxrw-r-- 764

问题: mkdir -p /test/abc

touch /test/abc/a.php

chmod 777 /test/abc

思考:root用户创建的文件,普通用户是否能删除a.php文件

添加用户:1、useradd yonghuming 2、passwd mima

切换用户:切换用户的命令为:su yonghuming

从普通用户切换到root用户,还可以使用命令:sudo su

r

读权限

可以查看内容

可以列出目录中内容

w

写权限

可以修改文件内容

可以在目录中创建,删除文件

x

执行权限

可以执行文件

可以进入目录

在终端输入exit或logout或使用快捷方式ctrl+d,可以退回到原来用户,其实ctrl+d也是执行的exit命令

普通用户是可以删除这个文件的

2、权限管理命令:chown 改变文件或者目录的所有者 英文愿意:change file ownership

命令路径:/bin/chown

语法:chown [用户] [文件或者目录]

示例:chown suhaiyun /test/abc/a.php

3、权限管理命令:chgrp改变文件或者目录的所属组 命令愿意:change file group ownership

命令路径:/bin/chgrp

语法:chgrp [用户组] [文件或目录]

示例:chgrp lampbrother /test/abc/a.php //改变文件a.php所属组

添加组:groupadd lampborther

4、权限管理命令:umask 显示、设置文件的缺省权限 英文愿意:the user file-creation mask

命令路径:shell内置命令

语法:umask [-S]

-S以rwx形式显示所见文件缺省权限

示例:umask -S

权限掩码:umask --à0022

实际权限:777 – 022 = 755 (rwxr-xr-x)

改变新建文件权限:如改成rwxr-xr-- 即754 用777-754=023

执行:umask 023 即可

缺省权限可以更改,但是不建议更改。

1、文件搜索命令:find Windowns推荐使用工具Everything 所在路径:/bin/find

语法:find [搜索范围] [匹配条件]

示例:find /etc -name init

find /etc -iname init -i不区分大小写搜索

find /etc -name *init* 搜索目录中包含init的文件

find /etc -name init* 搜索以init开头的文件

find /etc -name init??? 查询以init开头的七个字母文件

使用*号匹配多个字符 使用?匹配单个字符

find / size +204800 在根目录下搜索大于100MB的文件

+n大于 -n小于,n等于

find / home -user suhaiyun 根据所有者查找文件

find / -group suhaiyun 根据所属组查找

find命令错误提示路径必须在表达式之前

在某些版本的linux下,通过find查找当前目录下所有后缀名jpg的文件,命令为

find ./ -iname *.jpg

会出现“find: 路径必须在表达式之前”的错误提示。解决的方法有两种

使用转义符把*转义,即  \*.jpg

用引号引起来 ,即 “*.jpg”

注意:如果需要把find 的结果提交给while,例如:

`echo find ./ -iname "\*.jpg"` | while read f

do

#do something

done

则既需要转义符,也需要引号

find /etc -cmin -5 查找5分钟内被修改过属性的文件和目录

-amin访问时间 access

-cmin 文件属性 change

-mmin 文件内容 modify

查找/etc下大于80MB小于100MB的文件

find /etc -size +1638400 -a -size -204800

-a两个条件同时满足

-o两个条件满足任意一个

在/etc 下查找inittab文件并显示详细信息

find /etc -name inittab -exec ls -l {}\;

说明:-exec/-ok命令 {}\; 对搜索结果执行操作,固定格式

-exec和-ok区别是-exec没有提示,-ok有提示

-type 根据文件类型查找

f:文件 d:目录 l软连接文件

ls -i查看文件节点

-inum根据i节点查找

示例:找到节点34531并删除、

find . -inum 31531 -exec rm {} \;

2、其他搜索命令:locate在文件资料库中查找文件 命令路径:/usr/bin/locate

语法:locate文件名

示例:locate inittab

执行:locate locate 会看到/var/lib/mlocate/mlocate.db 文件资料库所在位置。

新建文件使用locate如果没有更新资料库,是找不到文件的,这时候就需要更新资料库,执行:updatedb 命令,再次用locate就可以查到

如果把文件创建在/tmp临时目录下,即使updatedb也是找不到的,因为/tmp 不在资料库的收录范围,这一点需要注意。

示例:locate -ia.php -i不区分大小写查找

3、文件搜索命令:which命令名-------- 查找命令所在目录及别名信息

文件搜索命令:whereis [命令名] 搜索命令所在目录及帮助文档路径

命令路径:/usr/bin/whereis

语法:whereis [命令名称]

示例:whereis ls

4、文件搜索命令:grep 在文件中搜寻字符串匹配的行并输出 命令路径:/bin/grep

语法:grep -iv [指定字符] [文件]

-i 不区分大小写

-v排除指定字符串

示例:grep mysql /root/install.log

示例:查找abc.conf中有效行,去除#开头的行

grep -v ^# abc.conf
5、帮助命令:man [命令或配置文件] 获取帮助信息 (info)英文原意:manual

所在路径:/usr/bin/man

示例:man ls 查看ls命令的帮助信息

man services 查看services的帮助信息

查看具体选项意思:-n n代表选项名

6、帮助命令:whatis 简洁查找一个命令的意思

示例:whatis ls

7、帮助命令:apropos [配置文件名称] 查看一个配置文件的作用

示例:apropos inittab 不要加绝对路径

8、帮助命令:[命令名] –help查看命令的选项

示例:touch –help

9、帮助命令:help获取shell内置命令的帮助信息

命令路径:shell内置命令

语法:help命令

示例:help umask

1、用户管理命令:useradd添加新用户 命令路径:/usr/sbin/useradd

执行权限:root

语法:useradd用户名

示例:useradd yangmi

2、用户管理命令:passwd设置用户密码 命令路径:/usr/bin/passwd

语法:passwd用户名

示例:passwd yangmi

3、用户管理命令:who查看登录用户信息

命令路径:/usr/bin/who

语法:who

示例:who

登录用户名 登录终端 tty本地终端/pts远程终端 登录时间 ip地址

4、用户管理命令:w查看登录用户详细信息 命令路径:/usr/bin/w

语法:w

示例:w

扩展:uptime 查看系统连续运行的时间

压缩解压命令: gzip [文件] 命令路径:/bin/gzip

功能:压缩文件

压缩后文件格式.gz

示例:gzip a.php

解压缩命令:gunzip [压缩文件] ---解压缩.gz的压缩文件.只能压缩文件,压缩后不保留源文件,只有压缩包

英文愿意:GUNunzip

命令路径:/bin/gunzip

示例:gunzip a.php.gz

gzip -d a.php.gz

压缩解压命令:tar

命令路径:/bin/tar

语法:tar选项[zcf] [压缩后文件名] [目录]

-c打包

-v显示详细信息

-f指定文件名

-z打包同时压缩

压缩后文件格式:.tar.gz

压缩解压命令:tar

-x解包

-v显示详细信息

-f指定解压文件

-z解压缩

示例:tar -zxvf dabao.tar

压缩解压命令:zip压缩文件或 目录 命令路径:/usr/bin/zip

语法:zip选项[-r] [压缩后文件名] [文件或目录]

-r压缩目录

压缩后文件格式:.zip

压缩解压命令:unzip解压.zip的压缩文件 命令路径:/usr/bin/unzip

语法:unzip [压缩文件]

示例:unzip test.zip

压缩解压命令:bzip2 压缩文件 命令路径:/usr/bin/bzip2

语法:bzip2 选项[-k] [文件]

-k产生压缩文件后保留原文件

压缩后格式:.bz2

示例:bzip2 -k /test/

tar -cjf test.bz2 /test

压缩解压命令:bunzip2 解压缩 命令路径:/usr/bin/bunzip2

语法:bunzip2 选项 [-k] [压缩文件]

-k解压缩后保留原文件

示例: bunzip2 -k test.bz2

tar -xjf test.tar.bz2

2、命令cd 英文原意:change director 所在路径:shell内置命令 执行权限:所有用户

语法:cd [目录] 功能描述:切换目录

实例:cd / 切换到根目录

cd .. 返回到上一级目录

3、命令:pwd 英文原意:print working directory 所在路径:/bin/pwd

执行权限:所有用户

语法:pwd 功能描述:显示当前所在的工作目录

实例:pwd

4. 命令:touch 命令所在路径:/bin/touch 执行权限:所有用户

语法:touch [文件名] 功能描述:创建空文件

实例:touch newfile

5 、命令:mkdir 原意:make directories 命令路径:/bin/mkdir 执行权限:所有用户

语法:mkdir [目录名] 功能描述:创建新目录

实例:mkdir newdir

6、命令cp 英文原意:copy 所在路径:/bin/cp 执行权限:所有用户

语法:cp -R [源文件或目录] [目的目录]

-R 复制目录

功能描述:复制文件或目录

cp -p 源文件/目录 目的目录 -p意思是保留文件创建时间

7、ctrl+c结束命令

8、命令:mv 英文原意:move 令所在路径:/bin/mv 执行权限:所有用户

语法:mv [源文件或目录] [目的目录]

功能描述:移动文件、更名

9、删除命令:rm 英文原意:remove 命令所在路径:/bin/rm 执行权限:所有用户

语法:rm -r [文件或目录]

-r 删除目录

功能:删除文件

注意:rmdir只能删除空目录

范例:$ rm file3 //删除文件file3

$ rm -r dir1 //删除目录dir1

rm -f文件名,直接删除不提示,不推荐使用

rm -r 文件夹名 删除文件夹,会有提示,假如有100个文件会提示一百次

rm -rf 文件夹名 不提示直接删除。

10、命令:cat 原意:concatenate and display files 路径:/bin/cat 执行权限:所有用户

语法:cat [文件名]

功能描述:显示文件内容

实例:cat /etc/issue

Cat /etc/services

11、可以查看一些小文件,长文件只能显示最后的一屏,用more可以分页显示

命令:more 命令所在路径:/bin/more 执行权限:所有用户

语法:more [文件名]

(空格)或f 显示下一页

(Enter) 显示下一行

Q或者q 退出

功能描述:分页显示文件内容

示例:more /etc/services

12、查看一个文件的前几行 命令:head 命令所在路径:/bin/head 执行权限:all user

语法:head -num [文件名]

-num 显示文件的前num行

功能:查看文件的前几行

示例:head -20 /etc/services

13、查看文件后几行 命令:tail 命令所在路径:/bin/tail 执行权限:all user

语法:tail -num [文件名]

-num 显示文件的后num行

-f 动态显示文件的内容

功能描述:查看文件的后几行

示例:tail -30 /etc/services

14、命令:ln 英文原意:link

命令所在路径:/bin/ln 执行权限:所有用户

语法:ln -s [源文件] [目标文件]

-s 创建软连接

功能描述:产生链接文件

示例:ln -s /etc/issue /issue.soft 创建文件/etc/issue的软连接/issue.soft

ln /etc/issue /issue.hard 创建文件/etc/issue的硬链接issue.hard

软连接相当于windows里的快捷方式,删除源,软连接也不能访问

硬链接 复制+同步更新,删除源,硬链接还一样可以访问,硬链接不能跨文件系统

问题:为什么硬链接可以同步更新

每个文件都必须要有i节点,只要节点数相同,就会有同样的处理方式。

权限处理命令

15、命令:chmod 英文原意:change the permissions mode of a file

命令所在路径:/bin/chmod 执行权限:所有用户

语法:chmod [{ugo}{+-=}{rwx}][文件或目录]

[mode=421] [文件或目录]

功能描述:改变文件或目录权限

16、命令:umask 所在路径:/bin/umask 执行权限:所有用户

语法:umask [-S]

-S 以rwx形式显示新建文件或目录缺省权限

功能描述:显示、设置文件的缺省权限

实例:umask

umask -S

2、显示系统命令所在的目录 :which 命令路径:/usr/bin/which 执行权限:所有用户

语法:which [命令名称]

功能描述:显示系统命令所在的目录

范例:which ls

which搜索命令所在目录

whereis 搜索命令所在目录和帮助文档所在的目录

查找文件或目录命令:find 命令所在路径:/usr/bin/find 执行权限:所有用户

语法:find [搜索路径] [搜索关键字]

功能描述:查找文件或目录

示例:find /etc -name init 在目录/etc中查找文件init

find / -size +204800 在根目录下查找大于100MB的文件

find /home -user samlee 在/home目录下查找所有者为samlee的文件

4、下面两个命令配合使用 updatedb locate

命令:updatedb 英文原意:update the slocate database

命令路径:/usr/bin/updatedb 执行权限:root

语法:updatedb

功能描述:建立整个系统目录文件的数据库

示例:updatedb

命令:locate 英文原意:list files in databases

命令路径:/usr/bin/locate 执行权限:all user

语法:locate [搜索关键字]

功能描述:查询文件或目录

示例:locate file 列出所有和file相关的文件

5、文件中搜寻字符串匹配的行并输出:grep 命令路径:/bin/grep 执行权限:所有用户

语法:grep [指定字符串] [源文件]

功能描述:在文件中搜寻字符串匹配的行并输出

示例:grep ftp /etc/services

5、获得帮助信息命令:man 英文原意:manual 命令所在路径:/usr/bin/man

执行权限:所有用户

语法:man [命令或配置文件]

功能描述:获得帮助信息

示例:man ls 查看ls命令的帮助信息

man services 查看配置文件services的帮助信息

6、帮助指令:info 英文原意:information 指令所在路径:/usr/bin/info

执行权限:all user

语法:info [任何关键字]

功能描述:获取帮助信息

示例:info ls 查看ls命令的帮助信息

帮助命令:whatis 指令英文原意:search the whatis database for strings

7、指令名称:whatis apropos makewhatis

指令所在路径:/usr/bin/whatis apropos /usr/sbin/makewhatis

执行权限:all user , all user,root

语法:whatis apropos [任何关键字]

功能描述:获得索引的剪短说明信息

示例:whatis ls

Apropos fstab 相当于:man -k

Makewhatis

建立whatis和apropos 搜索使用的数据库,使用这两个命令发生错误时,就是whatis database 没建立。

* 匹配任意字符 init*

? 匹配单个字符 init???

-size 文件大小block 数据库512字节=0.5KB

-user 文件所有者

时间:天 ctime、 atime、 mtime、

分钟 cmin 、amin、mmin

-之内,+超过

find /etc -mmin -120

-type 文件类型f 二进制文件l 软连接文件 d目录

1、连接符 -a and 逻辑与 -o or 逻辑或

2、连接符 find ...... -exec 命令{} \;

-ok (询问确认)

-num i 节点

8、help 查看shell内置命令的帮助

压缩解压

压缩文件命令:gzip 英文原意:GNU zip 命令路径:/bin/gzip 执行权限:所有用户

语法:gzip 选项 [文件]

功能描述:压缩文件

压缩后文件格式:.gz

压缩解压命令:gunzip 英文原意:GNU unzip 命令路径:/bin/gunzip

执行权限:所有用户 语法:gunzip 选项 [压缩文件]

功能描述:解压缩.gz的研所文件

示例:gunzip file1.gz

压缩解压命令:tar 命令路径:/bin/tar 执行权限:所有用户

语法:tar 选项[cvf] [目录]

-c 产生.tar打包文件

-v 显示详细信息

-f 指定压缩后的文件名

-z 打包同时压缩

功能:打包目录

压缩后文件格式:.tar.gz

压缩文件或目录命令:zip 命令路径:/usr/bin/zip 执行权限:所有用户

语法:zip 选项[-r] [压缩后的文件名称] [文件或目录]

-r 压缩目录

功能描述:压缩文件或目录 压缩后的文件格式:.zip

解压.zip的压缩文件命令:unzip 命令路径:/usr/bin/unzip 执行权限:所有用户

语法:unzip [压缩文件]

功能描述:解压.zip的压缩文件

示例:unzip test.zip

网络通信命令:write 命令路径:/usr/bin/write 执行权限:all user

语法:write <用户名> 功能描述:向另外一个用户发送信息,以ctrl+D结束

示例:write samlee

向所有用户广播信息命令:wall 命令路径:/usr/bin/wall 执行权限:all user

语法:wall [message] [文件名]

功能描述:向所有用户广播信息

示例:wall Happy New Year!

命令:ping 命令路径:/usr/sbin/ping 执行权限:root

语法:ping 选项 ip地址

示例:ping 192.168.1.1

查看网络设置信息命令:ifconfig 命令所在路径:/usr/sbin/ifconfig 执行权限:root

语法:ifconfig 选项 [-a] [网卡设备表识]

-a 显示所有网卡信息

功能描述:查看网络设置信息

示例:ifconfig -a

关机命令:shutdow 命令路径:/usr/sbin/shutdown 执行权限:root

语法:shutdown 功能描述:关机

示例:shutdown -h now

重启系统命令:reboot 命令路径:/usr/sbin/reboot 执行权限:root

语法:reboot

功能描述:重启系统

示例:reboot

bash应用技巧:

命令补齐:允许用户输入文件名起始的若干字母后,按Tab键补齐文件名

命令历史:允许用户浏览先前输入的命令并重新调用他们,用history命令可以显示命令列表,安方向键向上箭头和向下箭头可以查找以前执行过的命令、

Ctrl+l清屏 clear也是清屏

Ctrl+U删除光标前面所有字符

Histry打开所执行的命令列表

命令别名定义

示例:alias copy=cp

alias xrm="rm -r"

查看别名信息:alias

删除别名信息:unalias copy

输入/输出重定向

同标准I/O一样,shell对于没一个进程预先定义3个文件描述字(0、1、2)。分别对应于:

0:STDIN 标准输入

1:STDOUT 标准输出

2:STDERR 标准错误输出

管道:将一个命令的输出传给另一个命令,作为另一个命令的输入

用法:命令1|命令2|命令3......|命令n

示例:ls -l /etc | more

ls -l /etc | grep init

ls -l /etc | grep init | wc -l

命令连接符:用;间隔的个命令按顺序依次执行。

&&前后命令的执行存在逻辑与关系,只有&&前面的命令执行成功后,后面的命令才会被执行。||前后命令的执行存在逻辑或关系,之后||前面的命令执行失败后,后面的命令才会被执行。

命令替换符:将一个命令的输出作为另一个命令的参数,格式:命令1 '命令2'

示例:ls -l 'which touch'

Vim/vi编辑器

注意:vi /root/.vimrc 编辑全局快捷键

Linux删除目录很简单,使用rm -rf命令即可。

使用规则:

rm -rf 目录名字

-r 向下递归,不管有多少级目录,一并删除

-f 直接强行删除,没有任何提示

示例: 删除文件夹实例:

    rm -rf /var/log/httpd

将会删除/var/log/httpd目录以及其下所有文件、文件夹

删除文件使用实例:

    rm -f /var/log/httpd/access.log

将会强制删除/var/log/httpd/access.log这个文件

注意:使用 rm -rf 的时候一定要小心,Linux没有回收站。

查看系统中所有进程:ps aux #查看系统中所有进程,使用BSD操作系统格式

ps -le #查看系统中所有进程,使用Linux标准命令格式

查看系统健康状态:top [选项]

选项:-d 秒数:指定top命令每隔几秒更新。默认3秒

在top命令的交互模式中可以执行的命令:

?或h:显示交互模式的帮助 P:以cup使用率排序,默认就是此项

M:以内存的使用率排序 N:以PID排序 q:退出top

pstree -p查看进程树

kill -l 22354 重启进程

kill -9 22368 强制杀死进程

killall [选项][信号] 进程名 按照进程名杀死进程

选项:-i 交互式,询问是否要杀死某个进程

-I 忽略进程名大小写

按照终端号踢出用户

w 使用w命令查询本机已经登录的用户

pkill -t -9 pts/l 强制杀死从pts/l虚拟终端登录的进程

你可能感兴趣的:(linux)